From d9d74cc773e467ed0cb9bec36e043fac16d66223 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 9 Jul 2025 15:34:07 +0800 Subject: [PATCH 001/362] =?UTF-8?q?##=20=E6=B2=A1=E6=9C=89=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E4=BC=9A=E5=91=98=E5=A4=8D=E8=B4=AD=E7=BA=A7=E5=B7=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90=E6=A0=A1=E9=AA=8C=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/controller/api/ApiCuMemberBonusController.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java index efa88474..9b5c1e67 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java @@ -189,7 +189,9 @@ public class ApiCuMemberBonusController extends BaseController { List vertexBonusList = iCuMemberService.listVertexBonus(SecurityUtils.getUserId()); if (CollectionUtil.isNotEmpty(vertexBonusList)) { for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bdVertexBonus.getBonusItems()) { + if (null != bdVertexBonus + && null != bdVertexBonus.getBonusItems() + && EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bdVertexBonus.getBonusItems()) { return true; } } From 340c5426576a971700dc05d8873a585b411bf764 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 09:45:32 +0800 Subject: [PATCH 002/362] =?UTF-8?q?##=20=E6=B7=BB=E5=8A=A0=E4=BD=93?= =?UTF-8?q?=E7=B3=BB=E5=A5=96=E9=A1=B9=E9=85=8D=E7=BD=AE=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/IMemberTeamServiceApi.java | 17 +-- .../provider/MemberTeamServiceProvider.java | 29 +--- .../manage/BdSubsidyController.java | 143 ------------------ .../manage/BdVertexBonusController.java | 68 +++++++++ .../controller/manage/BdVertexController.java | 56 +++---- .../system/config/mapper/BdSubsidyMapper.java | 17 --- .../config/mapper/BdVertexBonusMapper.java | 21 +++ .../system/config/mapper/BdVertexMapper.java | 13 +- .../config/service/IBdSubsidyService.java | 17 --- .../config/service/IBdVertexBonusService.java | 21 +++ .../config/service/IBdVertexService.java | 8 +- .../service/impl/BdSubsidyServiceImpl.java | 20 --- .../impl/BdVertexBonusServiceImpl.java | 23 +++ .../service/impl/BdVertexServiceImpl.java | 9 -- .../system/config/vo/BdDeliveryCentreVO.java | 15 +- .../enums/controller/EnumsController.java | 104 ++----------- .../mapper/system/config/BdSubsidyMapper.xml | 29 ---- .../system/config/BdVertexBonusMapper.xml | 14 ++ .../common/core/enums/EOperationBusiness.java | 6 +- .../common/core/enums/EOperationModule.java | 2 - .../hzs/common/core/enums/EVertexBonus.java | 29 ++++ .../common/domain/bonus/BdBonusService.java | 6 - .../common/domain/system/config/BdAgent.java | 5 - .../system/config/BdBonusDifference.java | 5 - .../system/config/BdDeliveryCentre.java | 7 - .../domain/system/config/BdHistroyAwards.java | 3 - .../domain/system/config/BdLoopDetails.java | 6 - .../common/domain/system/config/BdShare.java | 5 - .../domain/system/config/BdShareDetail.java | 5 - .../common/domain/system/config/BdShop.java | 15 +- .../system/config/BdSpecialCurrency.java | 3 - .../domain/system/config/BdSubsidy.java | 50 ------ .../system/config/CuMemberTransferWhite.java | 7 +- .../domain/vertex/ext/BdVertexBonusExt.java | 16 ++ 34 files changed, 249 insertions(+), 545 deletions(-) delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdSubsidyController.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexBonusController.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdSubsidyMapper.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexBonusMapper.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdSubsidyService.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexBonusService.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdSubsidyServiceImpl.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexBonusServiceImpl.java delete mode 100644 bd-business/bd-business-system/src/main/resources/mapper/system/config/BdSubsidyMapper.xml create mode 100644 bd-business/bd-business-system/src/main/resources/mapper/system/config/BdVertexBonusMapper.xml create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSubsidy.java create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/ext/BdVertexBonusExt.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java index 6ecb1ffb..af4365c3 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java @@ -8,20 +8,12 @@ import java.util.List; import java.util.Map; /** - * @description: 根据国家查询隶属团队配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: + * 根据国家查询隶属团队配置列表api **/ public interface IMemberTeamServiceApi { /** - * @description: 根据国家查询隶属团队配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询隶属团队配置列表 **/ R> queryCuMemberTeam(Integer pkCountry); @@ -34,10 +26,7 @@ public interface IMemberTeamServiceApi { R checkVertex(Integer pkVertex); /* - * @description: 根据主键获得所属团队 - * @author: sui q - * @date: 2023/4/25 9:17 - * @param: null null + * 根据主键获得所属团队 **/ R getCuMemberTeamById(Long pkMember); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java index 2a3874a9..fdce542f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java @@ -16,44 +16,27 @@ import java.util.Map; import java.util.stream.Collectors; /** - * @description: 隶属团队配置 - * @author: zhang jing - * @date: 2022/11/10 17:02 - * @param: - * @return: + * 隶属团队配置 **/ @DubboService public class MemberTeamServiceProvider implements IMemberTeamServiceApi { @Autowired - private ICuMemberTeamService memberTeamService; + private ICuMemberTeamService iCuMemberTeamService; - /** - * @description: 根据国家查询隶属团队配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:17 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> queryCuMemberTeam(Integer pkCountry) { - return R.ok(memberTeamService.queryCuMemberTeam(pkCountry)); + return R.ok(iCuMemberTeamService.queryCuMemberTeam(pkCountry)); } - /** - * 根据体系id 查询是否有团队占用该体系 - * - * @param pkVertex - * @return - */ @Override public R checkVertex(Integer pkVertex) { - return R.ok(memberTeamService.checkVertex(pkVertex)); + return R.ok(iCuMemberTeamService.checkVertex(pkVertex)); } @Override public R getCuMemberTeamById(Long pkMember) { - return R.ok(memberTeamService.getCuMemberTeamById(pkMember)); + return R.ok(iCuMemberTeamService.getCuMemberTeamById(pkMember)); } @Override @@ -63,7 +46,7 @@ public class MemberTeamServiceProvider implements IMemberTeamServiceApi { queryWrapper.in(CuMemberTeam::getPkBdVertex, pkVertexList); } queryWrapper.orderByAsc(CuMemberTeam::getPkBdVertex); - List list = memberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); Map resultMap = new HashMap<>(); if (CollectionUtil.isNotEmpty(list)) { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdSubsidyController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdSubsidyController.java deleted file mode 100644 index d28a39f8..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdSubsidyController.java +++ /dev/null @@ -1,143 +0,0 @@ -package com.hzs.system.config.controller.manage; - - -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; -import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.EOperationMethod; -import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.system.config.BdSubsidy; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.system.config.service.IBdSubsidyService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.Date; -import java.util.List; - -/** - *

- * 补贴比例表 前端控制器 - *

- * - * @author zhangjing - * @since 2023-02-28 - */ -@RestController -@RequestMapping("/manage/bd-subsidy") -public class BdSubsidyController extends BaseController { - - @Autowired - private IBdSubsidyService subsidyService; - - /** - * @description: 查询补贴比例配置列表 - * @author: zhang jing - * @date: 2023/2/27 17:59 - * @param: [bdsubsidy] - * @return: com.hzs.common.core.web.page.TableDataInfo - **/ - @Log(module = EOperationModule.BDSUBSIDY, method = EOperationMethod.SELECT) - @GetMapping("/list") - public TableDataInfo list(BdSubsidy bdsubsidy) { - List listVO = subsidyService.list(); - return getDataTable(listVO); - } - - /** - * @description: 新增补贴比例配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [shop] - * @return: com.hzs.common.core.web.domain.AjaxResult - **/ - @Log(module = EOperationModule.BDSUBSIDY, method = EOperationMethod.INSERT) - @PostMapping("/save") - public AjaxResult save(@RequestBody BdSubsidy subsidy) { - Integer pkCountry = SecurityUtils.getPkCountry(); - if (StringUtils.isNull(subsidy.getSubsidyProportion())) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.SUBSIDY_PROPORTION_NOT_NULL)); - } - subsidy.setPkCountry(pkCountry); - subsidy.setPkCreator(SecurityUtils.getUserId()); - subsidy.setCreationTime(new Date()); - return toAjax(subsidyService.save(subsidy)); - } - - /** - * @description: 修改补贴比例配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [shop] - * @return: com.hzs.common.core.web.domain.AjaxResult - **/ - @Log(module = EOperationModule.BDSUBSIDY, method = EOperationMethod.UPDATE) - @PostMapping("/update") - public AjaxResult update(@RequestBody BdSubsidy subsidy) { - Integer pkCountry = SecurityUtils.getPkCountry(); - if (StringUtils.isNull(subsidy.getPkId())) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.HO_OBJECT_NOT_REPEAT)); - } - if (subsidy.getUsageStatus().intValue() != EYesNo.YES.getIntValue()) { - if (StringUtils.isNull(subsidy.getSubsidyProportion())) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.SUBSIDY_PROPORTION_NOT_NULL)); - } - } - subsidy.setPkCountry(pkCountry); - subsidy.setPkModified(SecurityUtils.getUserId()); - subsidy.setModifiedTime(new Date()); - return toAjax(subsidyService.updateById(subsidy)); - } - - /** - * @description: 查询单条补贴比例配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult - **/ - @Log(module = EOperationModule.BDSUBSIDY, method = EOperationMethod.SELECT) - @GetMapping("/getOne/{pkId}") - public AjaxResult getOne(@PathVariable Long pkId) { - if (StringUtils.isNull(pkId)) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.HO_OBJECT_NOT_REPEAT)); - } - BdSubsidy subsidy = subsidyService.getById(pkId); - return AjaxResult.success(subsidy); - } - - /** - * @description: 删除补贴比例配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult - **/ - @Log(module = EOperationModule.BDSUBSIDY, method = EOperationMethod.DELETE) - @DeleteMapping("/{pkId}") - public AjaxResult delete(@PathVariable Long pkId) { - if (StringUtils.isNull(pkId)) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.HO_OBJECT_NOT_REPEAT)); - } - BdSubsidy subsidy = subsidyService.getById(pkId); - if (StringUtils.isNotNull(subsidy)) { - if (subsidy.getUsageStatus().intValue() == EYesNo.YES.getIntValue()) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.ENABLE_STATE_NOT_DELETE)); - } - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_ID", pkId); - updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); - updateWrapper.set("MODIFIED_TIME", new Date()); - subsidyService.update(updateWrapper); - } - return toAjax(true); - } -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexBonusController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexBonusController.java new file mode 100644 index 00000000..0b666ef4 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexBonusController.java @@ -0,0 +1,68 @@ +package com.hzs.system.config.controller.manage; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.vertex.BdVertexBonus; +import com.hzs.common.domain.vertex.ext.BdVertexBonusExt; +import com.hzs.system.config.service.IBdVertexBonusService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 体系奖项配置 + */ +@Slf4j +@RestController +@RequestMapping("/manage/vertex-bonus") +public class BdVertexBonusController extends BaseController { + + @Autowired + private IBdVertexBonusService iBdVertexBonusService; + + /** + * 查询列表 + * + * @return + */ + @GetMapping("/list") + public TableDataInfo list() { + startPage(); + List list = iBdVertexBonusService.listVertexBonus(); + return getDataTable(list); + } + + /** + * 新增体系配置 + * + * @param bdVertexBonus + * @return + */ + @PostMapping("/save") + public AjaxResult save(@RequestBody BdVertexBonus bdVertexBonus) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(BdVertexBonus::getPkVertex, bdVertexBonus.getPkVertex()); + wrapper.eq(BdVertexBonus::getBonusItems, bdVertexBonus.getBonusItems()); + if (iBdVertexBonusService.count(wrapper) > 0) { + return AjaxResult.error("数据已存在"); + } + iBdVertexBonusService.save(bdVertexBonus); + return AjaxResult.success(); + } + + /** + * 删除 + * + * @param pkId + * @return + */ + @DeleteMapping("/{pkId}") + public AjaxResult delete(@PathVariable Integer pkId) { + return AjaxResult.success(iBdVertexBonusService.removeById(pkId)); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java index d8824331..57cb02e9 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java @@ -33,11 +33,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 体系配置 - * @Author: yuhui - * @Time: 2022/11/1 11:11 - * @Classname: BdVertexController - * @PackageName: com.hzs.sale.vertex.controller.manage + * 体系配置 */ @Slf4j @RestController @@ -45,12 +41,12 @@ import java.util.List; public class BdVertexController extends BaseController { @Autowired - private IBdVertexService vertexService; + private IBdVertexService iBdVertexService; @DubboReference - IMemberTeamServiceApi memberTeamServiceApi; + IMemberTeamServiceApi iMemberTeamServiceApi; @DubboReference - IMemberServiceApi memberServiceApi; + IMemberServiceApi iMemberServiceApi; /** * 查询列表 @@ -63,7 +59,7 @@ public class BdVertexController extends BaseController { startPage(); vertex.setPkCountry(SecurityUtils.getPkCountry()); vertex.setSystemType(SecurityUtils.getSystemType()); - List list = vertexService.selectByList(vertex); + List list = iBdVertexService.selectByList(vertex); return getDataTable(list); } @@ -81,19 +77,19 @@ public class BdVertexController extends BaseController { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BdVertex::getVertexName, vertexParam.getVertexName()); wrapper.eq(BdVertex::getSystemType, systemType); - if (vertexService.count(wrapper) > 0) { + if (iBdVertexService.count(wrapper) > 0) { // 体系名称已存在 return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.VERTEX_NAME_EXITS)); } // 会员编号检验是否存在 - R member = memberServiceApi.getMember(vertexParam.getMemberCode()); + R member = iMemberServiceApi.getMember(vertexParam.getMemberCode()); CuMember mb = member.getData(); if (mb == null) { return AjaxResult.error("用户编号不存在"); } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdVertex::getPkMember, mb.getPkId()); - if (vertexService.count(queryWrapper) > 0) { + if (iBdVertexService.count(queryWrapper) > 0) { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_CODE_EXITS)); } @@ -104,7 +100,7 @@ public class BdVertexController extends BaseController { bdVertex.setPkMember(mb.getPkId()); bdVertex.setSystemType(systemType); bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId()); - vertexService.save(bdVertex); + iBdVertexService.save(bdVertex); return AjaxResult.success(); } @@ -122,12 +118,12 @@ public class BdVertexController extends BaseController { wrapper.eq(BdVertex::getVertexName, vertexParam.getVertexName()); wrapper.eq(BdVertex::getSystemType, systemType); wrapper.notIn(BdVertex::getPkId, vertexParam.getPkId()); - if (vertexService.count(wrapper) > 0) { + if (iBdVertexService.count(wrapper) > 0) { // 体系名称已存在 return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.VERTEX_NAME_EXITS)); } // 会员编号检验是否存在 - R member = memberServiceApi.getMember(vertexParam.getMemberCode()); + R member = iMemberServiceApi.getMember(vertexParam.getMemberCode()); CuMember mb = member.getData(); if (mb == null) { return AjaxResult.error("用户编号不存在"); @@ -135,7 +131,7 @@ public class BdVertexController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdVertex::getPkMember, mb.getPkId()); queryWrapper.notIn(BdVertex::getPkId, vertexParam.getPkId()); - if (vertexService.count(queryWrapper) > 0) { + if (iBdVertexService.count(queryWrapper) > 0) { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_CODE_EXITS)); } BdVertex bdVertex = BeanUtil.copyProperties(vertexParam, BdVertex.class); @@ -146,7 +142,7 @@ public class BdVertexController extends BaseController { if (null == bdVertex.getPkParent()) { bdVertex.setPkParent(0); } - return toAjax(vertexService.updateById(bdVertex)); + return toAjax(iBdVertexService.updateById(bdVertex)); } /** @@ -157,9 +153,9 @@ public class BdVertexController extends BaseController { */ @GetMapping("/detail") public AjaxResult detail(Integer pkId) { - BdVertex vertex = vertexService.getById(pkId); + BdVertex vertex = iBdVertexService.getById(pkId); VertexVo vertexVo = BeanUtil.copyProperties(vertex, VertexVo.class); - R member = memberServiceApi.getMember(vertex.getPkMember()); + R member = iMemberServiceApi.getMember(vertex.getPkMember()); vertexVo.setMemberCode(member.getData().getMemberCode()); return AjaxResult.success(vertexVo); } @@ -173,7 +169,7 @@ public class BdVertexController extends BaseController { @Log(module = EOperationModule.SPECS_VERTEX_LIST, business = EOperationBusiness.VERTEX_CONFIG, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Integer pkId) { - R mt = memberTeamServiceApi.checkVertex(pkId); + R mt = iMemberTeamServiceApi.checkVertex(pkId); if (mt.getData()) { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.VERTEX_MEMBER_TEAM_REGISTER)); } @@ -182,7 +178,7 @@ public class BdVertexController extends BaseController { updateWrapper.set(BdVertex::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(BdVertex::getModifiedTime, new Date()); updateWrapper.set(BdVertex::getPkModified, SecurityUtils.getUserId()); - return AjaxResult.success(vertexService.update(updateWrapper)); + return AjaxResult.success(iBdVertexService.update(updateWrapper)); } /** @@ -196,7 +192,7 @@ public class BdVertexController extends BaseController { queryWrapper.eq(BdVertex::getPkCountry, SecurityUtils.getPkCountry()); queryWrapper.eq(BdVertex::getSystemType, SecurityUtils.getSystemType()); queryWrapper.orderByAsc(BdVertex::getVertexName); - return AjaxResult.success(vertexService.list(queryWrapper)); + return AjaxResult.success(iBdVertexService.list(queryWrapper)); } /** @@ -206,7 +202,7 @@ public class BdVertexController extends BaseController { */ @GetMapping("/vertex-child") public AjaxResult vertexChild() { - List list = vertexService.queryBdVertexChild(SecurityUtils.getPkCountry(), SecurityUtils.getSystemType()); + List list = iBdVertexService.queryBdVertexChild(SecurityUtils.getPkCountry(), SecurityUtils.getSystemType()); return AjaxResult.success(list); } @@ -222,20 +218,16 @@ public class BdVertexController extends BaseController { queryWrapper.in(BdVertex::getPkCountry, pkCountryList); queryWrapper.eq(BdVertex::getSystemType, SecurityUtils.getSystemType()); queryWrapper.orderByAsc(BdVertex::getVertexName); - return AjaxResult.success(vertexService.list(queryWrapper)); + return AjaxResult.success(iBdVertexService.list(queryWrapper)); } /** - * @description: 更新体系(隶属体系) - * @author: sui q - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 更新体系(隶属体系) **/ @Log(module = EOperationModule.SPECS_VERTEX_LIST, business = EOperationBusiness.VERTEX_CONFIG, method = EOperationMethod.RENEW) @GetMapping("/update-vertex/{pkVertex}") public AjaxResult updateVertex(@PathVariable Integer pkVertex) { - vertexService.updateBdVertexById(pkVertex); + iBdVertexService.updateBdVertexById(pkVertex); return AjaxResult.success(); } @@ -247,7 +239,7 @@ public class BdVertexController extends BaseController { @Log(module = EOperationModule.SPECS_VERTEX_LIST, business = EOperationBusiness.VERTEX_CONFIG, method = EOperationMethod.RENEW) @GetMapping("/flush-all") public AjaxResult flushAll() { - vertexService.flushAllVertex(SecurityUtils.getPkCountry(), SecurityUtils.getSystemType()); + iBdVertexService.flushAllVertex(SecurityUtils.getPkCountry(), SecurityUtils.getSystemType()); return AjaxResult.success(); } @@ -258,7 +250,7 @@ public class BdVertexController extends BaseController { public AjaxResult findVertex() { LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); qw.eq(BdVertex::getPkCountry, SecurityUtils.getPkCountry()); - List list = vertexService.list(qw); + List list = iBdVertexService.list(qw); return AjaxResult.success(list); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdSubsidyMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdSubsidyMapper.java deleted file mode 100644 index 17bec0be..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdSubsidyMapper.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hzs.system.config.mapper; - - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.system.config.BdSubsidy; - -/** - *

- * 补贴比例表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2023-02-28 - */ -public interface BdSubsidyMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexBonusMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexBonusMapper.java new file mode 100644 index 00000000..a401d6bf --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexBonusMapper.java @@ -0,0 +1,21 @@ +package com.hzs.system.config.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.vertex.BdVertexBonus; +import com.hzs.common.domain.vertex.ext.BdVertexBonusExt; + +import java.util.List; + +/** + * 体系奖金配置(记录哪个体系走特殊奖金) Mapper 接口 + */ +public interface BdVertexBonusMapper extends BaseMapper { + + /** + * 查询配置列表 + * + * @return + */ + List listVertexBonus(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexMapper.java index 538d4c38..5175809e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdVertexMapper.java @@ -11,9 +11,6 @@ import java.util.List; /** * 体系配置 Mapper 接口 - * - * @author hzs - * @since 2022-10-31 */ public interface BdVertexMapper extends BaseMapper { @@ -34,10 +31,7 @@ public interface BdVertexMapper extends BaseMapper { List queryListByUserId(@Param("userId") Long userId); /* - * @description: 更新所属体系 - * @author: sui q - * @date: 2023/4/25 10:52 - * @param: null null + * 更新所属体系 **/ void updateBdVertexById(@Param("pkMember") Long pkMember, @Param("pkVertex") Integer pkVertex); @@ -53,10 +47,7 @@ public interface BdVertexMapper extends BaseMapper { @Param("pkCountry") Integer pkCountry); /* - * @description: 更新所属体系 - * @author: sui q - * @date: 2023/4/25 10:52 - * @param: null null + * 更新所属体系 **/ void updateBdVertexNullById(@Param("pkVertex") Integer pkVertex); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdSubsidyService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdSubsidyService.java deleted file mode 100644 index a18a8489..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdSubsidyService.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hzs.system.config.service; - - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.system.config.BdSubsidy; - -/** - *

- * 补贴比例表 服务类 - *

- * - * @author zhangjing - * @since 2023-02-28 - */ -public interface IBdSubsidyService extends IService { - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexBonusService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexBonusService.java new file mode 100644 index 00000000..4add7730 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexBonusService.java @@ -0,0 +1,21 @@ +package com.hzs.system.config.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.vertex.BdVertexBonus; +import com.hzs.common.domain.vertex.ext.BdVertexBonusExt; + +import java.util.List; + +/** + * 体系奖金配置(记录哪个体系走特殊奖金) 服务类 + */ +public interface IBdVertexBonusService extends IService { + + /** + * 查询配置列表 + * + * @return + */ + List listVertexBonus(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexService.java index 45bf5fb4..3b0af007 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdVertexService.java @@ -11,9 +11,6 @@ import java.util.Map; /** * 体系配置 服务类 - * - * @author hzs - * @since 2022-10-31 */ public interface IBdVertexService extends IService { @@ -41,10 +38,7 @@ public interface IBdVertexService extends IService { List queryListByUserId(Long userId); /* - * @description: 根据主键更新所属体系 - * @author: sui q - * @date: 2023/4/25 10:47 - * @param: null null + * 根据主键更新所属体系 **/ void updateBdVertexById(Integer pkVertex); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdSubsidyServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdSubsidyServiceImpl.java deleted file mode 100644 index 1a1440b2..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdSubsidyServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.system.config.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.system.config.BdSubsidy; -import com.hzs.system.config.mapper.BdSubsidyMapper; -import com.hzs.system.config.service.IBdSubsidyService; -import org.springframework.stereotype.Service; - -/** - *

- * 补贴比例表 服务实现类 - *

- * - * @author zhangjing - * @since 2023-02-28 - */ -@Service -public class BdSubsidyServiceImpl extends ServiceImpl implements IBdSubsidyService { - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexBonusServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexBonusServiceImpl.java new file mode 100644 index 00000000..8b648819 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexBonusServiceImpl.java @@ -0,0 +1,23 @@ +package com.hzs.system.config.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.vertex.BdVertexBonus; +import com.hzs.common.domain.vertex.ext.BdVertexBonusExt; +import com.hzs.system.config.mapper.BdVertexBonusMapper; +import com.hzs.system.config.service.IBdVertexBonusService; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 体系奖金配置(记录哪个体系走特殊奖金) 服务实现类 + */ +@Service +public class BdVertexBonusServiceImpl extends ServiceImpl implements IBdVertexBonusService { + + @Override + public List listVertexBonus() { + return baseMapper.listVertexBonus(); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexServiceImpl.java index 2568ec1f..144cc1c5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdVertexServiceImpl.java @@ -18,9 +18,6 @@ import java.util.Map; /** * 体系配置 服务实现类 - * - * @author hzs - * @since 2022-10-31 */ @Service public class BdVertexServiceImpl extends ServiceImpl implements IBdVertexService { @@ -37,12 +34,6 @@ public class BdVertexServiceImpl extends ServiceImpl i return resultMap; } - /** - * 查询体系配置 - * - * @param vertexParam - * @return - */ @Override public List selectByList(VertexParam vertexParam) { return baseMapper.selectByList(vertexParam); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdDeliveryCentreVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdDeliveryCentreVO.java index 21fbe813..6ddfc634 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdDeliveryCentreVO.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdDeliveryCentreVO.java @@ -6,19 +6,13 @@ import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; -import java.math.BigDecimal; import java.util.Date; /** - *

* 配送中心设置 - *

- * - * @author zhangjing - * @since 2023-02-23 */ @Data -public class BdDeliveryCentreVO{ +public class BdDeliveryCentreVO { private static final long serialVersionUID = 1L; @@ -121,11 +115,6 @@ public class BdDeliveryCentreVO{ */ private Integer pkCountry; - /** - * 补贴比例 - */ - private Long pkSubsidy; - /** * 国家 */ @@ -144,6 +133,4 @@ public class BdDeliveryCentreVO{ private String countyName; - - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index d1d96ef5..ccbb926b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -596,11 +596,6 @@ public class EnumsController extends BaseController { /** * 条码状态 - * - * @author: zhang jing - * @date: 2022/9/30 15:52 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/barcode-status") public AjaxResult barcodeStatus() { @@ -613,11 +608,6 @@ public class EnumsController extends BaseController { /** * 会员类型 - * - * @author: zhang jing - * @date: 2022/9/30 16:26 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/customerTypeList") public AjaxResult getECustomerTypeList() { @@ -630,11 +620,6 @@ public class EnumsController extends BaseController { /** * 发货方式 - * - * @author: zhang jing - * @date: 2022/9/30 16:28 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/delivery-list") public AjaxResult deliveryList(Integer pkCountry) { @@ -655,11 +640,6 @@ public class EnumsController extends BaseController { /** * 发货状态 - * - * @author: zhang jing - * @date: 2022/9/30 16:30 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/delivery-status") public AjaxResult deliveryStatus() { @@ -672,11 +652,6 @@ public class EnumsController extends BaseController { /** * 首页banner类型枚举类 - * - * @author: zhang jing - * @date: 2022/10/13 11:27 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/getEHomeBannerTypeList") public AjaxResult getEHomeBannerTypeList() { @@ -689,11 +664,6 @@ public class EnumsController extends BaseController { /** * 转账特殊设置枚举 - * - * @author: zhang jing - * @date: 2022/10/21 9:58 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/getETransferSpecialList") public AjaxResult getETransferSpecialList() { @@ -706,11 +676,6 @@ public class EnumsController extends BaseController { /** * 用户状态枚举 - * - * @author: zhang jing - * @date: 2022/10/21 17:39 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/getEUserStatusList") public AjaxResult getEUserStatusList() { @@ -723,11 +688,6 @@ public class EnumsController extends BaseController { /** * 钱包状态枚举 - * - * @author: zhang jing - * @date: 2022/10/21 17:41 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/get-sallet-status") public AjaxResult getEWalletStatusList() { @@ -740,11 +700,6 @@ public class EnumsController extends BaseController { /** * 商品权限类型枚举 - * - * @author: zhang jing - * @date: 2022/10/21 17:44 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/getEWaresPermissionTypeList") public AjaxResult getEWaresPermissionTypeList() { @@ -757,11 +712,6 @@ public class EnumsController extends BaseController { /** * 是否经销商枚举类 - * - * @author: zhang jing - * @date: 2022/10/21 17:46 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/dealer-yes-no") public AjaxResult dealerYesNo() { @@ -774,11 +724,6 @@ public class EnumsController extends BaseController { /** * 系统是否枚举类 - * - * @author: zhang jing - * @date: 2022/10/21 17:46 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/yes-no") public AjaxResult yesNo() { @@ -842,7 +787,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** * 供应方式 * @@ -1143,38 +1087,26 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 订单状态(会员端) - * - * @return - */ - /* 2025年6月10日 删除获取订单状态接口 - @GetMapping("/order-status-api") - public AjaxResult orderStatusApi() { - List enumEntityList = new ArrayList<>(); - for (EOrderStatus value : EOrderStatus.values()) { - if (value.getValue() != EOrderStatus.SHIPPING.getValue() && value.getValue() != EOrderStatus.CANCEL.getValue()) { - // 会员端使用 已合单和已撤单 不显示 - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.ORDER_STATUS)); - } - } - return AjaxResult.success(enumEntityList); - } - */ - /** * 奖项枚举类 - * - * @author: zhang jing - * @date: 2022/11/9 19:54 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/bonus-items") public AjaxResult bonusItems() { List enumEntityList = new ArrayList<>(); for (EBonusItems value : EBonusItems.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.BONUS_ITEMS)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); + } + return AjaxResult.success(enumEntityList); + } + + /** + * 体系奖项枚举类 + **/ + @GetMapping("/vertex-bonus-items") + public AjaxResult vertexBonusItems() { + List enumEntityList = new ArrayList<>(); + for (EVertexBonus value : EVertexBonus.values()) { + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } @@ -1199,11 +1131,6 @@ public class EnumsController extends BaseController { /** * 公布日期、发布日期、可提现日期 枚举 - * - * @author: zhang jing - * @date: 2022/11/9 19:55 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/publish-date") public AjaxResult publishDate() { @@ -1216,11 +1143,6 @@ public class EnumsController extends BaseController { /** * 奖结算周期枚举 - * - * @author: zhang jing - * @date: 2022/11/9 19:56 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/settlement-cycle") public AjaxResult settlementCycle() { diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdSubsidyMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdSubsidyMapper.xml deleted file mode 100644 index 1e8b9dd2..00000000 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdSubsidyMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_CREATOR, - PK_MODIFIED, - DEL_FLAG, - PK_ID, SUBSIDY_PROPORTION, USAGE_STATUS - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdVertexBonusMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdVertexBonusMapper.xml new file mode 100644 index 00000000..20d2cad4 --- /dev/null +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdVertexBonusMapper.xml @@ -0,0 +1,14 @@ + + + + + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index 700c264c..f3bb3c13 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -277,7 +277,6 @@ public enum EOperationBusiness { REGISTER_CONFIG("注册页面配置"), - TRADE_WHITE_CONFIG("交易白名单配置"), AGREEMENT_RENEWAL_WHITE("协议续约白名单"), @@ -285,6 +284,7 @@ public enum EOperationBusiness { TRANSFER_ACCOUNT_WHITE("转账账户白名单"), CU_MEMBER_RETAIL_REGION("会员收益区域配置"), + NOT_USED_REGION_AREA("未使用收益区域"), //////////////////// 营销管理 //////////////////// @@ -328,10 +328,6 @@ public enum EOperationBusiness { AREA_CONFIG("行政区划"), - INTERCONTINENTAL_CONFIG("洲际配置"), - - REGION_CONFIG("区域配置"), - ADMIN_CONFIG("系统管理员"), MENU_AUTHORITY_FRONT("前台菜单权限"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 9fb9ebea..382c46c4 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -324,8 +324,6 @@ public enum EOperationModule { DELIVERYCENTRE("配送中心配置"), - BDSUBSIDY("补贴比例配置"), - MEMBER_AUTHORITY("会员礼包收货地址"), POSTAGE_DELETE("商品邮费删除"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java new file mode 100644 index 00000000..ff217933 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java @@ -0,0 +1,29 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 奖项配置枚举 + */ +@AllArgsConstructor +@Getter +public enum EVertexBonus { + + /** + * 复购级差收益 -- 秒结,日奖 + */ + REPURCHASE_RANGE_INCOME(8, "复购级差收益"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/bonus/BdBonusService.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/bonus/BdBonusService.java index 4f1a1572..a7e15944 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/bonus/BdBonusService.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/bonus/BdBonusService.java @@ -14,12 +14,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 服务补贴 - *

- * - * @author hzs - * @since 2022-11-01 */ @Data @EqualsAndHashCode(callSuper = true) @@ -61,5 +56,4 @@ public class BdBonusService extends BaseEntity { private String assessmentTypeVal; - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAgent.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAgent.java index fcece8ae..6e40e2dd 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAgent.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAgent.java @@ -12,12 +12,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 区代设置 - *

- * - * @author zhangjing - * @since 2022-09-13 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDifference.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDifference.java index 0441cb05..5293940d 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDifference.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDifference.java @@ -14,12 +14,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 一次性补差升级配置 - *

- * - * @author zhangjing - * @since 2022-11-02 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdDeliveryCentre.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdDeliveryCentre.java index f18d1604..a6a8ba89 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdDeliveryCentre.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdDeliveryCentre.java @@ -9,15 +9,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; -import java.math.BigDecimal; - /** - *

* 配送中心设置 - *

- * - * @author zhangjing - * @since 2023-02-23 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdHistroyAwards.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdHistroyAwards.java index 9b3a3583..c5faef6b 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdHistroyAwards.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdHistroyAwards.java @@ -17,9 +17,6 @@ import lombok.experimental.Accessors; /** * 奖衔配置表 - * - * @author hzs - * @since 2024-09-10 */ @Data @EqualsAndHashCode(callSuper = false) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdLoopDetails.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdLoopDetails.java index 6bc7be26..4cd2b7c3 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdLoopDetails.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdLoopDetails.java @@ -10,13 +10,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 直推循环配置详情 - - *

- * - * @author zhangjing - * @since 2022-11-03 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShare.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShare.java index 2a94fdaf..6d1a9d0d 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShare.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShare.java @@ -12,12 +12,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 分红配置 - *

- * - * @author zhangjing - * @since 2022-09-22 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShareDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShareDetail.java index 2f226190..9dcaf282 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShareDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShareDetail.java @@ -11,12 +11,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 分红配置明细表 - *

- * - * @author zhangjing - * @since 2022-09-26 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShop.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShop.java index 6d105da6..48c30ead 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShop.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdShop.java @@ -17,12 +17,7 @@ import java.math.BigDecimal; import java.util.Date; /** - *

* 店铺配置 - *

- * - * @author zhangjing - * @since 2022-09-15 */ @Data @EqualsAndHashCode(callSuper = true) @@ -42,7 +37,7 @@ public class BdShop extends BaseEntity { /** * 配送等级 */ - @Excel(name = "配送等级",sort=1) + @Excel(name = "配送等级", sort = 1) @TableField("SHOP_NAME") private String shopName; @@ -68,14 +63,14 @@ public class BdShop extends BaseEntity { /** * 结算业绩 */ - @Excel(name = "结算金额/业绩",sort=5) + @Excel(name = "结算金额/业绩", sort = 5) @TableField("SETTLE_VALUE") private BigDecimal settleValue; /** * 配送费 */ - @Excel(name = "配送费%",sort=6) + @Excel(name = "配送费%", sort = 6) @TableField("DELIVERY_FEE") private BigDecimal deliveryFee; @@ -88,13 +83,13 @@ public class BdShop extends BaseEntity { /** * 注册金额 */ - @Excel(name = "注册金额$",sort=2) + @Excel(name = "注册金额$", sort = 2) @TableField("REGISTER_VALUE") private BigDecimal registerValue; /** * 生效日期 */ - @Excel(name = "生效时间",sort=7,dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "生效时间", sort = 7, dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @TableField("EFFECTIVE_DATE") private Date effectiveDate; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSpecialCurrency.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSpecialCurrency.java index 55bdd36c..247fd554 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSpecialCurrency.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSpecialCurrency.java @@ -10,9 +10,6 @@ import lombok.experimental.Accessors; /** * 特殊消费配置 - * - * @author hzs - * @since 2023-07-18 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSubsidy.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSubsidy.java deleted file mode 100644 index e5c353e2..00000000 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdSubsidy.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.hzs.common.domain.system.config; - -import com.baomidou.mybatisplus.annotation.KeySequence; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -import java.math.BigDecimal; - -/** - *

- * 补贴比例表 - *

- * - * @author zhangjing - * @since 2023-02-28 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@TableName("BD_SUBSIDY") -@KeySequence("BD_SUBSIDY_SEQ") -public class BdSubsidy extends BaseEntity { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @TableId("PK_ID") - private Long pkId; - - /** - * 补贴比例 - */ - @TableField("SUBSIDY_PROPORTION") - private BigDecimal subsidyProportion; - - /** - * 启用状态 0启用 1 未启用 - */ - @TableField("USAGE_STATUS") - private Integer usageStatus; - - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/CuMemberTransferWhite.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/CuMemberTransferWhite.java index 6c1ed6e6..75ccd143 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/CuMemberTransferWhite.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/CuMemberTransferWhite.java @@ -10,12 +10,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

- * 会员转账币种白名单 - *

- * - * @author hzs - * @since 2024-07-03 + * 会员转账币种白名单 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/ext/BdVertexBonusExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/ext/BdVertexBonusExt.java new file mode 100644 index 00000000..89228169 --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/ext/BdVertexBonusExt.java @@ -0,0 +1,16 @@ +package com.hzs.common.domain.vertex.ext; + +import com.hzs.common.domain.vertex.BdVertexBonus; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +public class BdVertexBonusExt extends BdVertexBonus { + + /** + * 体系名称 + */ + private String vertexName; + +} From 3e686a7798a6a926e31fedd75cb6ad44832a15ec Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 10 Jul 2025 09:45:36 +0800 Subject: [PATCH 003/362] =?UTF-8?q?##=20Fix=20-=20=E6=94=AF=E4=BB=98?= =?UTF-8?q?=E5=9B=9E=E8=B0=83=E5=9C=B0=E5=9D=80&=E6=8F=90=E7=8E=B0?= =?UTF-8?q?=E9=A9=B3=E5=9B=9E=E8=BF=94=E5=9B=9E=E9=87=91=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberWithdrawServiceImpl.java | 12 ++++++++++++ bd-third/src/main/resources/bootstrap.yml | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java index e1d9272e..7288bb72 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java @@ -25,6 +25,7 @@ import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.CuMemberAccountParam; import com.hzs.member.account.dto.MemberAccountAudit; import com.hzs.member.account.mapper.CuMemberWithdrawMapper; @@ -790,6 +791,17 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl cuMemberWithdrawList = baseMapper.selectList(wrapper); + Integer pkCountry = SecurityUtils.getPkCountry(); + if(CollUtil.isNotEmpty(cuMemberWithdrawList)){ + for (CuMemberWithdraw cuMemberWithdraw : cuMemberWithdrawList) { + BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder() + .tradeCode(cuMemberWithdraw.getWithdrawCode()).pkCountry(pkCountry) + .tradeType(EApprovalBusiness.WITHDRAWAL.getValue()) + .pkCreator(SecurityUtils.getUserId()).build(); + cuMemberTradeService.businessCommissionReject(businessCommissionDTO); + } + } } } diff --git a/bd-third/src/main/resources/bootstrap.yml b/bd-third/src/main/resources/bootstrap.yml index f35322a9..c75322a8 100644 --- a/bd-third/src/main/resources/bootstrap.yml +++ b/bd-third/src/main/resources/bootstrap.yml @@ -141,10 +141,10 @@ jd: # pageBackUrl: https://t-app.beida666.com/prod-api/pay/jd/sync-notify pageBackUrl: http://t-app.beida777.com/#/pages/pay/success ## 支付回调地址 - notifyUrl: https://cce9-123-235-100-33.ngrok-free.app/pay/jd/trade-notify + notifyUrl: https://t-app.beida777.com/pay/jd/trade-notify # notifyUrl: https://b747-218-57-66-5.ngrok-free.app/pay/jd/trade-notify ## 退款回调地下 - refundNotifyUrl: https://cce9-123-235-100-33.ngrok-free.app/pay/jd-refund/trade-notify + refundNotifyUrl: https://t-app.beida777.com/pay/jd-refund/trade-notify # refundNotifyUrl: https://b747-218-57-66-5.ngrok-free.app/pay/jd-refund/trade-notify separateAccounts: - account: 153428607011 From 1384c3ecd77e4a104a597bde39882bf6710f8a5d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 10:06:45 +0800 Subject: [PATCH 004/362] =?UTF-8?q?##=20=E5=95=86=E5=93=81=E7=9B=92?= =?UTF-8?q?=E6=95=B0=E4=B8=AD=E9=97=B4=E8=A1=A8=E6=94=AF=E6=8C=81=E5=B0=8F?= =?UTF-8?q?=E6=95=B0=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 11 +++++++++-- .../hzs/common/domain/sale/order/SaOrderItems.java | 6 ++++++ .../hzs/common/domain/sale/order/SaOrderWares.java | 2 +- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index d6a50ced..18ad4017 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -291,6 +291,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 订单明细 SaOrderItems orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt); + orderItems.setWaresBoxNum(null != waresDetailExt.getBoxNum() ? waresDetailExt.getBoxNum() : BigDecimal.ZERO); // 不是赠品,需要累积包邮邮费 if (EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) { @@ -762,7 +763,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 订单商品拆分数据 List orderWaresList = new ArrayList<>(); // 订单商品map(key:商品主键-商品价格,value:商品数量) - Map orderWaresMap = new HashMap<>(); + Map orderWaresMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) @@ -784,9 +785,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 指定商品拆分 并且 非赠品 if (boxProductList.contains(saOrderItems.getWareCode()) && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { + BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); // key: 商品ID-商品价格(产品价格*产品数量) String key = saOrderItems.getPkWares() + "-" + (saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity()))); - orderWaresMap.merge(key, saOrderItems.getWaresQuantity(), Integer::sum); + if (orderWaresMap.containsKey(key)) { + BigDecimal tmpBoxNum = orderWaresMap.get(key).add(boxNum); + orderWaresMap.put(key, tmpBoxNum); + } else { + orderWaresMap.put(key, boxNum); + } waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderItems.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderItems.java index 5e7569a9..da12bf2a 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderItems.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderItems.java @@ -198,4 +198,10 @@ public class SaOrderItems extends BaseEntity { @TableField(exist = false) private String wareCode; + /** + * 商品上传盒数 + */ + @TableField(exist = false) + private BigDecimal waresBoxNum; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderWares.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderWares.java index 91cb4846..14a54db2 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderWares.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderWares.java @@ -47,7 +47,7 @@ public class SaOrderWares extends BaseEntity { * 商品数量 */ @TableField("WARES_QUANTITY") - private Integer waresQuantity; + private BigDecimal waresQuantity; /** * 商品价格 From 407d3c02e9e88cc3f7f97e1acd82842d140a3b22 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 10:09:37 +0800 Subject: [PATCH 005/362] =?UTF-8?q?##=20=E5=95=86=E5=93=81=E7=9B=92?= =?UTF-8?q?=E6=95=B0=E4=B8=AD=E9=97=B4=E8=A1=A8=E6=94=AF=E6=8C=81=E5=B0=8F?= =?UTF-8?q?=E6=95=B0=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/bonus/service/impl/BonusSettleRangeHandle.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 2fe299ec..fb556416 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1127,7 +1127,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 商品最终价格 BigDecimal waresPrice = saOrderItems.getWaresPrice(); // 商品数量 - BigDecimal waresQuantityBig = new BigDecimal(saOrderItems.getWaresQuantity()); + BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); // 单个商品价格 BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); @@ -1448,7 +1448,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 商品最终价格 BigDecimal waresPrice = saOrderWaresExt.getWaresPrice(); // 商品数量 - BigDecimal waresQuantityBig = new BigDecimal(saOrderWaresExt.getWaresQuantity()); + BigDecimal waresQuantityBig = saOrderWaresExt.getWaresQuantity(); // 单个商品价格 BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); @@ -1460,7 +1460,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EDelFlag.UN_DELETE.getValue() == saOrderWaresExt.getDelFlag()) { if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) { // 按比值处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(new BigDecimal(saOrderWaresExt.getWaresQuantity()))); + benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(saOrderWaresExt.getWaresQuantity())); } else { // 按比率处理 benefitIncome = benefitIncome.add(saOrderWaresExt.getWaresPrice().multiply(saOrderWaresExt.getAreaIncome()).divide(new BigDecimal("100"), 6, BigDecimal.ROUND_HALF_UP)); From d8df6a047d048603dce90ca589a72895bf03144e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 10:51:07 +0800 Subject: [PATCH 006/362] =?UTF-8?q?##=20=E6=96=B0=E5=A4=8D=E8=B4=AD?= =?UTF-8?q?=E7=BA=A7=E5=B7=AE=E6=9E=9A=E4=B8=BE=E5=80=BC=E8=BD=AC=E6=8D=A2?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 4 +- .../mapper/bonus/order/BonusOrderMapper.xml | 2 +- .../enums/controller/EnumsController.java | 4 +- .../enums/controller/EnumsInitController.java | 6 +- .../com/hzs/common/core/enums/EAwards.java | 71 ++++++++++--------- 5 files changed, 45 insertions(+), 42 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index fb556416..93445742 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -2101,7 +2101,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) { // 级别值比当前等级高的级差数据列表 Map itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream() - .filter(tmpData -> tmpData.getRangeValue().compareTo(sourceMemberRangeExt.getGradeValue()) > 0) .collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice)); // 临时价格(跟着每一次变动) @@ -2127,7 +2126,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { continue; } // 当前会员等级值 - int calGradeValue = targetMemberRangeExt.getGradeValue(); + Integer calGradeValue = EAwards.getGradeValueByValue(targetMemberRangeExt.getGradeValue()); // 当前会员的级差价格 BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue); if (targetRangePrice.compareTo(tmpPrice) < 0) { @@ -2168,6 +2167,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); cuMemberBonusRange.setPkOrder(saOrderExt.getPkId()); + cuMemberBonusRange.setPkOrderItems(0L); rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 90d250af..1b573a8d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -344,7 +344,7 @@ - select soi.pk_order, soi.pk_id, soi.price, diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index ccbb926b..b3f9921c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -214,7 +214,7 @@ public class EnumsController extends BaseController { List enumEntityList = new ArrayList<>(); for (EAwards value : EAwards.values()) { if (value.getEnable() == EYesNo.YES.getIntValue()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.AWARDS)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } } return AjaxResult.success(enumEntityList); @@ -228,7 +228,7 @@ public class EnumsController extends BaseController { List enumEntityList = new ArrayList<>(); for (EAwardsLevel value : EAwardsLevel.values()) { if (value.getEnable() == EYesNo.YES.getIntValue()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.AWARDS_LEVEL)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } } return AjaxResult.success(enumEntityList); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index d2a77a14..af2a8b73 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -90,11 +90,7 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 奖衔枚举枚举 - for (EAwards value : EAwards.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 等级枚举枚举 + // 等级枚举枚举 for (EGrade value : EGrade.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java index d0236a0f..788df2e6 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,77 +13,73 @@ public enum EAwards { /** * -1=海粉 */ - SEA_FLOUR(0, -1, "海粉", 1, EnumsPrefixConstants.AWARDS + "-1"), - + SEA_FLOUR(0, -1, "海粉", 1), /** * 0=无 */ - MEMBER(1, 0, "无", 0, EnumsPrefixConstants.AWARDS + 0), + MEMBER(1, 0, "无", 0), /** * 黄宝 */ - HEADER(2, 5, "一级", 0, EnumsPrefixConstants.AWARDS + 5), + HEADER(2, 5, "一级", 0), /** * 绿宝 */ - MANAGER(3, 10, "二级", 0, EnumsPrefixConstants.AWARDS + 10), + MANAGER(3, 10, "二级", 0), /** * 蓝宝 */ - HIGH_MANAGER(4, 15, "三级", 0, EnumsPrefixConstants.AWARDS + 15), - + HIGH_MANAGER(4, 15, "三级", 0), /** * 钻石 */ - SENIOR_MANAGER(5, 20, "四级", 0, EnumsPrefixConstants.AWARDS + 20), + SENIOR_MANAGER(5, 20, "四级", 0), /** * 黄钻 */ - CHIEF(6, 25, "五级", 0, EnumsPrefixConstants.AWARDS + 25), + CHIEF(6, 25, "五级", 0), /** * 绿钻 */ - HIGH_CHIEF(7, 30, "六级", 0, EnumsPrefixConstants.AWARDS + 30), - + HIGH_CHIEF(7, 30, "六级", 0), /** * 星耀蓝钻 */ - SENIOR_CHIEF(8, 35, "七级", 0, EnumsPrefixConstants.AWARDS + 35), + SENIOR_CHIEF(8, 35, "七级", 0), /** * 王者红钻 */ - CHAIRMAN(9, 40, "八级", 0, EnumsPrefixConstants.AWARDS + 40), + CHAIRMAN(9, 40, "八级", 0), /** * 传奇紫钻 */ - HONOR_CHAIRMAN(10, 45, "九级", 0, EnumsPrefixConstants.AWARDS + 45), - + HONOR_CHAIRMAN(10, 45, "九级", 0), /** * 10 */ - GLOBAL_CHAIRMAN(11, 50, "十级", 0, EnumsPrefixConstants.AWARDS + 50), + GLOBAL_CHAIRMAN(11, 50, "十级", 0), /** * 11 */ - LEVEL_ELEVEN(12, 55, "十一级", 0, EnumsPrefixConstants.AWARDS + 55), + LEVEL_ELEVEN(12, 55, "十一级", 0), /** * 12 */ - LEVEL_TWELVE(13, 60, "十二级", 0, EnumsPrefixConstants.AWARDS + 60), + LEVEL_TWELVE(13, 60, "十二级", 0), /** * 13 */ - LEVEL_THIRTEEN(14, 65, "十三级", 0, EnumsPrefixConstants.AWARDS + 65), + LEVEL_THIRTEEN(14, 65, "十三级", 0), /** * 14 */ - LEVEL_FOURTEEN(15, 70, "十四级", 0, EnumsPrefixConstants.AWARDS + 70), + LEVEL_FOURTEEN(15, 70, "十四级", 0), /** * 15 */ - LEVEL_FIFTEEN(16, 75, "十五级", 0, EnumsPrefixConstants.AWARDS + 75), + LEVEL_FIFTEEN(16, 75, "十五级", 0), ; @@ -105,17 +100,29 @@ public enum EAwards { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; - public static String getAwardsLabel(int value) { - for (EAwards eAwards : EAwards.values()) { - if (eAwards.value == value) { - return eAwards.label; - } + /** + * 根据枚举值获取等级枚举值(用于级差枚举值转换) + * + * @param value + * @return + */ + public static Integer getGradeValueByValue(int value) { + if (EGrade.START_UP.getValue() == value) { + return EAwards.MEMBER.getValue(); + } else if (EGrade.HAI_FAN.getValue() == value) { + return EAwards.HEADER.getValue(); + } else if (EGrade.YOU_KE.getValue() == value) { + return EAwards.MANAGER.getValue(); + } else if (EGrade.MAKER.getValue() == value) { + return EAwards.HIGH_MANAGER.getValue(); + } else if (EGrade.VIP.getValue() == value) { + return EAwards.SENIOR_MANAGER.getValue(); + } else if (EGrade.S_VIP.getValue() == value) { + return EAwards.CHIEF.getValue(); } - return ""; + return 0; } + + } From 3b1bbdccd87808017d983f8782203963e52a98f4 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 12:02:01 +0800 Subject: [PATCH 007/362] =?UTF-8?q?##=20=E6=96=B0=E5=A4=8D=E8=B4=AD?= =?UTF-8?q?=E7=BA=A7=E5=B7=AE=E5=88=A4=E6=96=AD=E7=B1=BB=E5=9E=8B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 93445742..a862a74f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -452,7 +452,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (SaOrderExt saOrderExt : orderList) { if (saOrderExt.getDelFlag() == EYesNo.YES.getIntValue()) { retailOrderList.add(saOrderExt); - if (EOrderType.REPURCHASE_ORDER.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 复购订单 repurchaseOrderList.add(saOrderExt); } From 0f63dcc55cfc1f675e225b3f25da5332066beef9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 13:55:37 +0800 Subject: [PATCH 008/362] =?UTF-8?q?##=20=E6=96=B0=E5=A4=8D=E8=B4=AD?= =?UTF-8?q?=E7=BA=A7=E5=B7=AE=E6=94=B6=E7=9B=8A=E7=B4=AF=E8=AE=A1=E5=95=86?= =?UTF-8?q?=E5=93=81=E6=95=B0=E9=87=8F=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java | 3 +++ .../main/resources/mapper/bonus/order/BonusOrderMapper.xml | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index a862a74f..81d4e040 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -2138,6 +2138,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } else { bonusIncome = tmpPrice.subtract(targetRangePrice); } + // 单个级差 * 商品数量 = 实际奖金 + bonusIncome = bonusIncome.multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); + bonusIncomeMap.put(targetMemberRangeExt.getPkMember(), bonusIncome); // 临时价格更新 tmpPrice = targetRangePrice; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 1b573a8d..30cffac9 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -333,6 +333,7 @@ + @@ -348,6 +349,7 @@ select soi.pk_order, soi.pk_id, soi.price, + soi.wares_quantity, bwr.pk_wares, bwr.pk_product, bwr.pk_wares_detail, @@ -360,7 +362,8 @@ soi.pk_product, soi.pk_wares_detail, soi.pk_wares_specs_sku, - soi.price + soi.price, + max(soi.wares_quantity) wares_quantity from sa_order so left join sa_order_items soi on soi.pk_order = so.pk_id From dadd3250163996bc118586c6f440d6f6ceed157e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 13:56:44 +0800 Subject: [PATCH 009/362] =?UTF-8?q?##=20=E6=96=B0=E5=A4=8D=E8=B4=AD?= =?UTF-8?q?=E7=BA=A7=E5=B7=AE=E6=94=B6=E7=9B=8A=E7=B4=AF=E8=AE=A1=E5=95=86?= =?UTF-8?q?=E5=93=81=E6=95=B0=E9=87=8F=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/bonus/service/impl/BonusSettleRangeHandle.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 81d4e040..e89fe4d3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -2134,12 +2134,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 差价就是级差收益 BigDecimal bonusIncome; if (bonusIncomeMap.containsKey(targetMemberRangeExt.getPkMember())) { - bonusIncome = bonusIncomeMap.get(targetMemberRangeExt.getPkMember()).add(tmpPrice.subtract(targetRangePrice)); + bonusIncome = bonusIncomeMap.get(targetMemberRangeExt.getPkMember()).add(tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity()))); } else { - bonusIncome = tmpPrice.subtract(targetRangePrice); + bonusIncome = tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); } - // 单个级差 * 商品数量 = 实际奖金 - bonusIncome = bonusIncome.multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); bonusIncomeMap.put(targetMemberRangeExt.getPkMember(), bonusIncome); // 临时价格更新 From 7376415d2f39ff16761bb668eff97acb45e87069 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 14:29:19 +0800 Subject: [PATCH 010/362] =?UTF-8?q?##=20=E5=95=86=E5=93=81=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=B7=BB=E5=8A=A0=E6=9D=83=E9=99=90=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/config/AdvertBannerServiceApi.java | 25 --- .../service/impl/BdWaresBonusServiceImpl.java | 31 ++- .../api/ApiRetailWaresController.java | 31 ++- .../controller/api/ApiBdWaresController.java | 179 ++++++------------ .../sale/wares/mapper/BdWaresLabelMapper.java | 3 - .../wares/service/IBdWaresLabelService.java | 9 +- .../wares/service/IBdWaresRangeService.java | 9 - .../service/impl/BdWaresLabelServiceImpl.java | 9 - .../service/impl/BdWaresRangeServiceImpl.java | 30 +-- .../system/config/mapper/BdRangeMapper.java | 6 - .../provider/AdvertBannerServiceProvider.java | 48 ----- .../config/provider/RangeServiceProvider.java | 22 +-- .../config/service/IBdRangeService.java | 30 +-- .../service/impl/BdRangeServiceImpl.java | 58 +----- .../core/constant/SystemFieldConstants.java | 45 ----- .../domain/sale/wares/BdWaresLabel.java | 5 - .../common/domain/system/config/BdRange.java | 9 +- 17 files changed, 132 insertions(+), 417 deletions(-) delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/AdvertBannerServiceApi.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AdvertBannerServiceProvider.java diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/AdvertBannerServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/AdvertBannerServiceApi.java deleted file mode 100644 index 2c4cbec6..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/AdvertBannerServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.system.config.dto.AdvertBannerDTO; - -import java.util.List; - -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.system.config - * @Author: yh - * @CreateTime: 2023-05-15 10:15 - * @Description: - * @Version: 1.0 - */ -public interface AdvertBannerServiceApi { - - /** - * 查询全部banner - * - * @return - */ - R> findAll(); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java index cbc2708f..d1434865 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java @@ -1,14 +1,13 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.mapper.BdWaresBonusMapper; import com.hzs.bonus.bonus.param.BdWaresBonusParam; import com.hzs.bonus.bonus.service.IBdWaresBonusItemsService; import com.hzs.bonus.bonus.service.IBdWaresBonusService; -import com.hzs.common.core.constant.SystemFieldConstants; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.bonus.BdWaresBonus; @@ -29,7 +28,7 @@ import java.util.List; public class BdWaresBonusServiceImpl extends ServiceImpl implements IBdWaresBonusService { @Autowired - private IBdWaresBonusItemsService waresBonusItemsService; + private IBdWaresBonusItemsService iBdWaresBonusItemsService; @Override public List querySpecialWaresBonus(BdWaresBonusParam waresBonusParam) { @@ -40,21 +39,21 @@ public class BdWaresBonusServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, userId); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, DateUtils.currentDateTime()); - updateWrapper.eq(SystemFieldConstants.PK_ID, pkId); + iBdWaresBonusItemsService.deleteWaresBonusItems(null, pkId, userId); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(BdWaresBonus::getPkModified, userId); + updateWrapper.set(BdWaresBonus::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(BdWaresBonus::getModifiedTime, DateUtils.currentDateTime()); + updateWrapper.eq(BdWaresBonus::getPkId, pkId); update(updateWrapper); } @Override public BdWaresBonus queryWaresBonusById(BdWaresBonusParam waresBonusParam) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(SystemFieldConstants.PK_WARES, waresBonusParam.getPkWares()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdWaresBonus::getPkWares, waresBonusParam.getPkWares()); if (waresBonusParam.getPkId() != null) { - queryWrapper.ne(SystemFieldConstants.PK_ID, waresBonusParam.getPkId()); + queryWrapper.ne(BdWaresBonus::getPkId, waresBonusParam.getPkId()); } return baseMapper.selectOne(queryWrapper); } @@ -91,12 +90,12 @@ public class BdWaresBonusServiceImpl extends ServiceImpl 0) { // 删除 - waresBonusItemsService.deleteWaresBonusItems(updateWaresBonusItems, updateWaresBonusItems.get(0).getPkWaresBonus(), userId); - waresBonusItemsService.updateWaresBonusItems(updateWaresBonusItems); + iBdWaresBonusItemsService.deleteWaresBonusItems(updateWaresBonusItems, updateWaresBonusItems.get(0).getPkWaresBonus(), userId); + iBdWaresBonusItemsService.updateWaresBonusItems(updateWaresBonusItems); } // 新增 if (insertWaresBonusItems.size() > 0) { - waresBonusItemsService.insetWaresBonusItems(insertWaresBonusItems); + iBdWaresBonusItemsService.insetWaresBonusItems(insertWaresBonusItems); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index 7d49159d..feea16a2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -17,14 +17,12 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; -import com.hzs.common.domain.sale.wares.BdWares; -import com.hzs.common.domain.sale.wares.BdWaresLabel; -import com.hzs.common.domain.sale.wares.BdWaresRange; -import com.hzs.common.domain.sale.wares.BdWaresSpecsSku; +import com.hzs.common.domain.sale.wares.*; import com.hzs.common.domain.system.config.BdLabel; import com.hzs.common.domain.system.ext.BdLabelExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.IMemberServiceApi; +import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.retail.wares.param.RetailWaresDetailParam; import com.hzs.retail.wares.param.RetailWaresParam; import com.hzs.retail.wares.vo.RetailWaresDetailVO; @@ -68,7 +66,7 @@ public class ApiRetailWaresController extends BaseController { private IBdWaresRangeService iBdWaresRangeService; @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; @DubboReference IAreaCurrencyServiceApi iAreaCurrencyServiceApi; @DubboReference @@ -94,7 +92,6 @@ public class ApiRetailWaresController extends BaseController { param.setSystemType(SecurityUtils.getSystemType()); param.setPkCountry(SecurityUtils.getPkCountry()); // 商品列表 - startPage(); List bdWaresExtList = iBdWaresService.listRetailWaresByCondition(param); if (CollectionUtil.isNotEmpty(bdWaresExtList)) { @@ -177,9 +174,11 @@ public class ApiRetailWaresController extends BaseController { Integer pkGrade, boolean showLabel) { // 返回商品列表 List resultList = new ArrayList<>(); + // 当前会员ID + Long userId = SecurityUtils.getUserId(); // 汇率比例 - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); // 商品主键列表 @@ -208,7 +207,25 @@ public class ApiRetailWaresController extends BaseController { } } + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(tmpBdWares -> { + ShowWaresDTO showWaresDTO = new ShowWaresDTO(); + showWaresDTO.setPkWares(tmpBdWares.getPkId()); + showWaresDTO.setLoginMember(userId); + showWaresDTO.setWaresAuthorityList(waresAuthorityMap.get(tmpBdWares.getPkId())); + return showWaresDTO; + }).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(bdWaresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + if (null != list) { // 商品标签处理 // 保证标签 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index 02bcf28c..f926b94c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -5,7 +5,7 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.SaOrderMsgConstants; import com.hzs.common.core.constant.msg.WaresMsgConstants; @@ -35,7 +35,6 @@ import com.hzs.sale.wares.service.*; import com.hzs.sale.wares.vo.*; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.AdvertBannerServiceApi; import com.hzs.system.config.IAreaCurrencyServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; @@ -60,52 +59,34 @@ import java.util.stream.Collectors; public class ApiBdWaresController extends BaseController { @DubboReference - IGradeServiceApi gradeServiceApi; + IGradeServiceApi iGradeServiceApi; @DubboReference - IMemberServiceApi memberServiceApi; + IMemberServiceApi iMemberServiceApi; @DubboReference - IAreaCurrencyServiceApi areaCurrencyServiceApi; + IAreaCurrencyServiceApi iAreaCurrencyServiceApi; @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; @Autowired - private IBdWaresLabelService waresLabelService; + private IBdWaresService iBdWaresService; @Autowired - private IBdWaresGradeService waresGradeService; + private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; + @Autowired + private IBdWaresLabelService iBdWaresLabelService; + @Autowired + private IBdWaresGradeService iBdWaresGradeService; + @Autowired + private IBdWaresRangeService iBdWaresRangeService; + @Autowired + protected IShoppingCartService iShoppingCartService; + @Autowired + private ISaOrderService iSaOrderService; + @Autowired protected RedisService redisService; @Autowired protected StringRedisTemplate redisTemplate; - @Autowired - protected IShoppingCartService shoppingCartService; - private IBdWaresService bdWaresService; - - private IBdWaresSpecsSkuService bdWaresSpecsSkuService; - - private IBdWaresRangeService bdWaresRangeService; - - private ISaOrderService saOrderService; - - @Autowired - public void setSaOrderService(ISaOrderService saOrderService) { - this.saOrderService = saOrderService; - } - - @Autowired - public void setBdWaresRangeService(IBdWaresRangeService bdWaresRangeService) { - this.bdWaresRangeService = bdWaresRangeService; - } - - @Autowired - public void setBdWaresSpecsSkuService(IBdWaresSpecsSkuService bdWaresSpecsSkuService) { - this.bdWaresSpecsSkuService = bdWaresSpecsSkuService; - } - - @Autowired - public void setBdWaresService(IBdWaresService bdWaresService) { - this.bdWaresService = bdWaresService; - } /** * 根据专区查找专区的商品 @@ -117,48 +98,42 @@ public class ApiBdWaresController extends BaseController { if (cuWaresParams.getSpecialArea() == null) { return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); } - - Integer pkCountry; - if (cuWaresParams.getPkCountry() != null) { - pkCountry = cuWaresParams.getPkCountry(); - } else { - pkCountry = SecurityUtils.getPkCountry(); - } + Integer pkCountry = cuWaresParams.getPkCountry() != null ? cuWaresParams.getPkCountry() : SecurityUtils.getPkCountry(); // 返回数据 List waresParamsList = new ArrayList<>(); // 查询商品列表 - List bdWaresExtList = bdWaresService.queryWaresByCondition(cuWaresParams.getSpecialArea(), cuWaresParams.getPkAreaClassify(), cuWaresParams.getWaresName(), null, null, pkCountry); + List bdWaresExtList = iBdWaresService.queryWaresByCondition(cuWaresParams.getSpecialArea(), cuWaresParams.getPkAreaClassify(), cuWaresParams.getWaresName(), null, null, pkCountry); if (CollectionUtil.isNotEmpty(bdWaresExtList)) { // 等级 - R> gradeDTO = gradeServiceApi.queryGradeList(pkCountry); + R> gradeDTO = iGradeServiceApi.queryGradeList(pkCountry); List gradeList = gradeDTO.getData(); Map gradeMap = gradeList.stream().filter(grade -> ESystemType.DEFAULT.getValue() == grade.getSystemType()).collect(Collectors.toMap(GradeDTO::getGradeValue, Function.identity())); // 当前会员ID Long userId = SecurityUtils.getUserId(); - CuMember cuMember = saOrderService.getCuMemberByKey(userId); + CuMember cuMember = iSaOrderService.getCuMemberByKey(userId); // 当前会员编号 String memberCode = cuMember.getMemberCode(); // 汇率比例 - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); // 商品主键列表 List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); // 检验商品团队信息 - Map> waresAuthorityMap = bdWaresService.getWaresAuthority(waresIdList); + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), userId, memberCode, waresAuthorityMap)).collect(Collectors.toList()); - R> waresShowMapDto = memberServiceApi.checkIsShowWares(showWaresList); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); Map waresShowMap = waresShowMapDto.getData(); // 商品标签列表 BdWaresLabel waresLabel = new BdWaresLabel(); waresLabel.setPkIdList(waresIdList); - List list = waresLabelService.selectByList(waresLabel); + List list = iBdWaresLabelService.selectByList(waresLabel); // 标签 for (BdWaresExt bdWaresExt : bdWaresExtList) { @@ -193,14 +168,14 @@ public class ApiBdWaresController extends BaseController { // 查询商品sku 最小值 和数量 Map> waresSpecsSkuMap = new HashMap<>(); if (waresIdList.size() > 0) { - List waresSpecsSkuArray = bdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); } List waresSpecsSkuList = new ArrayList<>(); if (waresIdList.size() > 0) { // 查询默认规格 - waresSpecsSkuList = bdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); } List bdWaresRangeList = new ArrayList<>(); @@ -209,14 +184,14 @@ public class ApiBdWaresController extends BaseController { || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { // 复购业绩计算 if (waresIdList.size() > 0) { - bdWaresRangeList = bdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdList); + bdWaresRangeList = iBdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdList); } } Set waresIdSet = new HashSet<>(); List authWaresList = new ArrayList<>(); if (waresIdList.size() > 0) { // 处理商品权限 - List waresGradeAwardsList = waresGradeService.queryWaresGradeAwards(waresIdList); + List waresGradeAwardsList = iBdWaresGradeService.queryWaresGradeAwards(waresIdList); // 先处理没有配置等级、奖衔的商品 waresGradeAwardsList.forEach(waresGradeAwards -> { waresIdSet.add(waresGradeAwards.getPkWares()); @@ -225,9 +200,6 @@ public class ApiBdWaresController extends BaseController { }); } - // 海粉等级实体 - GradeDTO haiFanGradeDTO = gradeMap.get(EGrade.HAI_FAN.getValue()); - for (BdWaresExt waresExt : bdWaresExtList) { // 校验团队信息 Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); @@ -283,14 +255,6 @@ public class ApiBdWaresController extends BaseController { // 零售价 retailPrice = retailPrice.add(bdWaresSpecsSkuExt.getRetailPrice().multiply(BigDecimal.valueOf(bdWaresSpecsSkuExt.getQuantity()))); } - if (cuWaresParams.getPkCountry() != null && !pkCountry.equals(SecurityUtils.getPkCountry())) { - // 当登陆人的结算国和前端结算国不一致 即为跨国报单 - if (!pkCountry.equals(SecurityUtils.getPkCountry())) { - // 跨国报单 跨国汇率 - R kgCurrency = currencyServiceApi.getCurrency(pkCountry); - waresPrice = waresPrice.multiply(inExchangeRate).divide(kgCurrency.getData().getInExchangeRate(), 2, BigDecimal.ROUND_HALF_UP); - } - } } // 计算商品列表价格和业绩最小值 @@ -344,7 +308,7 @@ public class ApiBdWaresController extends BaseController { } List areaCurrencyDTOList = new ArrayList<>(); if (pkCurrencySet.size() > 0) { - areaCurrencyDTOList = areaCurrencyServiceApi.queryAreaCurrencyBySpecialArea(pkCurrencySet, EAccount.REPEAT.getValue()); + areaCurrencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyBySpecialArea(pkCurrencySet, EAccount.REPEAT.getValue()); } for (CuWaresParams waresParams : waresParamsList) { @@ -370,7 +334,7 @@ public class ApiBdWaresController extends BaseController { **/ private BigDecimal getSpecialDeductRatio(CuWaresParams cuWaresParams, Integer pkCountry, Integer accountValue) { // 查询专区所属币种 - List areaCurrencyDTOList = areaCurrencyServiceApi.queryAreaCurrencyByCondition(cuWaresParams.getSpecialArea(), pkCountry).getData(); + List areaCurrencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyByCondition(cuWaresParams.getSpecialArea(), pkCountry).getData(); BigDecimal elseRatio = BigDecimal.ZERO; BigDecimal deductRatio = BigDecimal.ZERO; boolean flag = false; @@ -422,13 +386,8 @@ public class ApiBdWaresController extends BaseController { return AjaxResult.error(WaresMsgConstants.WARES_NUMBER_DOES_NOT_EXIST); } Long loginMemberId = SecurityUtils.getUserId(); - Integer pkCountry; - if (cuWaresParams.getPkCountry() == null) { - pkCountry = SecurityUtils.getPkCountry(); - } else { - pkCountry = cuWaresParams.getPkCountry(); - } - cuWaresParams = bdWaresSpecsSkuService.queryWaresSpecsSku(cuWaresParams.getSpecialArea(), cuWaresParams.getWaresCode(), loginMemberId, pkCountry); + Integer pkCountry = cuWaresParams.getPkCountry() == null ? SecurityUtils.getPkCountry() : cuWaresParams.getPkCountry(); + cuWaresParams = iBdWaresSpecsSkuService.queryWaresSpecsSku(cuWaresParams.getSpecialArea(), cuWaresParams.getWaresCode(), loginMemberId, pkCountry); // 预计发货时间(秒) if (cuWaresParams.getArrivalTime() != null && cuWaresParams.getCreationTime() != null) { @@ -455,7 +414,7 @@ public class ApiBdWaresController extends BaseController { List areaCurrencyDTOList = new ArrayList<>(); if (pkCurrencySet.size() > 0) { - areaCurrencyDTOList = areaCurrencyServiceApi.queryAreaCurrencyBySpecialArea(pkCurrencySet, EAccount.REPEAT.getValue()); + areaCurrencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyBySpecialArea(pkCurrencySet, EAccount.REPEAT.getValue()); } cuWaresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(cuWaresParams.getWaresPrice(), deductRatio)); if (areaCurrencyDTOList.size() > 0) { @@ -483,19 +442,19 @@ public class ApiBdWaresController extends BaseController { if (cuWaresItemsParams.getWaresCode() == null || cuWaresItemsParams.getPkWaresDetail() == null) { return AjaxResult.error(WaresMsgConstants.WARES_NUMBER_DOES_NOT_EXIST); } - return AjaxResult.success(bdWaresSpecsSkuService.queryWaresDetailSkuBySpecs(cuWaresItemsParams)); + return AjaxResult.success(iBdWaresSpecsSkuService.queryWaresDetailSkuBySpecs(cuWaresItemsParams)); } /** * 查询商品 */ - @PostMapping("get-wares-agreement") + @PostMapping("/get-wares-agreement") public AjaxResult getWaresAgreement(@RequestBody WaresAgrementParam waresAgrementParam) { if (waresAgrementParam.getWaresCodeList().size() == 0) { return AjaxResult.error(TransactionUtils.getContent(WaresMsgConstants.WARES_CODE_NOT_NULL)); } - List waresExtList = bdWaresService.selectByWaresCodeList(waresAgrementParam.getWaresCodeList()); + List waresExtList = iBdWaresService.selectByWaresCodeList(waresAgrementParam.getWaresCodeList()); OrderAlertVo orderAlertVo = new OrderAlertVo(); Integer alertTime = 0; orderAlertVo.setWaresExtList(waresExtList); @@ -518,34 +477,28 @@ public class ApiBdWaresController extends BaseController { if (cuWaresParams.getSpecialArea() == null) { return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); } - - Integer pkCountry; - if (cuWaresParams.getPkCountry() != null) { - pkCountry = cuWaresParams.getPkCountry(); - } else { - pkCountry = SecurityUtils.getPkCountry(); - } + Integer pkCountry = cuWaresParams.getPkCountry() != null ? cuWaresParams.getPkCountry() : SecurityUtils.getPkCountry(); // 返回数据列表 List waresParamsList = new ArrayList<>(); // 查询商品列表 - List bdWaresExtList = bdWaresService.queryRecommendWaresByCondition(cuWaresParams.getSpecialArea(), cuWaresParams.getPkAreaClassify(), cuWaresParams.getWaresName(), pkCountry); + List bdWaresExtList = iBdWaresService.queryRecommendWaresByCondition(cuWaresParams.getSpecialArea(), cuWaresParams.getPkAreaClassify(), cuWaresParams.getWaresName(), pkCountry); if (CollectionUtil.isNotEmpty(bdWaresExtList)) { // 商品ID列表 List pkWaresIds = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); // 当前会员 - CuMember cuMember = saOrderService.getCuMemberByKey(SecurityUtils.getUserId()); + CuMember cuMember = iSaOrderService.getCuMemberByKey(SecurityUtils.getUserId()); // 汇率比例 - R currency = currencyServiceApi.getCurrency(pkCountry); + R currency = iCurrencyServiceApi.getCurrency(pkCountry); BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); // 查询商品标签列表 BdWaresLabel waresLabel = new BdWaresLabel(); waresLabel.setPkIdList(pkWaresIds); - List labelList = waresLabelService.selectByList(waresLabel); + List labelList = iBdWaresLabelService.selectByList(waresLabel); // 标签 for (BdWaresExt bdWaresExt : bdWaresExtList) { @@ -578,7 +531,7 @@ public class ApiBdWaresController extends BaseController { Map> waresSpecsSkuMap = new HashMap<>(); if (pkWaresIds.size() > 0) { - List waresSpecsSkuArray = bdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(pkWaresIds); + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(pkWaresIds); waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); } @@ -596,7 +549,7 @@ public class ApiBdWaresController extends BaseController { bdWaresExtList.forEach(we -> { waresIdSet.add(we.getPkId()); }); - List bdWaresRangeList = bdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdSet); + List bdWaresRangeList = iBdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdSet); for (BdWaresRange bdWaresRange : bdWaresRangeList) { if (waresExt.getPkId().intValue() == bdWaresRange.getPkWares().intValue()) { waresPrice = waresPrice.add(bdWaresRange.getPrice()); @@ -627,29 +580,20 @@ public class ApiBdWaresController extends BaseController { waresParams.setAssAchieve(assAchieve); // 商品业绩计算汇率 if (waresParams.getWaresAchieve() != null) { - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - waresParams.setWaresAchieve(waresParams.getWaresAchieve().multiply(inExchangeRate)); - - } else { - waresParams.setWaresAchieve(waresParams.getWaresAchieve()); - } + waresParams.setWaresAchieve(waresParams.getWaresAchieve().multiply(inExchangeRate)); } else { waresParams.setWaresAchieve(BigDecimal.ZERO); } // 商品bv 计算 if (waresParams.getAssAchieve() != null) { - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - waresParams.setAssAchieve(waresParams.getAssAchieve().multiply(inExchangeRate)); - } else { - waresParams.setAssAchieve(waresParams.getAssAchieve()); - } + waresParams.setAssAchieve(waresParams.getAssAchieve().multiply(inExchangeRate)); } else { waresParams.setAssAchieve(BigDecimal.ZERO); } // 查询默认规格 JSONArray jsonArray = new JSONArray(); - List list = bdWaresSpecsSkuService.selectByWaresSpecsSku(Collections.singletonList(waresExt.getPkId())); + List list = iBdWaresSpecsSkuService.selectByWaresSpecsSku(Collections.singletonList(waresExt.getPkId())); List collect = list.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { JSONObject js = new JSONObject(); @@ -660,9 +604,9 @@ public class ApiBdWaresController extends BaseController { } waresParams.setProductGroup(jsonArray); // 查询等级配置 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_WARES", waresExt.getPkId()); - List waresGradeList = waresGradeService.list(queryWrapper); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdWaresGrade::getPkWares, waresExt.getPkId()); + List waresGradeList = iBdWaresGradeService.list(queryWrapper); if (waresGradeList.size() > 0) { // 查询等级和商品是否存在 不存在不返回该数据 for (BdWaresGrade bdWaresGrade : waresGradeList) { @@ -670,7 +614,6 @@ public class ApiBdWaresController extends BaseController { if (pkSettleGrade.equals(bdWaresGrade.getPkRange())) { waresParamsList.add(waresParams); } - } } else { waresParamsList.add(waresParams); @@ -685,18 +628,17 @@ public class ApiBdWaresController extends BaseController { * * @return */ - @PostMapping("get-wares-info") + @PostMapping("/get-wares-info") public AjaxResult getWaresInfo(@RequestBody WaresInfoParam waresInfoParam) { - BdWares wares = bdWaresService.getWares(waresInfoParam.getPkWares()); + BdWares wares = iBdWaresService.getWares(waresInfoParam.getPkWares()); WaresInfoVo waresInfoVo = new WaresInfoVo(); waresInfoVo.setWaresName(wares.getWaresName()); - waresInfoVo.setNumber(waresInfoParam.getNumber()); waresInfoVo.setPkWares(wares.getPkId()); waresInfoVo.setCover(wares.getCover1()); List waresSpecsSkuList = waresInfoParam.getWaresSpecsSku().stream().map(WaresSpecsSkuParam::getPkWaresSpecsSku).collect(Collectors.toList()); - List waresItemWaresInfos = bdWaresSpecsSkuService.selectByPkIds(waresSpecsSkuList); + List waresItemWaresInfos = iBdWaresSpecsSkuService.selectByPkIds(waresSpecsSkuList); BigDecimal waresPrice = BigDecimal.ZERO; BigDecimal pv = BigDecimal.ZERO; BigDecimal waresPriceAmount = BigDecimal.ZERO; @@ -711,14 +653,11 @@ public class ApiBdWaresController extends BaseController { } } } - Integer pkCountry = SecurityUtils.getPkCountry(); - if (CountryConstants.CHINA_COUNTRY.equals(pkCountry)) { - R currency = currencyServiceApi.getCurrency(pkCountry); - // 汇率比例 - BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); - pv = ComputeUtil.computeMultiply(pv, inExchangeRate); - pvAmount = ComputeUtil.computeMultiply(pvAmount, inExchangeRate); - } + R currency = iCurrencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); + // 汇率比例 + BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); + pv = ComputeUtil.computeMultiply(pv, inExchangeRate); + pvAmount = ComputeUtil.computeMultiply(pvAmount, inExchangeRate); waresInfoVo.setWaresPrice(waresPrice); waresInfoVo.setPv(pv); waresInfoVo.setWaresCode(wares.getWaresCode()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresLabelMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresLabelMapper.java index e69d017f..52d2d68e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresLabelMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresLabelMapper.java @@ -8,9 +8,6 @@ import java.util.List; /** * 商品标签表 Mapper 接口 - * - * @author hzs - * @since 2022-10-21 */ public interface BdWaresLabelMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresLabelService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresLabelService.java index 5cf7fdbb..e4ca53cd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresLabelService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresLabelService.java @@ -8,12 +8,15 @@ import java.util.List; /** * 商品标签表 服务类 - * - * @author hzs - * @since 2022-10-21 */ public interface IBdWaresLabelService extends IService { + /** + * 根据商品查询 商品所属标签 + * + * @param waresLabel + * @return + */ List selectByList(BdWaresLabel waresLabel); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresRangeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresRangeService.java index a0b2b369..84938b5d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresRangeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresRangeService.java @@ -8,9 +8,6 @@ import java.util.List; /** * 极差明细表 服务类 - * - * @author hzs - * @since 2022-09-09 */ public interface IBdWaresRangeService extends IService { @@ -19,9 +16,6 @@ public interface IBdWaresRangeService extends IService { * * @param cuMember 会员 * @param pkWareList 商品主键 - * @return: List - * @Author: sui q - * @Date: 2022/9/26 16:48 */ List queryWaresRangeByCondition(CuMember cuMember, List pkWareList); @@ -32,9 +26,6 @@ public interface IBdWaresRangeService extends IService { * @param rangeType 类型 * @param level 基本 * @param specsSkuList 最小库存单位 - * @return: List - * @Author: sui q - * @Date: 2022/9/26 15:33 */ List querySkuWaresRangeByCondition(Integer pkCountry, Integer rangeType, Integer level, List specsSkuList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresLabelServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresLabelServiceImpl.java index ff7276bc..dc4159aa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresLabelServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresLabelServiceImpl.java @@ -13,19 +13,10 @@ import java.util.List; /** * 商品标签表 服务实现类 - * - * @author hzs - * @since 2022-10-21 */ @Service public class BdWaresLabelServiceImpl extends ServiceImpl implements IBdWaresLabelService { - /** - * 根据商品查询 商品所属标签 - * - * @param waresLabel - * @return - */ @Override public List selectByList(BdWaresLabel waresLabel) { return baseMapper.selectByList(waresLabel); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresRangeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresRangeServiceImpl.java index 595dca55..d4c27c99 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresRangeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresRangeServiceImpl.java @@ -1,10 +1,9 @@ package com.hzs.sale.wares.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.SystemFieldConstants; import com.hzs.common.core.enums.EAwards; import com.hzs.common.core.enums.ERangeType; import com.hzs.common.domain.member.base.CuMember; @@ -23,28 +22,25 @@ import java.util.List; /** * 极差明细表 服务实现类 - * - * @author hzs - * @since 2022-09-09 */ @Service public class BdWaresRangeServiceImpl extends ServiceImpl implements IBdWaresRangeService { @DubboReference - IRangeServiceApi rangeServiceApi; + IRangeServiceApi iRangeServiceApi; @DubboReference - IAwardsServiceApi awardsServiceApi; + IAwardsServiceApi iAwardsServiceApi; @Override public List queryWaresRangeByCondition(CuMember cuMember, List pkWareList) { int level = cuMember.getPkSettleGrade(); int rangeType = ERangeType.GRADE.getValue(); - BdAwards bdAwards = awardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); + BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); if (bdAwards.getAwardsValue() > EAwards.MEMBER.getValue()) { level = cuMember.getPkAwards(); rangeType = ERangeType.AWARDS.getValue(); } - RangeDTO rangeDTO = rangeServiceApi.queryRangeDtoByCondition(cuMember.getPkSettleCountry(), rangeType, level).getData(); + RangeDTO rangeDTO = iRangeServiceApi.queryRangeDtoByCondition(cuMember.getPkSettleCountry(), rangeType, level).getData(); if (rangeDTO == null) { return new ArrayList<>(); } @@ -53,19 +49,13 @@ public class BdWaresRangeServiceImpl extends ServiceImpl querySkuWaresRangeByCondition(Integer pkCountry, Integer rangeType, Integer level, List specsSkuList) { - RangeDTO rangeDTO = rangeServiceApi.queryRangeDtoByCondition(pkCountry, rangeType, level).getData(); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(SystemFieldConstants.PK_RANGE, rangeDTO.getPkRange()); - queryWrapper.in(SystemFieldConstants.PK_WARES_SPECS_SKU, specsSkuList); + RangeDTO rangeDTO = iRangeServiceApi.queryRangeDtoByCondition(pkCountry, rangeType, level).getData(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdWaresRange::getPkRange, rangeDTO.getPkRange()); + queryWrapper.in(BdWaresRange::getPkWaresSpecsSku, specsSkuList); return baseMapper.selectList(queryWrapper); } - /** - * 以range 为主表查询商品极差信息 - * - * @param pkWares - * @return - */ @Override public List queryWaresList(Long pkWares, Integer pkCountry) { return baseMapper.queryWaresList(pkWares, pkCountry); @@ -74,7 +64,7 @@ public class BdWaresRangeServiceImpl extends ServiceImpl listRetailWaresRange(Integer pkGrade, List pkWareList) { // 新零售只有等级级差,不需要处理奖衔 - RangeDTO rangeDTO = rangeServiceApi.queryRangeDtoByCondition(CountryConstants.CHINA_COUNTRY, ERangeType.GRADE.getValue(), pkGrade).getData(); + RangeDTO rangeDTO = iRangeServiceApi.queryRangeDtoByCondition(CountryConstants.CHINA_COUNTRY, ERangeType.GRADE.getValue(), pkGrade).getData(); if (rangeDTO == null) { return new ArrayList<>(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeMapper.java index dd022fcc..e7699143 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeMapper.java @@ -9,9 +9,6 @@ import java.util.List; /** * 极差配置 Mapper 接口 - * - * @author zhangjing - * @since 2022-09-09 */ public interface BdRangeMapper extends BaseMapper { @@ -21,9 +18,6 @@ public interface BdRangeMapper extends BaseMapper { * @param pkCountry 国家 * @param rangeType 极差类型 * @param pkLevel 等级 - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 */ List queryRangeDto(@Param("pkCountry") Integer pkCountry, @Param("rangeType") Integer rangeType, diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AdvertBannerServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AdvertBannerServiceProvider.java deleted file mode 100644 index 254799f1..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AdvertBannerServiceProvider.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.hzs.system.config.provider; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAdvertBanner; -import com.hzs.system.config.AdvertBannerServiceApi; -import com.hzs.system.config.dto.AdvertBannerDTO; -import com.hzs.system.config.service.IBdAdvertBannerService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.system.config.provider - * @Author: yh - * @CreateTime: 2023-05-15 10:14 - * @Description: - * @Version: 1.0 - */ -@DubboService -public class AdvertBannerServiceProvider implements AdvertBannerServiceApi { - - @Autowired - private IBdAdvertBannerService advertBannerService; - - /** - * 查询全部banner - * - * @return - */ - @Override - public R> findAll() { - List bannerDTOList = new ArrayList<>(); - - List bannerList = advertBannerService.listData(null); - if (CollectionUtil.isNotEmpty(bannerList)) { - bannerDTOList = bannerList.stream().map(advertBanner -> BeanUtil.copyProperties(advertBanner, AdvertBannerDTO.class)).collect(Collectors.toList()); - } - - return R.ok(bannerDTOList); - } - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java index 40dcf6bf..7a6f778c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java @@ -12,37 +12,27 @@ import java.util.List; import java.util.Map; /** - * @description: 极差配置 - * @author: zhang jing - * @date: 2022/11/10 17:02 - * @param: - * @return: + * 极差配置 **/ @DubboService public class RangeServiceProvider implements IRangeServiceApi { @Autowired - private IBdRangeService rangeService; + private IBdRangeService iBdRangeService; - /** - * @description: 根据国家查询极差配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:17 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> queryRange(Integer pkCountry) { - return R.ok(rangeService.queryRange(pkCountry)); + return R.ok(iBdRangeService.queryRange(pkCountry)); } @Override public R> queryRangeDto() { - return R.ok(rangeService.queryRangeDto()); + return R.ok(iBdRangeService.queryRangeDto()); } @Override public R queryRangeDtoByCondition(Integer pkCountry, Integer rangeType, Integer pkLevel) { - return R.ok(rangeService.getRangeDTO(pkCountry, rangeType, pkLevel)); + return R.ok(iBdRangeService.getRangeDTO(pkCountry, rangeType, pkLevel)); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeService.java index 47d4ba31..8653eadd 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeService.java @@ -9,48 +9,27 @@ import java.util.List; import java.util.Map; /** - *

* 极差配置 服务类 - *

- * - * @author zhangjing - * @since 2022-09-09 */ public interface IBdRangeService extends IService { /** - * @description: 新增极差 - * @author: zhang jing - * @date: 2022/10/28 14:23 - * @param: [rangeExt] - * @return: boolean + * 新增极差 **/ boolean saveRange(BdRangeExt rangeExt); /** - * @description: 修改极差 - * @author: zhang jing - * @date: 2022/10/28 14:23 - * @param: [rangeExt] - * @return: boolean + * 修改极差 **/ boolean updateRange(BdRangeExt rangeExt); /** - * @description: 根据国家查询极差配置列表 - * @author: zhang jing - * @date: 2022/11/11 18:02 - * @param: [pkCountry] - * @return: java.util.List + * 根据国家查询极差配置列表 **/ List queryRange(Integer pkCountry); /** * 查询各个国家极差的配置 键为 国家+极差类型+等级主键 - * - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 */ Map queryRangeDto(); @@ -60,9 +39,6 @@ public interface IBdRangeService extends IService { * @param pkCountry 国家 * @param rangeType 极差类型 * @param pkLevel 等级主键 - * @return: RangeDTO - * @Author: sui q - * @Date: 2023/2/4 15:54 */ RangeDTO getRangeDTO(Integer pkCountry, Integer rangeType, Integer pkLevel); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeServiceImpl.java index 2092ee79..20798de2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeServiceImpl.java @@ -7,20 +7,17 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.Constants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.system.config.BdRange; import com.hzs.common.domain.system.config.BdRangeDetails; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.config.dto.RangeDTO; import com.hzs.system.config.mapper.BdRangeMapper; import com.hzs.system.config.service.IBdRangeDetailsService; import com.hzs.system.config.service.IBdRangeService; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,40 +26,18 @@ import java.util.concurrent.TimeUnit; /** * 极差配置 服务实现类 - * - * @author zhangjing - * @since 2022-09-09 */ @Slf4j @Service public class BdRangeServiceImpl extends ServiceImpl implements IBdRangeService { @Autowired - private IBdRangeDetailsService rangeDetailsService; - - @DubboReference - ITransactionServiceApi iTransactionServiceApi; - + private IBdRangeDetailsService iBdRangeDetailsService; + @Autowired private RedisService redisService; - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - - /** - * @description: 新增极差 - * @author: zhang jing - * @date: 2022/10/28 14:23 - * @param: [rangeExt] - * @return: boolean - **/ @Override public boolean saveRange(BdRangeExt rangeExt) { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(rangeExt.getPkCountry(), ETransactionKey.RANGE, - rangeExt.getRangeName(), EYesNo.YES, EYesNo.NO); - rangeExt.setPkTransaction(pkTransaction.getData()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdRange::getPkCountry, rangeExt.getPkCountry()); queryWrapper.eq(BdRange::getRangeValue, rangeExt.getRangeValue()); @@ -80,7 +55,7 @@ public class BdRangeServiceImpl extends ServiceImpl impl rangeDetails.setPkCountry(SecurityUtils.getPkCountry()); rangeDetails.setPkCreator(SecurityUtils.getUserId()); rangeDetails.setCreationTime(new Date()); - rangeDetailsService.save(rangeDetails); + iBdRangeDetailsService.save(rangeDetails); } //奖衔 for (Integer aw : awardsList) { @@ -91,31 +66,20 @@ public class BdRangeServiceImpl extends ServiceImpl impl rangeDetails.setPkCountry(SecurityUtils.getPkCountry()); rangeDetails.setPkCreator(SecurityUtils.getUserId()); rangeDetails.setCreationTime(new Date()); - rangeDetailsService.save(rangeDetails); + iBdRangeDetailsService.save(rangeDetails); } } redisService.deleteObject(CacheConstants.BD_RANGE + rangeExt.getPkCountry()); return true; } - /** - * @description: 修改极差 - * @author: zhang jing - * @date: 2022/10/28 14:23 - * @param: [rangeExt] - * @return: boolean - **/ @Override public boolean updateRange(BdRangeExt rangeExt) { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(rangeExt.getPkCountry(), ETransactionKey.RANGE, - rangeExt.getRangeName(), EYesNo.YES, EYesNo.NO); - rangeExt.setPkTransaction(pkTransaction.getData()); baseMapper.updateById(rangeExt); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.set(BdRangeDetails::getDelFlag, EYesNo.NO.getIntValue()); updateWrapper.eq(BdRangeDetails::getPkRange, rangeExt.getPkId()); - rangeDetailsService.update(updateWrapper); + iBdRangeDetailsService.update(updateWrapper); List gradeList = rangeExt.getGradeList(); List awardsList = rangeExt.getAwardsList(); //等级 @@ -127,7 +91,7 @@ public class BdRangeServiceImpl extends ServiceImpl impl rangeDetails.setPkCountry(SecurityUtils.getPkCountry()); rangeDetails.setPkCreator(SecurityUtils.getUserId()); rangeDetails.setCreationTime(new Date()); - rangeDetailsService.save(rangeDetails); + iBdRangeDetailsService.save(rangeDetails); } //奖衔 for (Integer aw : awardsList) { @@ -138,20 +102,12 @@ public class BdRangeServiceImpl extends ServiceImpl impl rangeDetails.setPkCountry(SecurityUtils.getPkCountry()); rangeDetails.setPkCreator(SecurityUtils.getUserId()); rangeDetails.setCreationTime(new Date()); - rangeDetailsService.save(rangeDetails); + iBdRangeDetailsService.save(rangeDetails); } redisService.deleteObject(CacheConstants.BD_RANGE + rangeExt.getPkCountry()); return true; } - - /** - * @description: 根据国家查询极差配置列表 - * @author: zhang jing - * @date: 2022/11/11 18:07 - * @param: [pkCountry] - * @return: java.util.List - **/ @Override public List queryRange(Integer pkCountry) { List rangeList = redisService.getCacheList(CacheConstants.BD_RANGE + pkCountry); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SystemFieldConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SystemFieldConstants.java index 3b86b93f..cef33d53 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SystemFieldConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SystemFieldConstants.java @@ -55,11 +55,6 @@ public class SystemFieldConstants { */ public static final String MODIFIED_TIME = "MODIFIED_TIME"; - /** - * 国家 - */ - public static final String PK_COUNTRY_VALUE = "pkCountry"; - /** * 国家 */ @@ -70,46 +65,6 @@ public class SystemFieldConstants { */ public static final String PK_CORP = "pk_corp"; - /** - * 等级值 - */ - public static final String GRADE_VALUE = "grade_value"; - - /** - * 等级结算值 - */ - public static final String START_VALUE = "start_value"; - - /** - * 极差类型 - */ - public static final String RANGE_TYPE = "range_type"; - - /** - * 级别 - */ - public static final String PK_LEVEL = "pk_level"; - - /** - * 极差 - */ - public static final String PK_RANGE = "pk_range"; - - /** - * 规格sku主键 - */ - public static final String PK_WARES_SPECS_SKU = "pk_wares_specs_sku"; - - /** - * 商品明细主键 - */ - public static final String PK_WARES_DETAIL = "PK_WARES_DETAIL"; - - /** - * 商品主键 - */ - public static final String PK_WARES = "PK_WARES"; - /** * 审核状态 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresLabel.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresLabel.java index 0c9030e9..f3b84c82 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresLabel.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresLabel.java @@ -12,12 +12,7 @@ import lombok.experimental.Accessors; import java.util.List; /** - *

* 商品标签表 - *

- * - * @author hzs - * @since 2022-10-21 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRange.java index ffc8df0f..ab328ee9 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRange.java @@ -15,12 +15,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 极差配置 - *

- * - * @author zhangjing - * @since 2022-09-09 */ @Data @EqualsAndHashCode(callSuper = true) @@ -37,7 +32,7 @@ public class BdRange extends BaseEntity { /** * 极差名称 */ - @Excel(name = "极差名称",sort=1) + @Excel(name = "极差名称", sort = 1) @TableField("RANGE_NAME") private String rangeName; /** @@ -46,7 +41,7 @@ public class BdRange extends BaseEntity { @TableField("RANGE_VALUE") @Transaction(transactionKey = EnumsPrefixConstants.AWARDS) private Integer rangeValue; - @Excel(name = "极差值",sort=2) + @Excel(name = "极差值", sort = 2) @TableField(exist = false) private String rangeValueVal; From 77940b147290e9b97789e96a4bd26bef5f94eb8b Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 14:38:30 +0800 Subject: [PATCH 011/362] =?UTF-8?q?##=20=E4=BA=AC=E4=B8=9C=E6=94=B6?= =?UTF-8?q?=E9=93=B6=E5=8F=B0=E9=85=8D=E7=BD=AE=E6=8F=90=E5=8F=96nacos?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bd-third/src/main/resources/bootstrap.yml | 30 ----------------------- 1 file changed, 30 deletions(-) diff --git a/bd-third/src/main/resources/bootstrap.yml b/bd-third/src/main/resources/bootstrap.yml index c75322a8..bf0e0108 100644 --- a/bd-third/src/main/resources/bootstrap.yml +++ b/bd-third/src/main/resources/bootstrap.yml @@ -121,33 +121,3 @@ delivery: appKey: 204784177 appSecret: KrTbnrAV01j7bIQ5mpr3W0FB73KvjaG8 appCode: 7390ccb8230f4e74a1b0ba31ec6f1419 - -## 京东收银台支付配置 -jd: - bank: - ## 二级商户号 - merchantNo: 153428607011 - ## 签名密钥 - signKey: edad31b00269a3c843268f4ff4dab5f079106a328795495922c11f50faf9d0c6 - ## 证书加密密码 - priCertPwd: bf147258369 - ## 私钥文件名 - priCert: jd/merchantCert011.pfx - ## 公钥文件名 - pubCert: jd/npp_11_API2_pro.cer - ## 生产环境api接口域名 - apiDomain: http://wapi.jd.com - ## 页面回调地址 - # pageBackUrl: https://t-app.beida666.com/prod-api/pay/jd/sync-notify - pageBackUrl: http://t-app.beida777.com/#/pages/pay/success - ## 支付回调地址 - notifyUrl: https://t-app.beida777.com/pay/jd/trade-notify - # notifyUrl: https://b747-218-57-66-5.ngrok-free.app/pay/jd/trade-notify - ## 退款回调地下 - refundNotifyUrl: https://t-app.beida777.com/pay/jd-refund/trade-notify - # refundNotifyUrl: https://b747-218-57-66-5.ngrok-free.app/pay/jd-refund/trade-notify - separateAccounts: - - account: 153428607011 - proportion: 0.7 - - account: 153428607013 - proportion: 0.3 From 40ebde0c3e8f1ebd1f64ea6fe1cf8dc6c911f33c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 15:02:27 +0800 Subject: [PATCH 012/362] =?UTF-8?q?##=20=E5=A4=8D=E8=B4=AD=E7=BA=A7?= =?UTF-8?q?=E5=B7=AE=E9=BB=98=E8=AE=A4=E6=98=BE=E7=A4=BA4=E4=BD=8D?= =?UTF-8?q?=E5=B0=8F=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java | 1 + 1 file changed, 1 insertion(+) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java index c73dce04..86d193ca 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java @@ -59,6 +59,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 复购级差收益 */ + @BigDecimalFormat("#0.0000") private BigDecimal repurRangeIncome; // /** From 6872f58d0cad4339023b086b44fe070769184ec1 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 15:22:24 +0800 Subject: [PATCH 013/362] =?UTF-8?q?##=20=E5=95=86=E5=93=81=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=B7=BB=E5=8A=A0=E6=9D=83=E9=99=90=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/member/base/service/impl/CuMemberServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 7ba33038..c1b4e9cf 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -2580,6 +2580,9 @@ public class CuMemberServiceImpl extends ServiceImpl i // 指定会员可见 isShowWares = pkMemberList.contains(showWaresDTO.getLoginMember()); } + if (isShowWares) { + break; + } } resultMap.put(showWaresDTO.getPkWares(), isShowWares); } From fae5a76f4ecde52aef58ec3d4703b80d8c13074a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 10 Jul 2025 15:36:47 +0800 Subject: [PATCH 014/362] =?UTF-8?q?##=20=E7=A7=92=E7=BB=93=E6=89=A7?= =?UTF-8?q?=E8=A1=8C=E5=BB=B6=E8=BF=9F1=E7=A7=92=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/hzs/bonus/listener/SaOrderSecondListener.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java index f003e922..46b2d277 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java @@ -49,7 +49,7 @@ public class SaOrderSecondListener { } try { - Thread.sleep(500); + Thread.sleep(1000); iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); } catch (Exception e) { cuMemberRetailLog.setEnableStatus(EYesNo.NO.getIntValue()); From 396e4f59e0627e6f24bf438b09b186f23bafdc27 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 09:39:13 +0800 Subject: [PATCH 015/362] =?UTF-8?q?##=20Fix=20-=20sql=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/2025年6月25日_区域体系分组配置.sql | 1 - 1 file changed, 1 deletion(-) diff --git a/sql/2025年6月25日_区域体系分组配置.sql b/sql/2025年6月25日_区域体系分组配置.sql index 488282d6..ff64735a 100644 --- a/sql/2025年6月25日_区域体系分组配置.sql +++ b/sql/2025年6月25日_区域体系分组配置.sql @@ -1,6 +1,5 @@ CREATE TABLE "RETAIL"."BD_REGION_VERTEX" ( "PK_ID" NUMBER(6,0), - "CREATION_TIME" DATE NOT NULL, "MODIFIED_TIME" DATE, "NAME" VARCHAR2(200) NOT NULL, "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, From ecef0dddfd3154b07c9637f71b211442b2af3bb5 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 09:39:40 +0800 Subject: [PATCH 016/362] =?UTF-8?q?##=20Fix=20-=20sql=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/2025年6月25日_区域体系分组配置.sql | 1 - 1 file changed, 1 deletion(-) diff --git a/sql/2025年6月25日_区域体系分组配置.sql b/sql/2025年6月25日_区域体系分组配置.sql index ff64735a..0aca7723 100644 --- a/sql/2025年6月25日_区域体系分组配置.sql +++ b/sql/2025年6月25日_区域体系分组配置.sql @@ -1,6 +1,5 @@ CREATE TABLE "RETAIL"."BD_REGION_VERTEX" ( "PK_ID" NUMBER(6,0), - "MODIFIED_TIME" DATE, "NAME" VARCHAR2(200) NOT NULL, "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PK_COUNTRY" NUMBER(4,0) DEFAULT 1 NOT NULL ENABLE, From 24e207c89d8c18b23f7f61d9cde6923d3db3ed1c Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 10:13:46 +0800 Subject: [PATCH 017/362] =?UTF-8?q?##=20Feat=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E5=88=86=E8=B4=A6=E9=87=91?= =?UTF-8?q?=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/third/pay/TOnlinePayment.java | 12 ++++++++++++ .../pay/service/impl/JdPayServiceImpl.java | 4 ++++ .../com/hzs/third/pay/vo/OnlinePaymentVO.java | 18 ++++++++++++++++++ ...2025年7月10日_京东支付_增加主子账户金额.sql | 7 +++++++ 4 files changed, 41 insertions(+) create mode 100644 sql/2025年7月10日_京东支付_增加主子账户金额.sql diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java index 780ced63..9d323a18 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java @@ -120,6 +120,18 @@ public class TOnlinePayment extends BaseEntity { @TableField("PAY_SOURCE") private Integer paySource; + /** + * 主账户金额 + */ + @TableField("MAIN_ACCOUNT_MONEY") + private BigDecimal mainAccountMoney; + + /** + * 子账户金额 + */ + @TableField("SUB_ACCOUNT_MONEY") + private BigDecimal subAccountMoney; + /** * 支付-前端回调页面的扩展参数 */ diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index fdbc8407..9708e4d7 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -131,9 +131,13 @@ public class JdPayServiceImpl implements IJdPayService { BigDecimal subTradeAmount; if(i == separateAccounts.size() - 1){ subTradeAmount = remaining; + log.info("分账 最后一个账户( 总 - 已分账 ) : {}, {}", subTradeAmount, remaining); + onlinePayment.setSubAccountMoney(subTradeAmount); }else{ subTradeAmount = tradeAmount.subtract(tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN)); remaining = remaining.subtract(subTradeAmount).setScale(2, BigDecimal.ROUND_DOWN); + onlinePayment.setMainAccountMoney(subTradeAmount); + log.info("分账 过程 : {}, {}, {}", subTradeAmount, remaining, separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)); } JdPayDivisionAccountTradeInfo divisionAccountTradeInfo = new JdPayDivisionAccountTradeInfo(); divisionAccountTradeInfo.setMerchantNo(separateAccount.getAccount()); diff --git a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java index 1f868f11..3efb2806 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java +++ b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java @@ -1,7 +1,9 @@ package com.hzs.third.pay.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; @@ -144,4 +146,20 @@ public class OnlinePaymentVO { */ private String callbackInfo; + /** + * 主账户金额 + */ + @TableField("MAIN_ACCOUNT_MONEY") + @Excel(name = "主账户金额") + @BigDecimalFormat + private BigDecimal mainAccountMoney; + + /** + * 子账户金额 + */ + @TableField("SUB_ACCOUNT_MONEY") + @Excel(name = "子账户金额") + @BigDecimalFormat + private BigDecimal subAccountMoney; + } diff --git a/sql/2025年7月10日_京东支付_增加主子账户金额.sql b/sql/2025年7月10日_京东支付_增加主子账户金额.sql new file mode 100644 index 00000000..c93d1fbe --- /dev/null +++ b/sql/2025年7月10日_京东支付_增加主子账户金额.sql @@ -0,0 +1,7 @@ +ALTER TABLE "T_ONLINE_PAYMENT" + ADD ("MAIN_ACCOUNT_MONEY" NUMBER(16,2)) +ADD ("SUB_ACCOUNT_MONEY" NUMBER(16,2)); + +COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."MAIN_ACCOUNT_MONEY" IS '分账-主账户金额'; + +COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."SUB_ACCOUNT_MONEY" IS '分账-子账户金额' From c36f3d740c7578f1bb61a192873eecfaa9bc7666 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 10:13:46 +0800 Subject: [PATCH 018/362] =?UTF-8?q?##=20Feat=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E5=88=86=E8=B4=A6=E9=87=91?= =?UTF-8?q?=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/third/pay/TOnlinePayment.java | 12 ++++++++++++ .../pay/service/impl/JdPayServiceImpl.java | 4 ++++ .../com/hzs/third/pay/vo/OnlinePaymentVO.java | 18 ++++++++++++++++++ ...2025年7月10日_京东支付_增加主子账户金额.sql | 7 +++++++ 4 files changed, 41 insertions(+) create mode 100644 sql/2025年7月10日_京东支付_增加主子账户金额.sql diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java index 780ced63..9d323a18 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/TOnlinePayment.java @@ -120,6 +120,18 @@ public class TOnlinePayment extends BaseEntity { @TableField("PAY_SOURCE") private Integer paySource; + /** + * 主账户金额 + */ + @TableField("MAIN_ACCOUNT_MONEY") + private BigDecimal mainAccountMoney; + + /** + * 子账户金额 + */ + @TableField("SUB_ACCOUNT_MONEY") + private BigDecimal subAccountMoney; + /** * 支付-前端回调页面的扩展参数 */ diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index fdbc8407..9708e4d7 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -131,9 +131,13 @@ public class JdPayServiceImpl implements IJdPayService { BigDecimal subTradeAmount; if(i == separateAccounts.size() - 1){ subTradeAmount = remaining; + log.info("分账 最后一个账户( 总 - 已分账 ) : {}, {}", subTradeAmount, remaining); + onlinePayment.setSubAccountMoney(subTradeAmount); }else{ subTradeAmount = tradeAmount.subtract(tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN)); remaining = remaining.subtract(subTradeAmount).setScale(2, BigDecimal.ROUND_DOWN); + onlinePayment.setMainAccountMoney(subTradeAmount); + log.info("分账 过程 : {}, {}, {}", subTradeAmount, remaining, separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)); } JdPayDivisionAccountTradeInfo divisionAccountTradeInfo = new JdPayDivisionAccountTradeInfo(); divisionAccountTradeInfo.setMerchantNo(separateAccount.getAccount()); diff --git a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java index 1f868f11..3efb2806 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java +++ b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java @@ -1,7 +1,9 @@ package com.hzs.third.pay.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; @@ -144,4 +146,20 @@ public class OnlinePaymentVO { */ private String callbackInfo; + /** + * 主账户金额 + */ + @TableField("MAIN_ACCOUNT_MONEY") + @Excel(name = "主账户金额") + @BigDecimalFormat + private BigDecimal mainAccountMoney; + + /** + * 子账户金额 + */ + @TableField("SUB_ACCOUNT_MONEY") + @Excel(name = "子账户金额") + @BigDecimalFormat + private BigDecimal subAccountMoney; + } diff --git a/sql/2025年7月10日_京东支付_增加主子账户金额.sql b/sql/2025年7月10日_京东支付_增加主子账户金额.sql new file mode 100644 index 00000000..c93d1fbe --- /dev/null +++ b/sql/2025年7月10日_京东支付_增加主子账户金额.sql @@ -0,0 +1,7 @@ +ALTER TABLE "T_ONLINE_PAYMENT" + ADD ("MAIN_ACCOUNT_MONEY" NUMBER(16,2)) +ADD ("SUB_ACCOUNT_MONEY" NUMBER(16,2)); + +COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."MAIN_ACCOUNT_MONEY" IS '分账-主账户金额'; + +COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."SUB_ACCOUNT_MONEY" IS '分账-子账户金额' From 520d791db23db1d5138c9ce92dca1add3c2b7e1b Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 09:39:13 +0800 Subject: [PATCH 019/362] =?UTF-8?q?##=20Fix=20-=20sql=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/2025年6月25日_区域体系分组配置.sql | 1 - 1 file changed, 1 deletion(-) diff --git a/sql/2025年6月25日_区域体系分组配置.sql b/sql/2025年6月25日_区域体系分组配置.sql index 488282d6..ff64735a 100644 --- a/sql/2025年6月25日_区域体系分组配置.sql +++ b/sql/2025年6月25日_区域体系分组配置.sql @@ -1,6 +1,5 @@ CREATE TABLE "RETAIL"."BD_REGION_VERTEX" ( "PK_ID" NUMBER(6,0), - "CREATION_TIME" DATE NOT NULL, "MODIFIED_TIME" DATE, "NAME" VARCHAR2(200) NOT NULL, "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, From aa211e592411c69377606ebba0b1b8940108f623 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 11 Jul 2025 09:39:40 +0800 Subject: [PATCH 020/362] =?UTF-8?q?##=20Fix=20-=20sql=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sql/2025年6月25日_区域体系分组配置.sql | 1 - 1 file changed, 1 deletion(-) diff --git a/sql/2025年6月25日_区域体系分组配置.sql b/sql/2025年6月25日_区域体系分组配置.sql index ff64735a..0aca7723 100644 --- a/sql/2025年6月25日_区域体系分组配置.sql +++ b/sql/2025年6月25日_区域体系分组配置.sql @@ -1,6 +1,5 @@ CREATE TABLE "RETAIL"."BD_REGION_VERTEX" ( "PK_ID" NUMBER(6,0), - "MODIFIED_TIME" DATE, "NAME" VARCHAR2(200) NOT NULL, "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, "PK_COUNTRY" NUMBER(4,0) DEFAULT 1 NOT NULL ENABLE, From 56fcda4854bb3bb2b57810c0a45e7d2b0a377a40 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 14 Jul 2025 14:14:03 +0800 Subject: [PATCH 021/362] =?UTF-8?q?##=20Feat=20-=20=E4=BD=93=E7=B3=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E5=9B=BE&=E6=94=AF=E4=BB=98=E5=9B=9E?= =?UTF-8?q?=E8=B0=83=E5=A2=9E=E5=8A=A0=E6=94=AF=E4=BB=98=E9=80=9A=E9=81=93?= =?UTF-8?q?=E6=B5=81=E6=B0=B4=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/member/base/mapper/CuMemberMapper.java | 2 ++ .../com/hzs/member/base/service/ICuMemberService.java | 5 +++++ .../member/base/service/impl/CuMemberServiceImpl.java | 5 +++++ .../member/controller/api/RetailMemberController.java | 10 ++++++++++ .../retail/member/service/IMemberRetailService.java | 1 + .../member/service/impl/MemberRetailServiceImpl.java | 6 ++++++ .../com/hzs/retail/member/vo/RetailMemberInfoVO.java | 6 ++++++ .../resources/mapper/member/base/CuMemberMapper.xml | 10 ++++++++++ .../config/controller/manage/BdVertexController.java | 2 ++ .../java/com/hzs/system/config/param/VertexParam.java | 5 +++++ .../main/java/com/hzs/system/config/vo/VertexVo.java | 5 +++++ .../com/hzs/common/domain/member/ext/CuMemberExt.java | 6 ++++++ .../java/com/hzs/common/domain/vertex/BdVertex.java | 3 +++ .../pay/controller/notify/JdPayNotifyController.java | 3 ++- .../third/pay/jdpay/dto/JdPayTradeSuccessNotify.java | 1 + .../java/com/hzs/third/pay/service/IPayService.java | 2 +- .../com/hzs/third/pay/service/impl/PayServiceImpl.java | 5 ++++- sql/2025年7月14日_体系配置增加海报图.sql | 4 ++++ 18 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 sql/2025年7月14日_体系配置增加海报图.sql diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 6ae40f09..1c18f5e1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -626,4 +626,6 @@ public interface CuMemberMapper extends BaseMapper { */ BdTradeWhiteConfig selectMemberByUnderBlood(@Param("pkMember") Long pkMember, @Param("memberType") Integer memberType); + String getSharePosterImage(@Param("userId") Long userId); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index a1f0d14a..692fdc70 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -895,4 +895,9 @@ public interface ICuMemberService extends IService { */ BdTradeWhiteConfig selectMemberByUnderBlood(Long pkMember, Integer memberType); + /** + * 获取用户体系分享图片 + * @return + */ + String getSharePosterImage(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index c1b4e9cf..03ae4f7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3232,4 +3232,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.selectMemberByUnderBlood(pkMember, memberType); } + @Override + public String getSharePosterImage() { + return baseMapper.getSharePosterImage(SecurityUtils.getUserId()); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index c44dda3c..c04e5e67 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -6,6 +6,7 @@ import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeNodeConfig; import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; @@ -15,6 +16,7 @@ import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.ENoticeWebsiteType; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.PageUtils; +import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -75,6 +77,14 @@ public class RetailMemberController extends BaseController { } return AjaxResult.success(retailMemberInfoVO); } + @GetMapping("/get-shared-image") + public AjaxResult getSharedImage() { + JSONObject result = new JSONObject(); + String url = iCuMemberService.getSharePosterImage(); + result.set("url", url); + result.set("base64", Base64Util.toUrlBase64(url)); + return AjaxResult.success(result); + } /** * 获取会员收益区域 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java index a5ebc350..bffe1806 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java @@ -15,4 +15,5 @@ public interface IMemberRetailService { */ RetailMemberInfoVO getMemberInfo(Long pkMember); + String getSharePosterImage(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java index 5be7f781..383dbbb4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java @@ -91,9 +91,15 @@ public class MemberRetailServiceImpl implements IMemberRetailService { .pkCountry(cuMember.getPkCountry()) .pkSettleCountry(cuMember.getPkSettleCountry()) .isActivate(cuMember.getIsActivate()) + .sharePosterImage(cuMember.getSharePosterImage()) .build(); } return null; } + @Override + public String getSharePosterImage() { + return iCuMemberService.getSharePosterImage(); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java index 25fbbecd..1c6bd6e9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java @@ -141,4 +141,10 @@ public class RetailMemberInfoVO implements Serializable { */ private Integer isActivate; + + /** + * 分享海报图片 + */ + private String sharePosterImage; + } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index 8886444a..8886787e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -1887,6 +1887,7 @@ @@ -2475,5 +2477,13 @@ and t0.category = 0) where rownum = 1 + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java index 57cb02e9..89ff9ffc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java @@ -100,6 +100,7 @@ public class BdVertexController extends BaseController { bdVertex.setPkMember(mb.getPkId()); bdVertex.setSystemType(systemType); bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId()); + bdVertex.setSharePosterImage(vertexParam.getSharePosterImage()); iBdVertexService.save(bdVertex); return AjaxResult.success(); } @@ -139,6 +140,7 @@ public class BdVertexController extends BaseController { bdVertex.setModifiedTime(new Date()); bdVertex.setPkModified(SecurityUtils.getUserId()); bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId()); + bdVertex.setSharePosterImage(vertexParam.getSharePosterImage()); if (null == bdVertex.getPkParent()) { bdVertex.setPkParent(0); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java index 13ee2969..7320b41e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java @@ -59,4 +59,9 @@ public class VertexParam { private Integer sort; private Long regionVertexPkId; + + /** + * 分享海报图片 + */ + private String sharePosterImage; } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java index 268beaa9..be88a70c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java @@ -52,4 +52,9 @@ public class VertexVo extends BaseEntity { @TableField("REGION_VERTEX_PK_ID") private Long regionVertexPkId; + + /** + * 分享海报图片 + */ + private String sharePosterImage; } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java index cbb02146..884aa6d2 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java @@ -211,4 +211,10 @@ public class CuMemberExt extends CuMember { */ private String lastMemberCode; + + /** + * 分享海报图片 + */ + private String sharePosterImage; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java index 3e9b5e5e..46fd5dca 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java @@ -57,4 +57,7 @@ public class BdVertex extends BaseEntity { @TableField("REGION_VERTEX_PK_ID") private Long regionVertexPkId; + + @TableField("SHARE_POSTER_IMAGE") + private String sharePosterImage; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java index 400cbbed..3489878b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java @@ -131,13 +131,14 @@ public class JdPayNotifyController extends JdBaseController { String thirdOrderCode = successNotify.getOutTradeNo(); // 订单编号 String orderCode = thirdOrderCode; + String acqOrderId = successNotify.getAcqOrderId(); // 订单金额 int tradeAmount = Integer.parseInt(successNotify.getTradeAmount()); BigDecimal payMoney = new BigDecimal(tradeAmount).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP); Integer payType = convertPayType(successNotify.getPayTool()); // 支付后续业务处理 - if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType)) { + if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) { return SUCCESS; } } else { diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java index a42ba4fb..c22e3ee2 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java @@ -95,4 +95,5 @@ public class JdPayTradeSuccessNotify implements Serializable { */ private String installmentNum; + private String acqOrderId; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java b/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java index 7ee5101a..00ebce12 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java @@ -29,7 +29,7 @@ public interface IPayService { EPayChannel ePayChannel, String channelNumber); boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, Date payTime, BigDecimal payMoney, - EPayChannel ePayChannel, String channelNumber, Integer payType); + EPayChannel ePayChannel, String channelNumber, Integer payType, String acqOrderId); /** diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 13456a99..52524fdd 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -107,7 +107,9 @@ public class PayServiceImpl implements IPayService { } @Override - public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber, Integer payType) { + public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, + Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber, + Integer payType, String acqOrderId) { // 校验支付信息状态、业务与支付金额是否一致等 TOnlinePayment onlinePayment = itOnlinePaymentService.queryByBusiness( ObjectUtil.isNotEmpty(businessType) ? Integer.valueOf(businessType) : null @@ -132,6 +134,7 @@ public class PayServiceImpl implements IPayService { onlinePayment.setPkModified(MagicNumberConstants.PK_ADMIN); onlinePayment.setModifiedTime(new Date()); onlinePayment.setPayType(payType); + onlinePayment.setChannelNumber(acqOrderId); if (null != ePayChannel) { onlinePayment.setPayChannel(ePayChannel.getValue()); } diff --git a/sql/2025年7月14日_体系配置增加海报图.sql b/sql/2025年7月14日_体系配置增加海报图.sql new file mode 100644 index 00000000..3903365f --- /dev/null +++ b/sql/2025年7月14日_体系配置增加海报图.sql @@ -0,0 +1,4 @@ +ALTER TABLE "BD_VERTEX" + ADD ("SHARE_POSTER_IMAGE" VARCHAR(200)); + +COMMENT ON COLUMN "BD_VERTEX"."SHARE_POSTER_IMAGE" IS '分享海报图' From f476b3a09a417c0e3c4d8d171c5ec1757b09c823 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 14 Jul 2025 14:14:03 +0800 Subject: [PATCH 022/362] =?UTF-8?q?##=20Feat=20-=20=E4=BD=93=E7=B3=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E5=9B=BE&=E6=94=AF=E4=BB=98=E5=9B=9E?= =?UTF-8?q?=E8=B0=83=E5=A2=9E=E5=8A=A0=E6=94=AF=E4=BB=98=E9=80=9A=E9=81=93?= =?UTF-8?q?=E6=B5=81=E6=B0=B4=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/member/base/mapper/CuMemberMapper.java | 2 ++ .../com/hzs/member/base/service/ICuMemberService.java | 5 +++++ .../member/base/service/impl/CuMemberServiceImpl.java | 5 +++++ .../member/controller/api/RetailMemberController.java | 10 ++++++++++ .../retail/member/service/IMemberRetailService.java | 1 + .../member/service/impl/MemberRetailServiceImpl.java | 6 ++++++ .../com/hzs/retail/member/vo/RetailMemberInfoVO.java | 6 ++++++ .../resources/mapper/member/base/CuMemberMapper.xml | 10 ++++++++++ .../config/controller/manage/BdVertexController.java | 2 ++ .../java/com/hzs/system/config/param/VertexParam.java | 5 +++++ .../main/java/com/hzs/system/config/vo/VertexVo.java | 5 +++++ .../com/hzs/common/domain/member/ext/CuMemberExt.java | 6 ++++++ .../java/com/hzs/common/domain/vertex/BdVertex.java | 3 +++ .../pay/controller/notify/JdPayNotifyController.java | 3 ++- .../third/pay/jdpay/dto/JdPayTradeSuccessNotify.java | 1 + .../java/com/hzs/third/pay/service/IPayService.java | 2 +- .../com/hzs/third/pay/service/impl/PayServiceImpl.java | 5 ++++- sql/2025年7月14日_体系配置增加海报图.sql | 4 ++++ 18 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 sql/2025年7月14日_体系配置增加海报图.sql diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 6ae40f09..1c18f5e1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -626,4 +626,6 @@ public interface CuMemberMapper extends BaseMapper { */ BdTradeWhiteConfig selectMemberByUnderBlood(@Param("pkMember") Long pkMember, @Param("memberType") Integer memberType); + String getSharePosterImage(@Param("userId") Long userId); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index a1f0d14a..692fdc70 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -895,4 +895,9 @@ public interface ICuMemberService extends IService { */ BdTradeWhiteConfig selectMemberByUnderBlood(Long pkMember, Integer memberType); + /** + * 获取用户体系分享图片 + * @return + */ + String getSharePosterImage(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index c1b4e9cf..03ae4f7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3232,4 +3232,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.selectMemberByUnderBlood(pkMember, memberType); } + @Override + public String getSharePosterImage() { + return baseMapper.getSharePosterImage(SecurityUtils.getUserId()); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index c44dda3c..c04e5e67 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -6,6 +6,7 @@ import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeNodeConfig; import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; @@ -15,6 +16,7 @@ import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.ENoticeWebsiteType; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.PageUtils; +import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -75,6 +77,14 @@ public class RetailMemberController extends BaseController { } return AjaxResult.success(retailMemberInfoVO); } + @GetMapping("/get-shared-image") + public AjaxResult getSharedImage() { + JSONObject result = new JSONObject(); + String url = iCuMemberService.getSharePosterImage(); + result.set("url", url); + result.set("base64", Base64Util.toUrlBase64(url)); + return AjaxResult.success(result); + } /** * 获取会员收益区域 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java index a5ebc350..bffe1806 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/IMemberRetailService.java @@ -15,4 +15,5 @@ public interface IMemberRetailService { */ RetailMemberInfoVO getMemberInfo(Long pkMember); + String getSharePosterImage(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java index 5be7f781..383dbbb4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java @@ -91,9 +91,15 @@ public class MemberRetailServiceImpl implements IMemberRetailService { .pkCountry(cuMember.getPkCountry()) .pkSettleCountry(cuMember.getPkSettleCountry()) .isActivate(cuMember.getIsActivate()) + .sharePosterImage(cuMember.getSharePosterImage()) .build(); } return null; } + @Override + public String getSharePosterImage() { + return iCuMemberService.getSharePosterImage(); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java index 25fbbecd..1c6bd6e9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RetailMemberInfoVO.java @@ -141,4 +141,10 @@ public class RetailMemberInfoVO implements Serializable { */ private Integer isActivate; + + /** + * 分享海报图片 + */ + private String sharePosterImage; + } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index 8886444a..8886787e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -1887,6 +1887,7 @@ @@ -2475,5 +2477,13 @@ and t0.category = 0) where rownum = 1 + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java index 57cb02e9..89ff9ffc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdVertexController.java @@ -100,6 +100,7 @@ public class BdVertexController extends BaseController { bdVertex.setPkMember(mb.getPkId()); bdVertex.setSystemType(systemType); bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId()); + bdVertex.setSharePosterImage(vertexParam.getSharePosterImage()); iBdVertexService.save(bdVertex); return AjaxResult.success(); } @@ -139,6 +140,7 @@ public class BdVertexController extends BaseController { bdVertex.setModifiedTime(new Date()); bdVertex.setPkModified(SecurityUtils.getUserId()); bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId()); + bdVertex.setSharePosterImage(vertexParam.getSharePosterImage()); if (null == bdVertex.getPkParent()) { bdVertex.setPkParent(0); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java index 13ee2969..7320b41e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/VertexParam.java @@ -59,4 +59,9 @@ public class VertexParam { private Integer sort; private Long regionVertexPkId; + + /** + * 分享海报图片 + */ + private String sharePosterImage; } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java index 268beaa9..be88a70c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/VertexVo.java @@ -52,4 +52,9 @@ public class VertexVo extends BaseEntity { @TableField("REGION_VERTEX_PK_ID") private Long regionVertexPkId; + + /** + * 分享海报图片 + */ + private String sharePosterImage; } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java index cbb02146..884aa6d2 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java @@ -211,4 +211,10 @@ public class CuMemberExt extends CuMember { */ private String lastMemberCode; + + /** + * 分享海报图片 + */ + private String sharePosterImage; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java index 3e9b5e5e..46fd5dca 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/vertex/BdVertex.java @@ -57,4 +57,7 @@ public class BdVertex extends BaseEntity { @TableField("REGION_VERTEX_PK_ID") private Long regionVertexPkId; + + @TableField("SHARE_POSTER_IMAGE") + private String sharePosterImage; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java index 400cbbed..3489878b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/notify/JdPayNotifyController.java @@ -131,13 +131,14 @@ public class JdPayNotifyController extends JdBaseController { String thirdOrderCode = successNotify.getOutTradeNo(); // 订单编号 String orderCode = thirdOrderCode; + String acqOrderId = successNotify.getAcqOrderId(); // 订单金额 int tradeAmount = Integer.parseInt(successNotify.getTradeAmount()); BigDecimal payMoney = new BigDecimal(tradeAmount).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP); Integer payType = convertPayType(successNotify.getPayTool()); // 支付后续业务处理 - if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType)) { + if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) { return SUCCESS; } } else { diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java index a42ba4fb..c22e3ee2 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayTradeSuccessNotify.java @@ -95,4 +95,5 @@ public class JdPayTradeSuccessNotify implements Serializable { */ private String installmentNum; + private String acqOrderId; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java b/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java index 7ee5101a..00ebce12 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/IPayService.java @@ -29,7 +29,7 @@ public interface IPayService { EPayChannel ePayChannel, String channelNumber); boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, Date payTime, BigDecimal payMoney, - EPayChannel ePayChannel, String channelNumber, Integer payType); + EPayChannel ePayChannel, String channelNumber, Integer payType, String acqOrderId); /** diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 13456a99..52524fdd 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -107,7 +107,9 @@ public class PayServiceImpl implements IPayService { } @Override - public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber, Integer payType) { + public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, + Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber, + Integer payType, String acqOrderId) { // 校验支付信息状态、业务与支付金额是否一致等 TOnlinePayment onlinePayment = itOnlinePaymentService.queryByBusiness( ObjectUtil.isNotEmpty(businessType) ? Integer.valueOf(businessType) : null @@ -132,6 +134,7 @@ public class PayServiceImpl implements IPayService { onlinePayment.setPkModified(MagicNumberConstants.PK_ADMIN); onlinePayment.setModifiedTime(new Date()); onlinePayment.setPayType(payType); + onlinePayment.setChannelNumber(acqOrderId); if (null != ePayChannel) { onlinePayment.setPayChannel(ePayChannel.getValue()); } diff --git a/sql/2025年7月14日_体系配置增加海报图.sql b/sql/2025年7月14日_体系配置增加海报图.sql new file mode 100644 index 00000000..3903365f --- /dev/null +++ b/sql/2025年7月14日_体系配置增加海报图.sql @@ -0,0 +1,4 @@ +ALTER TABLE "BD_VERTEX" + ADD ("SHARE_POSTER_IMAGE" VARCHAR(200)); + +COMMENT ON COLUMN "BD_VERTEX"."SHARE_POSTER_IMAGE" IS '分享海报图' From 52763ed97d59ad24b252936017db77e4fd323127 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 14 Jul 2025 17:15:31 +0800 Subject: [PATCH 023/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E4=BD=93?= =?UTF-8?q?=E7=B3=BBV4=E3=80=81V5=E5=8D=87=E7=BA=A7=E7=9B=92=E6=95=B0?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E5=A4=84=E7=90=86=EF=BC=9B=20V4:=E6=80=BB500?= =?UTF-8?q?=EF=BC=8C=E5=B0=8F100=EF=BC=9B=20V5=EF=BC=9A=E6=80=BB2000?= =?UTF-8?q?=EF=BC=8C=E5=B0=8F400=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 53 +++++++++++++++++-- 1 file changed, 49 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index e89fe4d3..397937c8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -65,6 +65,17 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @DubboReference ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; + /** + * 特殊体系PK_ID: 150 + * V4:总 500,小 100 + * V5:总 2000,小 400 + */ + public static final Long VERTEX_PK_ID = 150L; + public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); + public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); + public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); + public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); + /** * 秒结: * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) @@ -723,10 +734,27 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 遍历团队等级map(V4,V5) for (Integer gradeValue : retailTeamGradeMap.keySet()) { BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); + // 等级总盒数 + BigDecimal boxTotal = bdGrade.getBoxTotal(); + // 等级小市场盒数 + BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); + + if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + // TODO 需要根据配置写死的体系,进行单独处理 + // V4: 总 500,小 100 + // V5: 总 2000,小 400 + if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V4_TOTAL_BOX; + boxSmallTotal = VERTEX_V4_SMALL_BOX; + } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V5_TOTAL_BOX; + boxSmallTotal = VERTEX_V5_SMALL_BOX; + } + } // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级 if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue() - && bdGrade.getBoxTotal().compareTo( + && boxTotal.compareTo( targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()) ) <= 0 ) { @@ -766,7 +794,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) { + if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); cuMemberGradeList.add(cuMemberGrade); @@ -955,8 +983,25 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 遍历团队等级map(V4,V5) for (Integer gradeValue : retailTeamGradeMap.keySet()) { BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); + // 等级总盒数 + BigDecimal boxTotal = bdGrade.getBoxTotal(); + // 等级小市场盒数 + BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (bdGrade.getBoxTotal().compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) { + if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + // TODO 需要根据配置写死的体系,进行单独处理 + // V4: 总 500,小 100 + // V5: 总 2000,小 400 + if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V4_TOTAL_BOX; + boxSmallTotal = VERTEX_V4_SMALL_BOX; + } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V5_TOTAL_BOX; + boxSmallTotal = VERTEX_V5_SMALL_BOX; + } + } + + if (boxTotal.compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) { // 验证小区,计算小区累计盒数 查询伞下会员 List cuMemberRangeExtList; if (secondRangeTableName != null) { @@ -993,7 +1038,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) { + if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); From 4eec5d0fd616a1de0ab55e61c400aa6f7883ff8d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 15 Jul 2025 09:09:44 +0800 Subject: [PATCH 024/362] =?UTF-8?q?##=20=E7=9B=B4=E6=8E=A8=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E6=94=B9=E4=B8=BA=E5=95=86=E5=93=81=E4=BB=B7=E6=A0=BC?= =?UTF-8?q?10%=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 24 +++++++++---------- .../common/core/constant/RetailConstants.java | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 397937c8..415319fa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1169,7 +1169,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // // 直推级差收益 // BigDecimal calBonusIncome = BigDecimal.ZERO; - // 商品最终价格 + // 商品最终价格(总价,带数量的价格) BigDecimal waresPrice = saOrderItems.getWaresPrice(); // 商品数量 BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); @@ -1213,20 +1213,20 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (beforeGradeValue == 0) { // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益 if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // VIP,拿1份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig); + // VIP,拿 1 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice); } else if (EGrade.YOU_KE.getValue() == calGradeValue) { - // SVIP,拿2份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("2")); + // SVIP,拿 2 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2")); } else if (EGrade.MAKER.getValue() == calGradeValue) { - // 卓越,拿3份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("3")); + // 卓越,拿 3 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3")); } else if (EGrade.VIP.getValue() == calGradeValue) { - // 首席,拿4份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("4")); + // 首席,拿 4 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4")); } else if (EGrade.S_VIP.getValue() == calGradeValue) { - // 合伙人,拿5份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("5")); + // 合伙人,拿 5 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5")); } // 赋值前一个会员等级 beforeGradeValue = calGradeValue; @@ -1255,7 +1255,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10; // 新等级的直推级差收益 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal(tmpGradeVal)); + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal)); // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益 rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 6882a5e5..bc755a59 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -10,9 +10,9 @@ import java.util.List; public class RetailConstants { /** - * 直推级差等级收益(每个等级为40元) + * 直推级差等级收益(每个等级差为百分之十) */ - public static final BigDecimal RANGE_BONUS = new BigDecimal("40"); + public static final BigDecimal RANGE_BONUS = new BigDecimal("0.1"); /** * 直推平级收益比例(每代拿商品价格的千分之五) */ From 840f2b754f901d7e2a6d8bcbd77275bed5060eb5 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 14 Jul 2025 17:15:31 +0800 Subject: [PATCH 025/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E4=BD=93?= =?UTF-8?q?=E7=B3=BBV4=E3=80=81V5=E5=8D=87=E7=BA=A7=E7=9B=92=E6=95=B0?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E5=A4=84=E7=90=86=EF=BC=9B=20V4:=E6=80=BB500?= =?UTF-8?q?=EF=BC=8C=E5=B0=8F100=EF=BC=9B=20V5=EF=BC=9A=E6=80=BB2000?= =?UTF-8?q?=EF=BC=8C=E5=B0=8F400=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 53 +++++++++++++++++-- 1 file changed, 49 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index e89fe4d3..397937c8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -65,6 +65,17 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @DubboReference ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; + /** + * 特殊体系PK_ID: 150 + * V4:总 500,小 100 + * V5:总 2000,小 400 + */ + public static final Long VERTEX_PK_ID = 150L; + public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); + public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); + public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); + public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); + /** * 秒结: * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) @@ -723,10 +734,27 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 遍历团队等级map(V4,V5) for (Integer gradeValue : retailTeamGradeMap.keySet()) { BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); + // 等级总盒数 + BigDecimal boxTotal = bdGrade.getBoxTotal(); + // 等级小市场盒数 + BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); + + if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + // TODO 需要根据配置写死的体系,进行单独处理 + // V4: 总 500,小 100 + // V5: 总 2000,小 400 + if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V4_TOTAL_BOX; + boxSmallTotal = VERTEX_V4_SMALL_BOX; + } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V5_TOTAL_BOX; + boxSmallTotal = VERTEX_V5_SMALL_BOX; + } + } // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级 if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue() - && bdGrade.getBoxTotal().compareTo( + && boxTotal.compareTo( targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()) ) <= 0 ) { @@ -766,7 +794,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) { + if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); cuMemberGradeList.add(cuMemberGrade); @@ -955,8 +983,25 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 遍历团队等级map(V4,V5) for (Integer gradeValue : retailTeamGradeMap.keySet()) { BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); + // 等级总盒数 + BigDecimal boxTotal = bdGrade.getBoxTotal(); + // 等级小市场盒数 + BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (bdGrade.getBoxTotal().compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) { + if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + // TODO 需要根据配置写死的体系,进行单独处理 + // V4: 总 500,小 100 + // V5: 总 2000,小 400 + if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V4_TOTAL_BOX; + boxSmallTotal = VERTEX_V4_SMALL_BOX; + } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { + boxTotal = VERTEX_V5_TOTAL_BOX; + boxSmallTotal = VERTEX_V5_SMALL_BOX; + } + } + + if (boxTotal.compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) { // 验证小区,计算小区累计盒数 查询伞下会员 List cuMemberRangeExtList; if (secondRangeTableName != null) { @@ -993,7 +1038,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) { + if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { // 小区盒数 大于等于 升级小区盒数 CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); From 4bd21b995030a7dbbe92518b9b19141d9c017fc8 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 15 Jul 2025 09:09:44 +0800 Subject: [PATCH 026/362] =?UTF-8?q?##=20=E7=9B=B4=E6=8E=A8=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E6=94=B9=E4=B8=BA=E5=95=86=E5=93=81=E4=BB=B7=E6=A0=BC?= =?UTF-8?q?10%=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 24 +++++++++---------- .../common/core/constant/RetailConstants.java | 4 ++-- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 397937c8..415319fa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1169,7 +1169,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // // 直推级差收益 // BigDecimal calBonusIncome = BigDecimal.ZERO; - // 商品最终价格 + // 商品最终价格(总价,带数量的价格) BigDecimal waresPrice = saOrderItems.getWaresPrice(); // 商品数量 BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); @@ -1213,20 +1213,20 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (beforeGradeValue == 0) { // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益 if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // VIP,拿1份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig); + // VIP,拿 1 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice); } else if (EGrade.YOU_KE.getValue() == calGradeValue) { - // SVIP,拿2份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("2")); + // SVIP,拿 2 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2")); } else if (EGrade.MAKER.getValue() == calGradeValue) { - // 卓越,拿3份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("3")); + // 卓越,拿 3 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3")); } else if (EGrade.VIP.getValue() == calGradeValue) { - // 首席,拿4份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("4")); + // 首席,拿 4 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4")); } else if (EGrade.S_VIP.getValue() == calGradeValue) { - // 合伙人,拿5份40 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("5")); + // 合伙人,拿 5 份 10% + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5")); } // 赋值前一个会员等级 beforeGradeValue = calGradeValue; @@ -1255,7 +1255,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10; // 新等级的直推级差收益 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal(tmpGradeVal)); + rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal)); // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益 rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 6882a5e5..bc755a59 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -10,9 +10,9 @@ import java.util.List; public class RetailConstants { /** - * 直推级差等级收益(每个等级为40元) + * 直推级差等级收益(每个等级差为百分之十) */ - public static final BigDecimal RANGE_BONUS = new BigDecimal("40"); + public static final BigDecimal RANGE_BONUS = new BigDecimal("0.1"); /** * 直推平级收益比例(每代拿商品价格的千分之五) */ From 478c237f6d365a65b8df8f700235f431e3f1be1e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 15 Jul 2025 13:30:29 +0800 Subject: [PATCH 027/362] =?UTF-8?q?##=20=E6=92=A4=E5=8D=95=E9=87=8D?= =?UTF-8?q?=E6=B6=88=E8=AE=A2=E5=8D=95=E6=8E=A8=E9=80=81=E7=A7=92=E7=BB=93?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index fadb6922..2930ae75 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2461,7 +2461,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl try { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 From 3a772ee9d8c0189529f4b5bbafe6f4f5074620d3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 15 Jul 2025 13:30:29 +0800 Subject: [PATCH 028/362] =?UTF-8?q?##=20=E6=92=A4=E5=8D=95=E9=87=8D?= =?UTF-8?q?=E6=B6=88=E8=AE=A2=E5=8D=95=E6=8E=A8=E9=80=81=E7=A7=92=E7=BB=93?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index fadb6922..2930ae75 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2461,7 +2461,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl try { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 From d47a5f6b376a56e4394f8ea9c5e8190ea41d4fad Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 15 Jul 2025 15:05:50 +0800 Subject: [PATCH 029/362] =?UTF-8?q?##=20Feat=20-=20=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=98=8E=E7=BB=86=E5=A2=9E=E5=8A=A0=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/third/pay/ext/TOnlinePaymentExt.java | 6 ++++++ .../com/hzs/third/pay/param/OnlinePaymentParam.java | 6 ++++++ .../pay/service/impl/TOnlinePaymentServiceImpl.java | 11 ++++++++++- .../java/com/hzs/third/pay/vo/OnlinePaymentVO.java | 5 +++++ .../mapper/third/pay/TOnlinePaymentMapper.xml | 10 +++++++++- 5 files changed, 36 insertions(+), 2 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java index 1a1a5523..d735cc0f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java @@ -1,5 +1,7 @@ package com.hzs.common.domain.third.pay.ext; +import com.hzs.common.core.annotation.Transaction; +import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.domain.third.pay.TOnlinePayment; import lombok.Data; import lombok.EqualsAndHashCode; @@ -32,4 +34,8 @@ public class TOnlinePaymentExt extends TOnlinePayment { */ private String phone; + + private Integer orderType; + private String orderTypeVal; + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java b/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java index 3cc8d64d..14bfcde1 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java +++ b/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java @@ -75,4 +75,10 @@ public class OnlinePaymentParam { private Integer systemType; + /** + * 订单类型 EOrderType + * -1为充值 + */ + private Integer orderType; + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java index 0b4f9898..db5c6cbc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.domain.third.pay.ext.TOnlinePaymentExt; import com.hzs.third.pay.mapper.TOnlinePaymentMapper; @@ -54,7 +55,15 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl queryList(OnlinePaymentParam param, Integer pkCountry) { - return baseMapper.queryList(param, pkCountry); + List result = baseMapper.queryList(param, pkCountry); + for (TOnlinePaymentExt tOnlinePaymentExt : result) { + if(ObjectUtil.isNotEmpty(tOnlinePaymentExt.getOrderType())){ + tOnlinePaymentExt.setOrderTypeVal(EOrderType.getLabelByValue(tOnlinePaymentExt.getOrderType())); + }else{ + tOnlinePaymentExt.setOrderTypeVal("充值订单"); + } + } + return result; } } diff --git a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java index 3efb2806..dcb37984 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java +++ b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java @@ -162,4 +162,9 @@ public class OnlinePaymentVO { @BigDecimalFormat private BigDecimal subAccountMoney; + + private Integer orderType; + + @Excel(name = "订单类型") + private String orderTypeVal; } diff --git a/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml b/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml index cf8783d4..58121ba7 100644 --- a/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml +++ b/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml @@ -30,10 +30,12 @@ From de0c01164e8ae762e2df4ed5fa000460fd070958 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 15 Jul 2025 15:05:50 +0800 Subject: [PATCH 030/362] =?UTF-8?q?##=20Feat=20-=20=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=98=8E=E7=BB=86=E5=A2=9E=E5=8A=A0=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/third/pay/ext/TOnlinePaymentExt.java | 6 ++++++ .../com/hzs/third/pay/param/OnlinePaymentParam.java | 6 ++++++ .../pay/service/impl/TOnlinePaymentServiceImpl.java | 11 ++++++++++- .../java/com/hzs/third/pay/vo/OnlinePaymentVO.java | 5 +++++ .../mapper/third/pay/TOnlinePaymentMapper.xml | 10 +++++++++- 5 files changed, 36 insertions(+), 2 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java index 1a1a5523..d735cc0f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/third/pay/ext/TOnlinePaymentExt.java @@ -1,5 +1,7 @@ package com.hzs.common.domain.third.pay.ext; +import com.hzs.common.core.annotation.Transaction; +import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.domain.third.pay.TOnlinePayment; import lombok.Data; import lombok.EqualsAndHashCode; @@ -32,4 +34,8 @@ public class TOnlinePaymentExt extends TOnlinePayment { */ private String phone; + + private Integer orderType; + private String orderTypeVal; + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java b/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java index 3cc8d64d..14bfcde1 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java +++ b/bd-third/src/main/java/com/hzs/third/pay/param/OnlinePaymentParam.java @@ -75,4 +75,10 @@ public class OnlinePaymentParam { private Integer systemType; + /** + * 订单类型 EOrderType + * -1为充值 + */ + private Integer orderType; + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java index 0b4f9898..db5c6cbc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.domain.third.pay.ext.TOnlinePaymentExt; import com.hzs.third.pay.mapper.TOnlinePaymentMapper; @@ -54,7 +55,15 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl queryList(OnlinePaymentParam param, Integer pkCountry) { - return baseMapper.queryList(param, pkCountry); + List result = baseMapper.queryList(param, pkCountry); + for (TOnlinePaymentExt tOnlinePaymentExt : result) { + if(ObjectUtil.isNotEmpty(tOnlinePaymentExt.getOrderType())){ + tOnlinePaymentExt.setOrderTypeVal(EOrderType.getLabelByValue(tOnlinePaymentExt.getOrderType())); + }else{ + tOnlinePaymentExt.setOrderTypeVal("充值订单"); + } + } + return result; } } diff --git a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java index 3efb2806..dcb37984 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java +++ b/bd-third/src/main/java/com/hzs/third/pay/vo/OnlinePaymentVO.java @@ -162,4 +162,9 @@ public class OnlinePaymentVO { @BigDecimalFormat private BigDecimal subAccountMoney; + + private Integer orderType; + + @Excel(name = "订单类型") + private String orderTypeVal; } diff --git a/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml b/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml index cf8783d4..58121ba7 100644 --- a/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml +++ b/bd-third/src/main/resources/mapper/third/pay/TOnlinePaymentMapper.xml @@ -30,10 +30,12 @@ From f22246a05cf78457dd0e773cbfb9b7969f70c9eb Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 15 Jul 2025 15:10:39 +0800 Subject: [PATCH 031/362] =?UTF-8?q?##=20Feat=20-=20=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=98=8E=E7=BB=86=E5=A2=9E=E5=8A=A0=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/common/core/enums/EOrderType.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index abd052d0..61cdcf79 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -142,6 +142,17 @@ public enum EOrderType { resultList.add(EOrderType.REPURCHASE_ORDER); return resultList; } + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EOrderType enums : EOrderType.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } } From 5e6b4933bd009e988d4fc521050737190cc1528a Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 15 Jul 2025 15:10:39 +0800 Subject: [PATCH 032/362] =?UTF-8?q?##=20Feat=20-=20=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=98=8E=E7=BB=86=E5=A2=9E=E5=8A=A0=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/common/core/enums/EOrderType.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index abd052d0..61cdcf79 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -142,6 +142,17 @@ public enum EOrderType { resultList.add(EOrderType.REPURCHASE_ORDER); return resultList; } + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EOrderType enums : EOrderType.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } } From 89100397d785519f6e53233417351275f4aaaef4 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 18 Jul 2025 10:15:34 +0800 Subject: [PATCH 033/362] =?UTF-8?q?##=20Opt=20-=20=E7=9B=92=E6=95=B0&?= =?UTF-8?q?=E5=B8=82=E5=9C=BA=E5=8A=A8=E6=80=81,=20=E5=87=8C=E6=99=A83?= =?UTF-8?q?=E5=A4=A9=E5=89=8D=E5=8F=96-1=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CuMemberRetailAchieveServiceImpl.java | 39 +++++++++++++++++-- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index 8b707c7c..c9d25241 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -33,6 +33,8 @@ import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; @@ -334,6 +336,37 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); pkMemberList.add(userId); @@ -610,7 +643,7 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl Date: Fri, 18 Jul 2025 10:15:34 +0800 Subject: [PATCH 034/362] =?UTF-8?q?##=20Opt=20-=20=E7=9B=92=E6=95=B0&?= =?UTF-8?q?=E5=B8=82=E5=9C=BA=E5=8A=A8=E6=80=81,=20=E5=87=8C=E6=99=A83?= =?UTF-8?q?=E5=A4=A9=E5=89=8D=E5=8F=96-1=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CuMemberRetailAchieveServiceImpl.java | 39 +++++++++++++++++-- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index 8b707c7c..c9d25241 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -33,6 +33,8 @@ import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; @@ -334,6 +336,37 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); pkMemberList.add(userId); @@ -610,7 +643,7 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl Date: Fri, 18 Jul 2025 11:28:13 +0800 Subject: [PATCH 035/362] =?UTF-8?q?##=20Fix=20-=20=E5=88=86=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index 9708e4d7..a2c6b4ac 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -134,7 +134,7 @@ public class JdPayServiceImpl implements IJdPayService { log.info("分账 最后一个账户( 总 - 已分账 ) : {}, {}", subTradeAmount, remaining); onlinePayment.setSubAccountMoney(subTradeAmount); }else{ - subTradeAmount = tradeAmount.subtract(tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN)); + subTradeAmount = tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN); remaining = remaining.subtract(subTradeAmount).setScale(2, BigDecimal.ROUND_DOWN); onlinePayment.setMainAccountMoney(subTradeAmount); log.info("分账 过程 : {}, {}, {}", subTradeAmount, remaining, separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)); From 6a93a472f1665ce660f0df4c4fece94fb20e7b23 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 18 Jul 2025 11:28:13 +0800 Subject: [PATCH 036/362] =?UTF-8?q?##=20Fix=20-=20=E5=88=86=E8=B4=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index 9708e4d7..a2c6b4ac 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -134,7 +134,7 @@ public class JdPayServiceImpl implements IJdPayService { log.info("分账 最后一个账户( 总 - 已分账 ) : {}, {}", subTradeAmount, remaining); onlinePayment.setSubAccountMoney(subTradeAmount); }else{ - subTradeAmount = tradeAmount.subtract(tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN)); + subTradeAmount = tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN); remaining = remaining.subtract(subTradeAmount).setScale(2, BigDecimal.ROUND_DOWN); onlinePayment.setMainAccountMoney(subTradeAmount); log.info("分账 过程 : {}, {}, {}", subTradeAmount, remaining, separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)); From 7ecd2fd3adfbe8866fef83584eef9193e66fe9a6 Mon Sep 17 00:00:00 2001 From: woody Date: Fri, 18 Jul 2025 14:14:13 +0800 Subject: [PATCH 037/362] =?UTF-8?q?feat(MemberBonusFirstPurchaseVo):=20?= =?UTF-8?q?=E5=A5=96=E9=87=91=E6=98=8E=E7=BB=86=E4=BF=9D=E7=95=99=E4=B8=A4?= =?UTF-8?q?=E4=BD=8D=E5=B0=8F=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/vo/MemberBonusFirstPurchaseVO.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java index 86d193ca..0e7cfaa5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java @@ -38,7 +38,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 商城重消 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal backPoints; // // /** @@ -59,7 +59,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 复购级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal repurRangeIncome; // /** @@ -76,55 +76,55 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 新零售直推收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailRangeIncome; /** * 新零售平级收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailSameLevelIncome; /** * 新零售区域分红 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailAreaIncome; /** * 福利级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailBenefitRangeIncome; /** * 复购级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailMonthRepurchaseIncome; /** * 培育津贴 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal coachIncome; /** * 福利分红收益总计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailBenefitIncomeTotal; /** * 新零售收益小计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailRealSubtotal; /** * 实发收益总计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal realIncomeTotal; } From 844d5a6a0f5e04cdfc580dda7a12f99be97a0ccf Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:19:57 +0800 Subject: [PATCH 038/362] =?UTF-8?q?##=20=E5=A5=96=E9=87=91=E6=8B=A8?= =?UTF-8?q?=E6=AF=94=E7=BB=9F=E8=AE=A1=E6=8A=A5=E9=94=99=EF=BC=88299?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CuBonusVertexStatisTotalController.java | 28 ++++++------------- .../member/statis/CuBonusStatisMapper.xml | 7 ++--- .../statis/CuBonusVertexStatisMapper.xml | 16 +++++------ 3 files changed, 18 insertions(+), 33 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java index 82bb9390..bd9962d6 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java @@ -101,20 +101,9 @@ public class CuBonusVertexStatisTotalController extends BaseController { startPage(); //查询顶点奖金拨比汇总 slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); - //查询顶点奖金拨比汇总总和(最后一行) - CuBonusVertexStatisTotalVO cuBonusVertexStatisSum = iCuBonusVertexStatisService.queryCuBonusStatisSum(cuBonusVertexStatisTotalVO); - cuBonusVertexStatisSum.setMainBonus((cuBonusVertexStatisSum.getMainBonus()).multiply(currency.getData().getInExchangeRate())); - cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { -// if (itm.getPkVertex().equals(itmm.getPkVertex())) { -// itm.setFirstPurchaseAll(itm.getFirstPurchaseAll().subtract(itmm.getOrderAmount()).add(itmm.getEnergySum())); -// itm.setOrgTopNumber(itmm.getOrgTopNumber()); -// itm.setOrgAvTouch(itmm.getOrgAvTouch()); -// itm.setOrgMaxTouch(itmm.getOrgMaxTouch()); -// } - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -136,7 +125,14 @@ public class CuBonusVertexStatisTotalController extends BaseController { itm.setFirstPurchaseRatio(cent.multiply(itm.getFirstPurchaseAll()).divide(cuBonusVertexStatisTotalVO.getFirstPurchaseAllSum(), 4, RoundingMode.HALF_UP)); } }); - cuBonusVertexStatisSum.setMemberName("汇总"); + + //查询顶点奖金拨比汇总总和(最后一行) + CuBonusVertexStatisTotalVO cuBonusVertexStatisSum = iCuBonusVertexStatisService.queryCuBonusStatisSum(cuBonusVertexStatisTotalVO); + if (null != cuBonusVertexStatisSum) { + cuBonusVertexStatisSum.setMainBonus((cuBonusVertexStatisSum.getMainBonus()).multiply(currency.getData().getInExchangeRate())); + cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); + cuBonusVertexStatisSum.setMemberName("汇总"); + } slList.add(cuBonusVertexStatisSum); return getDataTable(slList); } @@ -199,14 +195,6 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { - -// if (itm.getPkVertex().equals(itmm.getPkVertex())) { -// itm.setFirstPurchaseAll(itm.getFirstPurchaseAll().subtract(itmm.getOrderAmount()).add(itmm.getEnergySum())); -// itm.setOrgTopNumber(itmm.getOrgTopNumber()); -// itm.setOrgAvTouch(itmm.getOrgAvTouch()); -// itm.setOrgMaxTouch(itmm.getOrgMaxTouch()); -// } - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml index 5c0df57d..5c10640b 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml @@ -525,7 +525,6 @@ sum (cbs.ORG_BONUS) orgBonusSum, sum (cbs.LEADER_BONUS) leaderBonusSum, #{orderAchieve} shareBonusSum, - #{energyAmountAll} energyAmountAllSum, sum (cbs.SERVICE_BONUS) serviceBonusSum, sum (cbs.HI_FUN_INCOME) hiFunIncomeSum, sum (cbs.REPUR_RANGE_BONUS) repurRangeBonusSum, @@ -558,7 +557,7 @@ ROUND(sum(#{perCent}*AGENT_REPUR_AMOUNT)/(sum(cbs.AGENT_REG_AMOUNT + cbs.AGENT_UP_AMOUNT+cbs.AGENT_REPUR_AMOUNT)),4) end as agentRepurAmountRateSum, ((sum(cbs.MAIN_REG_AMOUNT + - cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))-#{energySub}+#{energySum}) AS + cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))) AS firstPurchaseAllSum, ( sum(cbs.MAIN_REPUR_AMOUNT + cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT @@ -574,7 +573,7 @@ = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS+cbs.ORG_BONUS+cbs.LEADER_BONUS+cbs.SERVICE_BONUS +cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}+#{energySum}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS mainBonusRateSum, CASE WHEN @@ -624,7 +623,7 @@ (sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT+ cbs.MAIN_REPUR_AMOUNT+cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT +cbs.EMPOWERMENT_GIFT_AMOUNT+cbs.COOPERATE_AMOUNT+cbs.SPECIAL_REPURCHASE_AMOUNT - +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)-#{energySub}+#{energySum}),4) end AS totalBonusRateSum + +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)),4) end AS totalBonusRateSum FROM CU_BONUS_STATIS cbs left join bd_vertex ver on cbs.pk_bd_vertex = ver.pk_id diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml index 9d79ec7d..15078ada 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml @@ -418,7 +418,6 @@ sum (cbs.INTRODUCE_BONUS) introduceBonus, sum (cbs.ORG_BONUS) orgBonus, sum (cbs.LEADER_BONUS) leaderBonus, - #{energyAmountAll} energyAmountAll, sum (cbs.SERVICE_BONUS) serviceBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) @@ -538,24 +537,23 @@ sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS introduceBonusRate, sum (cbs.ORG_BONUS) orgBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.ORG_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS orgBonusRate, sum (cbs.LEADER_BONUS) leaderBonus, - #{energyAmountAll} energyAmountAll, sum (cbs.SERVICE_BONUS) serviceBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.SERVICE_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS serviceBonusRate, sum (cbs.HI_FUN_INCOME) hiFunIncome, sum (cbs.REPUR_RANGE_BONUS) repurRangeBonus, @@ -566,10 +564,10 @@ sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS makerRate, ((sum(cbs.MAIN_REG_AMOUNT + - cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))-#{energySub}) AS + cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))) AS firstPurchaseAll, ( sum(cbs.MAIN_REPUR_AMOUNT + cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT @@ -582,7 +580,7 @@ = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS+cbs.ORG_BONUS+cbs.LEADER_BONUS+cbs.SERVICE_BONUS +cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS mainBonusRate, CASE WHEN @@ -632,7 +630,7 @@ (sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT+ cbs.MAIN_REPUR_AMOUNT+cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT +cbs.EMPOWERMENT_GIFT_AMOUNT+cbs.COOPERATE_AMOUNT+cbs.SPECIAL_REPURCHASE_AMOUNT - +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)-#{energySub}+#{energySum}),4) end AS totalBonusRate + +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)),4) end AS totalBonusRate FROM CU_BONUS_VERTEX_STATIS cbs LEFT JOIN CU_MEMBER cm ON cm.PK_ID = cbs.PK_BD_VERTEX From dc977087f9c3e0ee15646441725f59ac540c0c32 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:27:25 +0800 Subject: [PATCH 039/362] =?UTF-8?q?##=20=E8=BF=81=E7=A7=BB=E6=80=BB?= =?UTF-8?q?=E8=A3=81=E9=9D=A2=E6=9D=BF=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../board/controller/BoardController.java | 139 ++++++++++ .../hzs/system/board/mapper/BoardMapper.java | 50 ++++ .../system/board/service/IBoardService.java | 50 ++++ .../board/service/impl/BoardServiceImpl.java | 48 ++++ .../hzs/system/board/vo/BoardAchieveVO.java | 50 ++++ .../system/board/vo/BoardDayAchieveVO.java | 23 ++ .../system/board/vo/BoardMemberLevelVO.java | 28 ++ .../hzs/system/board/vo/BoardMemberVO.java | 46 ++++ .../board/vo/BoardRechargeAccountVO.java | 31 +++ .../hzs/system/board/vo/BoardRechargeVO.java | 30 +++ .../mapper/system/board/BoardMapper.xml | 244 ++++++++++++++++++ .../core/constant/MagicNumberConstants.java | 7 + .../hzs/common/core/utils/BarCodeUtils.java | 6 +- .../hzs/common/core/utils/BigDecimalUtil.java | 20 ++ .../hzs/common/core/utils/CreatePassword.java | 59 ----- .../common/core/utils/DeduplicationUtil.java | 21 +- .../common/core/utils/DistinctByKeyUtil.java | 17 +- .../common/core/utils/NacosSecretUtil.java | 29 --- .../com/hzs/common/core/utils/NumberUtil.java | 8 +- .../com/hzs/common/core/utils/OssUtil.java | 2 - .../com/hzs/common/core/utils/PageUtils.java | 2 - .../hzs/common/core/utils/ServletUtils.java | 2 - .../hzs/common/core/utils/SpringUtils.java | 2 - .../common/core/utils/StringJsonUtils.java | 14 +- .../hzs/common/core/utils/ThreadUtils.java | 6 +- .../hzs/common/core/utils/UploadFileUtil.java | 6 +- .../core/utils/poi/ExcelHandlerAdapter.java | 2 - .../hzs/common/core/utils/poi/ExcelUtil.java | 2 - .../core/utils/reflect/ReflectUtils.java | 2 - .../common/core/utils/sign/Base64Util.java | 2 - .../hzs/common/core/utils/sql/SqlUtil.java | 2 - .../hzs/common/core/utils/uuid/IdUtils.java | 2 - .../com/hzs/common/core/utils/uuid/Seq.java | 2 +- .../com/hzs/common/core/utils/uuid/UUID.java | 2 - 34 files changed, 781 insertions(+), 175 deletions(-) create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java create mode 100644 bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java new file mode 100644 index 00000000..b12a6c25 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java @@ -0,0 +1,139 @@ +package com.hzs.system.board.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.hzs.common.core.utils.BigDecimalUtil; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.system.board.service.IBoardService; +import com.hzs.system.board.vo.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * 首页看板 控制器 + */ +@RestController +@RequestMapping("/manage/board") +public class BoardController extends BaseController { + + @Autowired + private IBoardService iBoardService; + + /** + * 会员汇总数据 + * + * @return + */ + @GetMapping("/member-summary") + public AjaxResult memberSummary() { + // 会员汇总数据 + BoardMemberVO boardMemberVO = iBoardService.getMemberBoard(); + boardMemberVO.setMemberTodayLevelList(new ArrayList<>(6)); + boardMemberVO.setMemberYesterdayLevelList(new ArrayList<>(6)); + boardMemberVO.setMemberMonthLevelList(new ArrayList<>(6)); + + // 会员各等级数据 + List levelList = iBoardService.listMemberLevelBoard(); + + for (BoardMemberLevelVO boardMemberLevelVO : levelList) { + if (boardMemberLevelVO.getSort() == 0) { + // 今日 + boardMemberVO.getMemberTodayLevelList().add(boardMemberLevelVO); + } else if (boardMemberLevelVO.getSort() == 1) { + // 昨日 + boardMemberVO.getMemberYesterdayLevelList().add(boardMemberLevelVO); + } else { + // 本月 + boardMemberVO.getMemberMonthLevelList().add(boardMemberLevelVO); + } + } + return AjaxResult.success(boardMemberVO); + } + + /** + * 日业绩数据 + * + * @return + */ + @GetMapping("/day-achieve") + public AjaxResult dayAchieve() { + // 返回数据VO + BoardDayAchieveVO resultVO = new BoardDayAchieveVO(); + + List dayAchieveList = iBoardService.getDayAchieve(); + if (CollectionUtil.isNotEmpty(dayAchieveList)) { + for (BoardAchieveVO boardAchieveVO : dayAchieveList) { + if (boardAchieveVO.getSort() == 0) { + resultVO.setToday(BoardAchieveVO.builder() + .firstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())) + .firstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())) + .repAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())) + .repAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())) + .build()); + } else { + resultVO.setYesterday(BoardAchieveVO.builder() + .firstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())) + .firstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())) + .repAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())) + .repAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())) + .build()); + } + } + } + + return AjaxResult.success(resultVO); + } + + /** + * 月业绩数据 + * + * @return + */ + @GetMapping("/month-achieve") + public AjaxResult monthAchieve() { + BoardAchieveVO boardAchieveVO = iBoardService.getMonthAchieve(); + boardAchieveVO.setFirstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())); + boardAchieveVO.setFirstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())); + boardAchieveVO.setRepAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())); + boardAchieveVO.setRepAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())); + return AjaxResult.success(boardAchieveVO); + } + + /** + * 充值汇总数据 + * + * @return + */ + @GetMapping("/recharge-summary") + public AjaxResult rechargeSummary() { + BoardRechargeVO boardRechargeVO = new BoardRechargeVO(); + boardRechargeVO.setRechargeTodayList(new ArrayList<>(6)); + boardRechargeVO.setRechargeYesterdayLevelList(new ArrayList<>(6)); + boardRechargeVO.setRechargeMonthLevelList(new ArrayList<>(6)); + + // 会员汇总数据 + List rechargeList = iBoardService.listAccountRechargeBoard(); + + for (BoardRechargeAccountVO boardMemberVO : rechargeList) { + // 充值金额按万处理 + boardMemberVO.setRechargeAmount(BigDecimalUtil.handleBig10000Down(boardMemberVO.getRechargeAmount())); + if (boardMemberVO.getSort() == 0) { + // 今日 + boardRechargeVO.getRechargeTodayList().add(boardMemberVO); + } else if (boardMemberVO.getSort() == 1) { + // 昨日 + boardRechargeVO.getRechargeYesterdayLevelList().add(boardMemberVO); + } else { + // 本月 + boardRechargeVO.getRechargeMonthLevelList().add(boardMemberVO); + } + } + return AjaxResult.success(boardRechargeVO); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java new file mode 100644 index 00000000..752f2d4e --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.mapper; + +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; + +import java.util.List; + +/** + * 首页看板 mapper + */ +public interface BoardMapper { + + /** + * 查询会员汇总数据 + * + * @return + */ + BoardMemberVO getMemberBoard(); + + /** + * 查询会员等级数据 + * + * @return + */ + List listMemberLevelBoard(); + + /** + * 查询日业绩汇总数据 + * + * @return + */ + List getDayAchieve(); + + /** + * 查询月业绩汇总数据 + * + * @return + */ + BoardAchieveVO getMonthAchieve(); + + /** + * 各币种充值数据 + * + * @return + */ + List listAccountRechargeBoard(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java new file mode 100644 index 00000000..50b4808b --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.service; + +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; + +import java.util.List; + +/** + * 首页看板 service + */ +public interface IBoardService { + + /** + * 查询会员汇总数据 + * + * @return + */ + BoardMemberVO getMemberBoard(); + + /** + * 查询会员等级数据 + * + * @return + */ + List listMemberLevelBoard(); + + /** + * 查询日业绩汇总数据 + * + * @return + */ + List getDayAchieve(); + + /** + * 查询月业绩汇总数据 + * + * @return + */ + BoardAchieveVO getMonthAchieve(); + + /** + * 各币种充值数据 + * + * @return + */ + List listAccountRechargeBoard(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java new file mode 100644 index 00000000..6794feb9 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java @@ -0,0 +1,48 @@ +package com.hzs.system.board.service.impl; + +import com.hzs.system.board.mapper.BoardMapper; +import com.hzs.system.board.service.IBoardService; +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 首页看板 service + */ +@Service +public class BoardServiceImpl implements IBoardService { + + @Resource + private BoardMapper boardMapper; + + @Override + public BoardMemberVO getMemberBoard() { + return boardMapper.getMemberBoard(); + } + + @Override + public List listMemberLevelBoard() { + return boardMapper.listMemberLevelBoard(); + } + + @Override + public List getDayAchieve() { + return boardMapper.getDayAchieve(); + } + + @Override + public BoardAchieveVO getMonthAchieve() { + return boardMapper.getMonthAchieve(); + } + + @Override + public List listAccountRechargeBoard() { + return boardMapper.listAccountRechargeBoard(); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java new file mode 100644 index 00000000..7e8d9e29 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.vo; + +import com.hzs.common.core.annotation.BigDecimalFormat; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 看板业绩汇总数据 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class BoardAchieveVO implements Serializable { + + /** + * 首购业绩 + */ + @BigDecimalFormat + private BigDecimal firstAchieve; + + /** + * 首购金额 + */ + @BigDecimalFormat + private BigDecimal firstAmount; + + /** + * 复购业绩 + */ + @BigDecimalFormat + private BigDecimal repAchieve; + + /** + * 复购金额 + */ + @BigDecimalFormat + private BigDecimal repAmount; + + /** + * 序号 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java new file mode 100644 index 00000000..0f7ccaaf --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java @@ -0,0 +1,23 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 看板业绩汇总数据返回 + */ +@Data +public class BoardDayAchieveVO implements Serializable { + + /** + * 今日 + */ + private BoardAchieveVO today; + + /** + * 昨日 + */ + private BoardAchieveVO yesterday; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java new file mode 100644 index 00000000..76cf0113 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java @@ -0,0 +1,28 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 看板会员等级数据 + */ +@Data +public class BoardMemberLevelVO implements Serializable { + + /** + * 等级名称 + */ + private String gradeName; + + /** + * 会员数量 + */ + private Integer memberTotal; + + /** + * 0=今日,1=昨日,2=当月 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java new file mode 100644 index 00000000..f3525112 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java @@ -0,0 +1,46 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 看板会员汇总数据 + */ +@Data +public class BoardMemberVO implements Serializable { + + /** + * 会员总数 + */ + private Integer memberTotal; + + /** + * 今日新増会员 + */ + private Integer memberToday; + /** + * 今日会员等级 + */ + private List memberTodayLevelList; + + /** + * 昨日新増会员 + */ + private Integer memberYesterday; + /** + * 昨日会员等级 + */ + private List memberYesterdayLevelList; + + /** + * 本月新増会员 + */ + private Integer memberMonth; + /** + * 本月会员等级 + */ + private List memberMonthLevelList; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java new file mode 100644 index 00000000..c91e61ea --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java @@ -0,0 +1,31 @@ +package com.hzs.system.board.vo; + +import com.hzs.common.core.annotation.BigDecimalFormat; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 看板各币种充值数据 + */ +@Data +public class BoardRechargeAccountVO implements Serializable { + + /** + * 账户名称 + */ + private String accountName; + + /** + * 充值金额 + */ + @BigDecimalFormat + private BigDecimal rechargeAmount; + + /** + * 0=今日,1=昨日,2=当月 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java new file mode 100644 index 00000000..03a6002a --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java @@ -0,0 +1,30 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 看板充值数据 + */ +@Data +public class BoardRechargeVO implements Serializable { + + /** + * 今日充值 + */ + private List rechargeTodayList; + + /** + * 昨日充值 + */ + private List rechargeYesterdayLevelList; + + /** + * 本月充值 + */ + private List rechargeMonthLevelList; + + +} diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml new file mode 100644 index 00000000..98c5720a --- /dev/null +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml @@ -0,0 +1,244 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index 576f03e7..32025a8c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -1,5 +1,7 @@ package com.hzs.common.core.constant; +import java.math.BigDecimal; + /** * 魔法数字常量类 */ @@ -99,4 +101,9 @@ public class MagicNumberConstants { */ public static final Integer WITHDRAW_MULTIPLE = 100; + /** + * 转换万处理 + */ + public static final BigDecimal big10000 = new BigDecimal("10000"); + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java index 3cb78656..d517d657 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java @@ -14,11 +14,7 @@ import java.util.HashMap; import java.util.Map; /** - * @author: sui q - * @time: 2021/11/23 11:02 - * @description: 条形码+文字 生成 - * @classname: BarCodeUtils - * @package_name: com.hzs.web.util + * sui q */ @Slf4j public class BarCodeUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java new file mode 100644 index 00000000..ec61fad4 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java @@ -0,0 +1,20 @@ +package com.hzs.common.core.utils; + +import com.hzs.common.core.constant.MagicNumberConstants; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +public class BigDecimalUtil { + + /** + * 除万取2位小数并且去尾 + * + * @param bigDecimal + * @return + */ + public static BigDecimal handleBig10000Down(BigDecimal bigDecimal) { + return bigDecimal.divide(MagicNumberConstants.big10000, 2, RoundingMode.DOWN); + } + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java deleted file mode 100644 index 9c806432..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.common.core.utils; - -/** - * @Description: 自动生成密码 暂时先不使用 - * @Author: sui q - * @Time: 2022/9/9 14:52 - * @Classname: CreatePassword - * @PackageName: com.hzs.common.core.utils - */ -public class CreatePassword { - - /** - * @Description: 生成密码 - * @param len 密码长度 - * @return: String - * @Author: sui q - * @Date: 2022/9/9 14:53 - */ - public static String generatePassword(int len) { - // 1、定义基本字符串baseStr和出参password - StringBuilder password = null; - String baseStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*()_+{}|<>?"; - boolean flag = false; - // 2、使用循环来判断是否是正确的密码 - while (!flag) { - // 密码重置 - password = new StringBuilder(); - // 个数计数 - int a = 0, b = 0, c = 0, d = 0; - for (int i = 0; i < len; i++) { - int rand = (int) (Math.random() * baseStr.length()); - password.append(baseStr.charAt(rand)); - if (rand < 10) { - a++; - } - if (10 <= rand && rand < 36) { - b++; - } - if (36 <= rand && rand < 62) { - c++; - } - if (62 <= rand) { - d++; - } - if (a * b * c * d != 0) { - break; - } - } - // 是否是正确的密码(4类中仅一类为0,其他不为0) - flag = (a * b * c != 0 && d == 0) || (a * b * d != 0 && c == 0) || (a * c * d != 0 && b == 0) - || (b * c * d != 0 && a == 0); - } - return password.toString(); - } - - public static void main(String[] args) { - System.out.println(generatePassword(6)); - } -} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java index 063bc2cc..63da6925 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java @@ -1,25 +1,12 @@ -package com.hzs.common.core.utils;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 9:55 - * @Classname: DeduplicationUtil - * @PackageName: com.hzs.common.core.utils - */ +package com.hzs.common.core.utils; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; import java.util.function.Predicate; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.common.core.utils - *@Author: yh - *@CreateTime: 2023-06-06 09:55 - *@Description: TODO - *@Version: 1.0 - */ public class DeduplicationUtil { + /** * 自定义函数去重(采用 Predicate函数式判断,采用 Function获取比较key) * 内部维护一个 ConcurrentHashMap,并采用 putIfAbsent特性实现 @@ -29,7 +16,7 @@ public class DeduplicationUtil { * @return */ public static Predicate distinctByKey(Function keyExtractor) { - Map seen = new ConcurrentHashMap<>(); + Map seen = new ConcurrentHashMap<>(); return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null; } @@ -41,7 +28,7 @@ public class DeduplicationUtil { * @return */ public static Predicate distinctNotByKey(Function keyExtractor) { - Map seen = new ConcurrentHashMap<>(); + Map seen = new ConcurrentHashMap<>(); return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) != null; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java index 025062b7..6959bf8e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java @@ -1,27 +1,14 @@ -package com.hzs.common.core.utils;/** - * @Description: - * @Author: yuhui - * @Time: 2023/3/10 15:56 - * @Classname: distinctByKeyUtil - * @PackageName: com.hzs.common.core.utils - */ +package com.hzs.common.core.utils; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; import java.util.function.Predicate; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.common.core.utils - *@Author: yh - *@CreateTime: 2023-03-10 15:56 - *@Description: TODO - *@Version: 1.0 - */ public class DistinctByKeyUtil { /** * 对象根据某一值去重 + * * @param keyExtractor * @param * @return diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java deleted file mode 100644 index 97b37fed..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.common.core.utils; - - - -import com.hzs.common.core.utils.sign.Base64Util; -import org.springframework.util.Base64Utils; - -import java.nio.charset.StandardCharsets; - -/** - * @Description: - * @Author: ljc - * @Time: 2024/8/20 9:38 - * @Classname: NacosSecretUtil - * @Package_name: com.hzs - */ -public class NacosSecretUtil { - - public static void main(String[] args) { - // 自定义生成JWT令牌的密钥 - String nacosSecret = "smYhZs_20240820_UNkSTzy_formY_toKen"; - // 输出密钥长度,要求不得低于32字符,否则无法启动节点。 - System.out.println("密钥长度》》》" + nacosSecret.length()); - // 密钥进行Base64编码 - byte[] data = nacosSecret.getBytes(StandardCharsets.UTF_8); - System.out.println("密钥Base64编码》》》" + Base64Utils.encodeToString(data)); - System.out.println("密钥Base64编码》》》" + Base64Util.encode(data)); - } -} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java index 7da4aa41..4dbb4f88 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java @@ -2,17 +2,11 @@ package com.hzs.common.core.utils; import java.text.DecimalFormat; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/12/2 14:12 - * @Classname: NumberUtil - * @PackageName: com.hzs.common.core.utils - */ public class NumberUtil { /** * 获取百分比 + * * @param number1 / * @param number2 总数/ * @return java.lang.String / diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java index 283c5344..0c2c5ff3 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java @@ -14,8 +14,6 @@ import java.io.InputStream; /** * OSS 使用工具 - * - * @author: jiiangchao */ @Slf4j public class OssUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java index c0b34b76..a0c4bb29 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java @@ -7,8 +7,6 @@ import com.hzs.common.core.web.page.TableSupport; /** * 分页工具类 - * - * @author hzs */ public class PageUtils extends PageHelper { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java index ab6e8062..35e4947f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java @@ -27,8 +27,6 @@ import reactor.core.publisher.Mono; /** * 客户端工具类 - * - * @author hzs */ public class ServletUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java index 391cd718..be98b362 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java @@ -9,8 +9,6 @@ import org.springframework.stereotype.Component; /** * spring工具类 方便在非spring管理环境中获取bean - * - * @author hzs */ @Component public final class SpringUtils implements BeanFactoryPostProcessor { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java index ff59796e..f5d227d8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java @@ -7,13 +7,7 @@ import com.alibaba.fastjson2.JSONObject; import java.util.*; /** - * description: 将json串转化为map类型 - * - * @author: sui q - * @time: 2023/4/3 14:17 - * @classname: StringJsonUtils - * @package_name: com.hzs.common.core.utils - * version 1.0.0 + * 将json串转化为map类型 */ public class StringJsonUtils { @@ -50,10 +44,10 @@ public class StringJsonUtils { for (int j = 0; j < jsonArray.size(); j++) { // JSONObject reagobj = JSONObject.parseObject(jsonStr); Object object = jsonArray.get(j); - if(object instanceof String){ + if (object instanceof String) { jsonArray.set(j, jsonArray.get(j).toString().trim()); - }else{ - if(jsonArray.get(j) instanceof JSONObject){ + } else { + if (jsonArray.get(j) instanceof JSONObject) { JSONObject reagobj = (JSONObject) jsonArray.get(j); handleJsonObject(reagobj); jsonArray.set(j, reagobj); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java index a1b48ce4..3dbbd066 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java @@ -6,11 +6,7 @@ import org.springframework.stereotype.Component; import java.util.concurrent.*; /** - * Description: 线程工具类 - * Author: jiang chao - * Time: 2022/8/30 10:10 - * Classname: ThreadUtil - * PackageName: com.hzs.common.core.utils + * 线程工具类 */ @Slf4j @Component diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java index 4cc535dd..1388c7f3 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java @@ -8,11 +8,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.*; /** - * @Description: 文件上传工具 - * @Author: jiang chao - * @Time: 2023/1/13 11:24 - * @Classname: UploadUtil - * @PackageName: com.hzs.member.tool + * 文件上传工具 */ @Slf4j public class UploadFileUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java index 7d563a9d..a566f064 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java @@ -2,8 +2,6 @@ package com.hzs.common.core.utils.poi; /** * Excel数据格式处理适配器 - * - * @author hzs */ public interface ExcelHandlerAdapter { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java index 381d3be9..769743de 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java @@ -62,8 +62,6 @@ import com.hzs.common.core.utils.reflect.ReflectUtils; /** * Excel相关处理 - * - * @author hzs */ @Slf4j public class ExcelUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java index 452df287..77b86c63 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java @@ -18,8 +18,6 @@ import com.hzs.common.core.utils.DateUtils; /** * 反射工具类. 提供调用getter/setter方法, 访问私有变量, 调用私有方法, 获取泛型类型Class, 被AOP过的真实类等工具函数. - * - * @author hzs */ @Slf4j @SuppressWarnings("rawtypes") diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java index 16446e79..65a9b5b1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java @@ -8,8 +8,6 @@ import java.net.URL; /** * Base64工具类 - * - * @author hzs */ public final class Base64Util { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java index 86224702..0c3f0c05 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java @@ -5,8 +5,6 @@ import com.hzs.common.core.utils.StringUtils; /** * sql操作工具类 - * - * @author hzs */ public class SqlUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java index 8614d146..4399d85b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java @@ -2,8 +2,6 @@ package com.hzs.common.core.utils.uuid; /** * ID生成器工具类 - * - * @author hzs */ public class IdUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java index 1a1b8f9c..a2075725 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java @@ -6,7 +6,7 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; /** - * @author hzs 序列生成类 + * 序列生成类 */ public class Seq { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java index d55b31fe..77506702 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java @@ -10,8 +10,6 @@ import com.hzs.common.core.exception.UtilException; /** * 提供通用唯一识别码(universally unique identifier)(UUID)实现 - * - * @author hzs */ public final class UUID implements java.io.Serializable, Comparable { From b8ad546deafca7fe66954d50c71a69072e6d24a7 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:36:07 +0800 Subject: [PATCH 040/362] =?UTF-8?q?##=20=E4=B8=8A=E4=BC=A0=E7=9B=92?= =?UTF-8?q?=E6=95=B0=E5=95=86=E5=93=81=E6=B7=BB=E5=8A=A0=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=BC=96=E7=A0=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/RetailConstants.java | 48 ++++++++++++------- 1 file changed, 32 insertions(+), 16 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index bc755a59..89458c7f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -23,17 +23,25 @@ public class RetailConstants { */ public static final List BOX_PRODUCT_LIST = Arrays.asList( // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006", - "SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012", + "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", + "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", + "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", + "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006", - "SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012", + "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", + "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", + "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", + "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006", - "SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012", + "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", + "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", + "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", + "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006", - "SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012" + "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", + "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", + "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", + "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" ); /** @@ -41,17 +49,25 @@ public class RetailConstants { */ public static final List ALL_BOX_WARES_LIST = Arrays.asList( // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006", - "SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012", + "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", + "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", + "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", + "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006", - "SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012", + "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", + "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", + "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", + "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006", - "SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012", + "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", + "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", + "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", + "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006", - "SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012" + "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", + "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", + "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", + "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" ); } From 4c21071b6a15f079de6a0a1a1495954288543943 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 15:20:00 +0800 Subject: [PATCH 041/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=8E=A5=E5=8F=A3=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/mapper/CuMemberMapper.java | 9 ++ .../member/base/service/ICuMemberService.java | 11 ++ .../service/impl/CuMemberServiceImpl.java | 64 ++++++++++ .../manage/CensusSummaryController.java | 116 ++++++++++++++++++ .../census/param/CensusSummaryParam.java | 55 +++++++++ .../hzs/member/census/vo/CensusSummaryVo.java | 82 +++++++++++++ .../mapper/member/base/CuMemberMapper.xml | 24 ++++ .../com/hzs/common/core/utils/DateUtils.java | 35 ++++++ 8 files changed, 396 insertions(+) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 1c18f5e1..a5e63dc7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -8,6 +8,7 @@ import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.member.base.dto.MemberCountDTO; import com.hzs.member.base.param.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; @@ -628,4 +629,12 @@ public interface CuMemberMapper extends BaseMapper { String getSharePosterImage(@Param("userId") Long userId); + /** + * 查询业绩汇总 + * + * @param censusSummaryParam + * @return + */ + List queryDateBySummary(CensusSummaryParam censusSummaryParam); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 692fdc70..62a318a9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -12,6 +12,8 @@ import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.member.base.dto.ZeroElementRevokeDTO; import com.hzs.member.base.param.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; @@ -900,4 +902,13 @@ public interface ICuMemberService extends IService { * @return */ String getSharePosterImage(); + + /** + * 查询汇总 + * + * @param censusSummaryParam 表格名称 + * @return + */ + List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 03ae4f7e..d9d3be60 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -42,6 +42,8 @@ import com.hzs.member.base.mapper.CuMemberMapper; import com.hzs.member.base.param.*; import com.hzs.member.base.service.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; @@ -3237,4 +3239,66 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.getSharePosterImage(SecurityUtils.getUserId()); } + + @Override + public List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days) { + // 根据类型查询所有人各类型的订单业绩汇总 + List censusSummaryList = new ArrayList<>(); + for (String day : days) { + censusSummaryParam.setTime(day); + List memberMeritsSummaryVoList = baseMapper.queryDateBySummary(censusSummaryParam); + Map memberMeritsSummaryMap = memberMeritsSummaryVoList.stream().collect(Collectors.toMap(MemberMeritsSummaryVo::getOrderType, Function.identity())); + + CensusSummaryVo censusSummaryVo = new CensusSummaryVo(); + censusSummaryVo.setSettleDate(day); + + // 注册 + BigDecimal reAmount = BigDecimal.ZERO; + BigDecimal reAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()) != null) { + reAmount = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAmount(); + reAchieve = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setRegisterAmount(reAmount); + censusSummaryVo.setRegisterPv(reAchieve); + + // 升级 + BigDecimal upAmount = BigDecimal.ZERO; + BigDecimal upAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()) != null) { + upAmount = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAmount(); + upAchieve = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setUpgradeAmount(upAmount); + censusSummaryVo.setUpgradePv(upAchieve); + + // 首购 + censusSummaryVo.setFirstPurchaseAmount(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount())); + censusSummaryVo.setFirstPurchasePv(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv())); + + // 复购订单 + BigDecimal repurchaseAmount = BigDecimal.ZERO; + BigDecimal repurchaseAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()) != null) { + repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAmount(); + repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAchieve(); + } + // 复消 + if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { + repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()).getAmount()); + } + + // 复购 + censusSummaryVo.setRepurchaseAmount(repurchaseAmount); + censusSummaryVo.setRepurchasePv(repurchaseAchieve); + + // 金额总计 + censusSummaryVo.setAmountTotal(censusSummaryVo.getFirstPurchaseAmount().add(censusSummaryVo.getRepurchaseAmount())); + // 业绩汇总 + censusSummaryVo.setPvTotal(censusSummaryVo.getFirstPurchasePv().add(censusSummaryVo.getRepurchasePv())); + censusSummaryList.add(censusSummaryVo); + } + return censusSummaryList; + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java new file mode 100644 index 00000000..17bf4d1a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java @@ -0,0 +1,116 @@ +package com.hzs.member.census.controller.manage; + +import com.hzs.common.core.annotation.AccessPermissions; +import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.core.utils.poi.ExcelUtil; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; +import com.hzs.system.sys.IMenuColumnServiceApi; +import org.apache.dubbo.config.annotation.DubboReference; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +@RestController +@RequestMapping("/manage/member-structure") +public class CensusSummaryController extends BaseController { + + @Autowired + private ICuMemberSettlePeriodService memberSettlePeriodService; + @Autowired + private ICuMemberService memberService; + + @DubboReference + IMenuColumnServiceApi iMenuColumnServiceApi; + + /** + * 业绩汇总 + * + * @param censusSummaryParam + * @return + */ + @AccessPermissions("performanceTotal") + @GetMapping("/list") + public AjaxResult list(CensusSummaryParam censusSummaryParam) { + if (null == censusSummaryParam.getStartDate() + || null == censusSummaryParam.getEndDate()) { + return AjaxResult.success(new ArrayList<>()); + } + + List pkVertex = new ArrayList<>(); + if (StringUtils.isNotEmpty(censusSummaryParam.getPkBdVertexStr())) { + pkVertex = Arrays.stream(censusSummaryParam.getPkBdVertexStr().split(",")) + .map(Long::parseLong) + .collect(Collectors.toList()); + } + censusSummaryParam.setPkVertex(pkVertex); + + // 当天查询秒结 + Date date = new Date(); + // 查询当天 + String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); + // 查询当前时间范围 + List days = new ArrayList<>(); + if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { + days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); + } else { + // 默认查询当天 + days.add(thisTime); + } + + censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + + return AjaxResult.success(resultList); + } + + /** + * 导出(导出) + */ + @PostMapping("/export") + public void export(CensusSummaryParam censusSummaryParam, HttpServletResponse response) { + if (censusSummaryParam.getStartDate() == null || censusSummaryParam.getEndDate() == null) { + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class); + util.exportExcel(response, new ArrayList<>(), "业绩汇总信息"); + } + + // 当天查询秒结 + Date date = new Date(); + // 查询当天 + String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); + if (censusSummaryParam.getMemberSettlePeriodId() != null) { + memberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); + } else { + memberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); + } + + // 查询当前时间范围 + List days = new ArrayList(); + if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { + days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); + } else { + // 默认查询当天 + days.add(thisTime); + } + + List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class, iMenuColumnServiceApi.queryMenuColumn("performanceTotal", SecurityUtils.getUserId()).getData()); + util.exportExcel(response, resultList, "业绩汇总信息"); + } + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java new file mode 100644 index 00000000..d5073e16 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java @@ -0,0 +1,55 @@ +package com.hzs.member.census.param; + +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +public class CensusSummaryParam { + + /** + * 结算期数 + */ + private Long memberSettlePeriodId; + + /** + * 币种展示 + */ + private Long pkCurrency; + + /** + * 所属国家 + */ + private Integer pkCountry; + + /** + * 开始时间 + */ + private Date startDate; + + /** + * 结束时间 + */ + private Date endDate; + + /** + * 查询时间 + */ + private String time; + + /** + * 体系 + */ + private List pkVertex; + + /** + * 团队 + */ + private List pkMemberTeam; + /** + * 体系 + */ + private String pkBdVertexStr; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java new file mode 100644 index 00000000..91faac1a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java @@ -0,0 +1,82 @@ +package com.hzs.member.census.vo; + +import com.hzs.common.core.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class CensusSummaryVo { + + /** + * 结算期数 + */ + private Integer numberPeriods; + + /** + * 结算时间 + */ + @Excel(name = "结算时间") + private String settleDate; + + /** + * 注册金额 + */ + @Excel(name = "注册金额") + private BigDecimal registerAmount; + + /** + * 注册业绩 + */ + @Excel(name = "注册业绩") + private BigDecimal registerPv; + + /** + * 升级金额 + */ + @Excel(name = "升级金额") + private BigDecimal upgradeAmount; + + /** + * 升级业绩 + */ + @Excel(name = "升级业绩") + private BigDecimal upgradePv; + + /** + * 首购金额 + */ + @Excel(name = "首购金额") + private BigDecimal firstPurchaseAmount; + + /** + * 首购业绩 + */ + @Excel(name = "首购业绩") + private BigDecimal firstPurchasePv; + + /** + * 复购金额 + */ + @Excel(name = "复购金额") + private BigDecimal repurchaseAmount; + + /** + * 复购pv + */ + @Excel(name = "复购业绩") + private BigDecimal repurchasePv; + + /** + * 金额总计 + */ + @Excel(name = "金额总计") + private BigDecimal amountTotal; + + /** + * 业绩汇总 + */ + @Excel(name = "业绩汇总") + private BigDecimal pvTotal; + +} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index 8886787e..dfb5f75e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2477,6 +2477,7 @@ and t0.category = 0) where rownum = 1 + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java index ddae36e6..aa66ce87 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java @@ -8,8 +8,10 @@ import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; +import java.util.List; /** * 时间工具类 @@ -875,4 +877,37 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return before7days.getTime() < addtime.getTime(); } + + /** + * 获取两个时间内的每一天 + * + * @param startTime + * @param endTime + * @return + */ + public static List findDaysStr(String startTime, String endTime) { + SimpleDateFormat sdf = new SimpleDateFormat(DateUtils.YYYY_MM_DD); + Date dBegin = null; + Date dEnd = null; + try { + dBegin = sdf.parse(startTime); + dEnd = sdf.parse(endTime); + } catch (ParseException e) { + e.printStackTrace(); + } + List daysStrList = new ArrayList<>(); + daysStrList.add(sdf.format(dBegin)); + Calendar calBegin = Calendar.getInstance(); + calBegin.setTime(dBegin); + Calendar calEnd = Calendar.getInstance(); + calEnd.setTime(dEnd); + + while (dEnd.after(calBegin.getTime())) { + calBegin.add(Calendar.DAY_OF_MONTH, 1); + String dayStr = sdf.format(calBegin.getTime()); + daysStrList.add(dayStr); + } + return daysStrList; + } + } From 32e4130bac3c57591b6fae073d85fb717d189ede Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 15:21:27 +0800 Subject: [PATCH 042/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=8E=A5=E5=8F=A3=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CensusSummaryController.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java index 17bf4d1a..a1ebe323 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java @@ -31,9 +31,9 @@ import java.util.stream.Collectors; public class CensusSummaryController extends BaseController { @Autowired - private ICuMemberSettlePeriodService memberSettlePeriodService; + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Autowired - private ICuMemberService memberService; + private ICuMemberService iCuMemberService; @DubboReference IMenuColumnServiceApi iMenuColumnServiceApi; @@ -74,7 +74,7 @@ public class CensusSummaryController extends BaseController { } censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); - List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + List resultList = iCuMemberService.selectCensusSummary(censusSummaryParam, days); return AjaxResult.success(resultList); } @@ -84,7 +84,8 @@ public class CensusSummaryController extends BaseController { */ @PostMapping("/export") public void export(CensusSummaryParam censusSummaryParam, HttpServletResponse response) { - if (censusSummaryParam.getStartDate() == null || censusSummaryParam.getEndDate() == null) { + if (null == censusSummaryParam.getStartDate() + || null == censusSummaryParam.getEndDate()) { ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class); util.exportExcel(response, new ArrayList<>(), "业绩汇总信息"); } @@ -94,13 +95,13 @@ public class CensusSummaryController extends BaseController { // 查询当天 String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); if (censusSummaryParam.getMemberSettlePeriodId() != null) { - memberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); + iCuMemberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); } else { - memberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); + iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); } // 查询当前时间范围 - List days = new ArrayList(); + List days = new ArrayList<>(); if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); } else { @@ -108,7 +109,9 @@ public class CensusSummaryController extends BaseController { days.add(thisTime); } - List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = iCuMemberService.selectCensusSummary(censusSummaryParam, days); + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class, iMenuColumnServiceApi.queryMenuColumn("performanceTotal", SecurityUtils.getUserId()).getData()); util.exportExcel(response, resultList, "业绩汇总信息"); } From a1afb138f42c057af0b22feb8efb1fbbb34f4fb1 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 20:53:43 +0800 Subject: [PATCH 043/362] =?UTF-8?q?##=20=E5=9C=A8=E7=BA=BF=E6=94=AF?= =?UTF-8?q?=E4=BB=98=E5=A4=84=E7=90=86=E5=8D=87=E7=BA=A7=E5=A4=9A=E9=80=81?= =?UTF-8?q?=E4=B8=A4=E7=BA=A7=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 3 ++- .../com/hzs/sale/order/service/ISaOrderService.java | 8 ++++++++ .../sale/order/service/impl/SaOrderServiceImpl.java | 13 ++++++++----- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 18ad4017..9ff3781e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -734,7 +734,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 升级订单 - cuMember.setPkSettleGrade(saOrderExt.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade()); + cuMember.setPkSettleGrade(tmpGrade.getPkId()); resultStr = this.payUpgOrder(saOrderExt, cuMember, null); } else { // 其它订单 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index c804cd8d..31a6e27c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -642,4 +642,12 @@ public interface ISaOrderService extends IService { List gradeList, CuMember updateGradeMember, Integer systemType, Integer isPay); + /** + * 处理最终等级(多送2级) + * @param gradeList + * @param pkGrade + * @return + */ + BdGrade handleGradeEnd(List gradeList, Integer pkGrade); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 2930ae75..31921788 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2504,7 +2504,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 注册专区直接算等级 bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -2540,7 +2540,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl } // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -3384,13 +3384,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl * new 2025.06.25 V1-V3升级多送两级处理 * * @param gradeList - * @param bdGrade + * @param pkGrade * @return */ - private BdGrade handleGradeEnd(List gradeList, BdGrade bdGrade) { + @Override + public BdGrade handleGradeEnd(List gradeList, Integer pkGrade) { + if (CollectionUtil.isEmpty(gradeList)) { + gradeList = iGradeServiceApi.getRetailGradeList().getData(); + } // new 2025.06.14 添加新需求,V1-V3,购买多给两级 // new 2025.06.25 V1-V3升级多送两级,可以继续购买升级 - Integer pkGrade = bdGrade.getPkId(); // 临时处理等级 BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); From 3afae49d92994a894b2c1feba72934039fea5b8f Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 20:53:43 +0800 Subject: [PATCH 044/362] =?UTF-8?q?##=20=E5=9C=A8=E7=BA=BF=E6=94=AF?= =?UTF-8?q?=E4=BB=98=E5=A4=84=E7=90=86=E5=8D=87=E7=BA=A7=E5=A4=9A=E9=80=81?= =?UTF-8?q?=E4=B8=A4=E7=BA=A7=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 3 ++- .../com/hzs/sale/order/service/ISaOrderService.java | 8 ++++++++ .../sale/order/service/impl/SaOrderServiceImpl.java | 13 ++++++++----- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 18ad4017..9ff3781e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -734,7 +734,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 升级订单 - cuMember.setPkSettleGrade(saOrderExt.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade()); + cuMember.setPkSettleGrade(tmpGrade.getPkId()); resultStr = this.payUpgOrder(saOrderExt, cuMember, null); } else { // 其它订单 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index c804cd8d..31a6e27c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -642,4 +642,12 @@ public interface ISaOrderService extends IService { List gradeList, CuMember updateGradeMember, Integer systemType, Integer isPay); + /** + * 处理最终等级(多送2级) + * @param gradeList + * @param pkGrade + * @return + */ + BdGrade handleGradeEnd(List gradeList, Integer pkGrade); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 2930ae75..31921788 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2504,7 +2504,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 注册专区直接算等级 bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -2540,7 +2540,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl } // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -3384,13 +3384,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl * new 2025.06.25 V1-V3升级多送两级处理 * * @param gradeList - * @param bdGrade + * @param pkGrade * @return */ - private BdGrade handleGradeEnd(List gradeList, BdGrade bdGrade) { + @Override + public BdGrade handleGradeEnd(List gradeList, Integer pkGrade) { + if (CollectionUtil.isEmpty(gradeList)) { + gradeList = iGradeServiceApi.getRetailGradeList().getData(); + } // new 2025.06.14 添加新需求,V1-V3,购买多给两级 // new 2025.06.25 V1-V3升级多送两级,可以继续购买升级 - Integer pkGrade = bdGrade.getPkId(); // 临时处理等级 BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); From 4763f9163300aeb829f4f9c4872a150dcc173fcc Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 21:26:15 +0800 Subject: [PATCH 045/362] =?UTF-8?q?##=20=E5=9C=A8=E7=BA=BF=E6=94=AF?= =?UTF-8?q?=E4=BB=98=E5=A4=84=E7=90=86=E5=A4=9A=E9=80=81=E4=B8=A4=E7=BA=A7?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/service/impl/RetailOrderServiceImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 9ff3781e..5cd598b8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -719,8 +719,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - newMember.setPkSettleGrade(registerParam.getPkGrade()); - newMember.setPkAwards(registerParam.getPkAwards()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade()); + newMember.setPkSettleGrade(tmpGrade.getPkId()); + newMember.setPkAwards(tmpGrade.getPkAwards()); saOrderExt.setPkMember(newMember.getPkId()); From e4b7fef2e580cfd3eb05f7b867cf6437ddb85f71 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 21:26:15 +0800 Subject: [PATCH 046/362] =?UTF-8?q?##=20=E5=9C=A8=E7=BA=BF=E6=94=AF?= =?UTF-8?q?=E4=BB=98=E5=A4=84=E7=90=86=E5=A4=9A=E9=80=81=E4=B8=A4=E7=BA=A7?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/service/impl/RetailOrderServiceImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 9ff3781e..5cd598b8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -719,8 +719,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - newMember.setPkSettleGrade(registerParam.getPkGrade()); - newMember.setPkAwards(registerParam.getPkAwards()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade()); + newMember.setPkSettleGrade(tmpGrade.getPkId()); + newMember.setPkAwards(tmpGrade.getPkAwards()); saOrderExt.setPkMember(newMember.getPkId()); From 3d82fb8fc0e724cff29a99804bd0d147f981fa9b Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 21 Jul 2025 09:26:10 +0800 Subject: [PATCH 047/362] =?UTF-8?q?##=20Opt=20-=20=E5=95=86=E5=93=81?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wares/controller/manage/BdWaresController.java | 8 ++++++-- .../com/hzs/sale/wares/service/IBdWaresService.java | 5 +++++ .../sale/wares/service/impl/BdWaresServiceImpl.java | 10 ++++++++++ .../main/resources/mapper/sale/wares/BdWaresMapper.xml | 4 ++-- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index a4ab0b76..39df481e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -297,7 +297,7 @@ public class BdWaresController extends BaseController { if (!isPutOn) { return AjaxResult.error("产品规格至少有一个上架"); } - wares.setSort(0); +// wares.setSort(0); iBdWaresService.saveWares(wares, userTokenService.getLoginUser()); return AjaxResult.success(wares.getWaresCode()); } @@ -429,7 +429,7 @@ public class BdWaresController extends BaseController { } } - waresParams.setSort(0); +// waresParams.setSort(0); iBdWaresService.updateWares(waresParams, userTokenService.getLoginUser()); return AjaxResult.success(waresParams.getWaresCode()); } @@ -794,6 +794,10 @@ public class BdWaresController extends BaseController { String waresCode = CreateNormsCodeUtils.createWaresCode(iBdWaresService.getLastWaresCode()); return AjaxResult.success(waresCode); } + @GetMapping("/getMaxSortNum") + public AjaxResult getMaxSortNum() { + return AjaxResult.success("请求成功!", iBdWaresService.getMaxSortNum()); + } /** * 商品序号创建 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index fb836c13..57410693 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -23,6 +23,11 @@ import java.util.Map; */ public interface IBdWaresService extends IService { + /** + * 获取最大排序值 + * @return + */ + int getMaxSortNum(); /** * 新增商品基础信息 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 440668e7..0fdf6c5a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1,6 +1,7 @@ package com.hzs.sale.wares.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -88,6 +89,15 @@ public class BdWaresServiceImpl extends ServiceImpl impl @DubboReference IRangeServiceApi iRangeServiceApi; + @Override + public int getMaxSortNum() { + Integer maxSort = this.getMaxSort(SecurityUtils.getPkCountry()); + if(ObjectUtil.isNotEmpty(maxSort)){ + return maxSort + 1; + } + return 1; + } + @Override @Transactional(rollbackFor = Exception.class) public BdWares saveWares(WaresParams waresParams, LoginUser user) { diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index fcb01e90..4ab09698 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -232,7 +232,7 @@ and bw.WARES_STATUS <= #{waresStatus} - order by bw.SORT_STATUS desc , bw.WARES_PRICE ,bw.CREATION_TIME desc + order by bw.sort desc, bw.CREATION_TIME desc From c9578916a312d1037bae8c08629078de753e4bc5 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 21 Jul 2025 09:26:10 +0800 Subject: [PATCH 048/362] =?UTF-8?q?##=20Opt=20-=20=E5=95=86=E5=93=81?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wares/controller/manage/BdWaresController.java | 8 ++++++-- .../com/hzs/sale/wares/service/IBdWaresService.java | 5 +++++ .../sale/wares/service/impl/BdWaresServiceImpl.java | 10 ++++++++++ .../main/resources/mapper/sale/wares/BdWaresMapper.xml | 4 ++-- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index a4ab0b76..39df481e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -297,7 +297,7 @@ public class BdWaresController extends BaseController { if (!isPutOn) { return AjaxResult.error("产品规格至少有一个上架"); } - wares.setSort(0); +// wares.setSort(0); iBdWaresService.saveWares(wares, userTokenService.getLoginUser()); return AjaxResult.success(wares.getWaresCode()); } @@ -429,7 +429,7 @@ public class BdWaresController extends BaseController { } } - waresParams.setSort(0); +// waresParams.setSort(0); iBdWaresService.updateWares(waresParams, userTokenService.getLoginUser()); return AjaxResult.success(waresParams.getWaresCode()); } @@ -794,6 +794,10 @@ public class BdWaresController extends BaseController { String waresCode = CreateNormsCodeUtils.createWaresCode(iBdWaresService.getLastWaresCode()); return AjaxResult.success(waresCode); } + @GetMapping("/getMaxSortNum") + public AjaxResult getMaxSortNum() { + return AjaxResult.success("请求成功!", iBdWaresService.getMaxSortNum()); + } /** * 商品序号创建 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index fb836c13..57410693 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -23,6 +23,11 @@ import java.util.Map; */ public interface IBdWaresService extends IService { + /** + * 获取最大排序值 + * @return + */ + int getMaxSortNum(); /** * 新增商品基础信息 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 440668e7..0fdf6c5a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1,6 +1,7 @@ package com.hzs.sale.wares.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -88,6 +89,15 @@ public class BdWaresServiceImpl extends ServiceImpl impl @DubboReference IRangeServiceApi iRangeServiceApi; + @Override + public int getMaxSortNum() { + Integer maxSort = this.getMaxSort(SecurityUtils.getPkCountry()); + if(ObjectUtil.isNotEmpty(maxSort)){ + return maxSort + 1; + } + return 1; + } + @Override @Transactional(rollbackFor = Exception.class) public BdWares saveWares(WaresParams waresParams, LoginUser user) { diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index fcb01e90..4ab09698 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -232,7 +232,7 @@ and bw.WARES_STATUS <= #{waresStatus} - order by bw.SORT_STATUS desc , bw.WARES_PRICE ,bw.CREATION_TIME desc + order by bw.sort desc, bw.CREATION_TIME desc From 7e5c94c6e3dffbf641251bbf8df96c2269cb9466 Mon Sep 17 00:00:00 2001 From: woody Date: Fri, 18 Jul 2025 14:14:13 +0800 Subject: [PATCH 049/362] =?UTF-8?q?feat(MemberBonusFirstPurchaseVo):=20?= =?UTF-8?q?=E5=A5=96=E9=87=91=E6=98=8E=E7=BB=86=E4=BF=9D=E7=95=99=E4=B8=A4?= =?UTF-8?q?=E4=BD=8D=E5=B0=8F=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/vo/MemberBonusFirstPurchaseVO.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java index 86d193ca..0e7cfaa5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java @@ -38,7 +38,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 商城重消 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal backPoints; // // /** @@ -59,7 +59,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 复购级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal repurRangeIncome; // /** @@ -76,55 +76,55 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { /** * 新零售直推收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailRangeIncome; /** * 新零售平级收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailSameLevelIncome; /** * 新零售区域分红 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailAreaIncome; /** * 福利级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailBenefitRangeIncome; /** * 复购级差收益 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailMonthRepurchaseIncome; /** * 培育津贴 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal coachIncome; /** * 福利分红收益总计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailBenefitIncomeTotal; /** * 新零售收益小计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal retailRealSubtotal; /** * 实发收益总计 */ - @BigDecimalFormat("#0.0000") + @BigDecimalFormat("#0.00") private BigDecimal realIncomeTotal; } From 471f248e192faa7125edb4b3f1127385da85e812 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:19:57 +0800 Subject: [PATCH 050/362] =?UTF-8?q?##=20=E5=A5=96=E9=87=91=E6=8B=A8?= =?UTF-8?q?=E6=AF=94=E7=BB=9F=E8=AE=A1=E6=8A=A5=E9=94=99=EF=BC=88299?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CuBonusVertexStatisTotalController.java | 28 ++++++------------- .../member/statis/CuBonusStatisMapper.xml | 7 ++--- .../statis/CuBonusVertexStatisMapper.xml | 16 +++++------ 3 files changed, 18 insertions(+), 33 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java index 82bb9390..bd9962d6 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java @@ -101,20 +101,9 @@ public class CuBonusVertexStatisTotalController extends BaseController { startPage(); //查询顶点奖金拨比汇总 slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); - //查询顶点奖金拨比汇总总和(最后一行) - CuBonusVertexStatisTotalVO cuBonusVertexStatisSum = iCuBonusVertexStatisService.queryCuBonusStatisSum(cuBonusVertexStatisTotalVO); - cuBonusVertexStatisSum.setMainBonus((cuBonusVertexStatisSum.getMainBonus()).multiply(currency.getData().getInExchangeRate())); - cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { -// if (itm.getPkVertex().equals(itmm.getPkVertex())) { -// itm.setFirstPurchaseAll(itm.getFirstPurchaseAll().subtract(itmm.getOrderAmount()).add(itmm.getEnergySum())); -// itm.setOrgTopNumber(itmm.getOrgTopNumber()); -// itm.setOrgAvTouch(itmm.getOrgAvTouch()); -// itm.setOrgMaxTouch(itmm.getOrgMaxTouch()); -// } - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -136,7 +125,14 @@ public class CuBonusVertexStatisTotalController extends BaseController { itm.setFirstPurchaseRatio(cent.multiply(itm.getFirstPurchaseAll()).divide(cuBonusVertexStatisTotalVO.getFirstPurchaseAllSum(), 4, RoundingMode.HALF_UP)); } }); - cuBonusVertexStatisSum.setMemberName("汇总"); + + //查询顶点奖金拨比汇总总和(最后一行) + CuBonusVertexStatisTotalVO cuBonusVertexStatisSum = iCuBonusVertexStatisService.queryCuBonusStatisSum(cuBonusVertexStatisTotalVO); + if (null != cuBonusVertexStatisSum) { + cuBonusVertexStatisSum.setMainBonus((cuBonusVertexStatisSum.getMainBonus()).multiply(currency.getData().getInExchangeRate())); + cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); + cuBonusVertexStatisSum.setMemberName("汇总"); + } slList.add(cuBonusVertexStatisSum); return getDataTable(slList); } @@ -199,14 +195,6 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisSum.setRepurBonus(cuBonusVertexStatisSum.getRepurBonus().multiply(currency.getData().getInExchangeRate())); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { - -// if (itm.getPkVertex().equals(itmm.getPkVertex())) { -// itm.setFirstPurchaseAll(itm.getFirstPurchaseAll().subtract(itmm.getOrderAmount()).add(itmm.getEnergySum())); -// itm.setOrgTopNumber(itmm.getOrgTopNumber()); -// itm.setOrgAvTouch(itmm.getOrgAvTouch()); -// itm.setOrgMaxTouch(itmm.getOrgMaxTouch()); -// } - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml index 5c0df57d..5c10640b 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml @@ -525,7 +525,6 @@ sum (cbs.ORG_BONUS) orgBonusSum, sum (cbs.LEADER_BONUS) leaderBonusSum, #{orderAchieve} shareBonusSum, - #{energyAmountAll} energyAmountAllSum, sum (cbs.SERVICE_BONUS) serviceBonusSum, sum (cbs.HI_FUN_INCOME) hiFunIncomeSum, sum (cbs.REPUR_RANGE_BONUS) repurRangeBonusSum, @@ -558,7 +557,7 @@ ROUND(sum(#{perCent}*AGENT_REPUR_AMOUNT)/(sum(cbs.AGENT_REG_AMOUNT + cbs.AGENT_UP_AMOUNT+cbs.AGENT_REPUR_AMOUNT)),4) end as agentRepurAmountRateSum, ((sum(cbs.MAIN_REG_AMOUNT + - cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))-#{energySub}+#{energySum}) AS + cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))) AS firstPurchaseAllSum, ( sum(cbs.MAIN_REPUR_AMOUNT + cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT @@ -574,7 +573,7 @@ = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS+cbs.ORG_BONUS+cbs.LEADER_BONUS+cbs.SERVICE_BONUS +cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}+#{energySum}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS mainBonusRateSum, CASE WHEN @@ -624,7 +623,7 @@ (sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT+ cbs.MAIN_REPUR_AMOUNT+cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT +cbs.EMPOWERMENT_GIFT_AMOUNT+cbs.COOPERATE_AMOUNT+cbs.SPECIAL_REPURCHASE_AMOUNT - +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)-#{energySub}+#{energySum}),4) end AS totalBonusRateSum + +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)),4) end AS totalBonusRateSum FROM CU_BONUS_STATIS cbs left join bd_vertex ver on cbs.pk_bd_vertex = ver.pk_id diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml index 9d79ec7d..15078ada 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml @@ -418,7 +418,6 @@ sum (cbs.INTRODUCE_BONUS) introduceBonus, sum (cbs.ORG_BONUS) orgBonus, sum (cbs.LEADER_BONUS) leaderBonus, - #{energyAmountAll} energyAmountAll, sum (cbs.SERVICE_BONUS) serviceBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) @@ -538,24 +537,23 @@ sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS introduceBonusRate, sum (cbs.ORG_BONUS) orgBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.ORG_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS orgBonusRate, sum (cbs.LEADER_BONUS) leaderBonus, - #{energyAmountAll} energyAmountAll, sum (cbs.SERVICE_BONUS) serviceBonus, CASE WHEN sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.SERVICE_BONUS))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS serviceBonusRate, sum (cbs.HI_FUN_INCOME) hiFunIncome, sum (cbs.REPUR_RANGE_BONUS) repurRangeBonus, @@ -566,10 +564,10 @@ sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT) = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS makerRate, ((sum(cbs.MAIN_REG_AMOUNT + - cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))-#{energySub}) AS + cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT))) AS firstPurchaseAll, ( sum(cbs.MAIN_REPUR_AMOUNT + cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT @@ -582,7 +580,7 @@ = 0 THEN 0 ELSE ROUND(((#{perCent}*sum(cbs.INTRODUCE_BONUS+cbs.ORG_BONUS+cbs.LEADER_BONUS+cbs.SERVICE_BONUS +cbs.MAKER_DIRECT+cbs.MAKER_SHARE))) - /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)-#{energySub}),4) + /(sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT)),4) end AS mainBonusRate, CASE WHEN @@ -632,7 +630,7 @@ (sum(cbs.MAIN_REG_AMOUNT+cbs.MAIN_UP_AMOUNT+cbs.SPECIAL_REGISTER_AMOUNT+cbs.SPECIAL_UPGRADE_AMOUNT+cbs.FICTITIOUS_AMOUNT+ cbs.MAIN_REPUR_AMOUNT+cbs.HIFANS_REG_AMOUNT+cbs.HAI_FUN_UPGRADE_AMOUNT+cbs.CLOUD_COLLEGE_AMOUNT+cbs.MALL_AMOUNT +cbs.EMPOWERMENT_GIFT_AMOUNT+cbs.COOPERATE_AMOUNT+cbs.SPECIAL_REPURCHASE_AMOUNT - +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)-#{energySub}+#{energySum}),4) end AS totalBonusRate + +cbs.MAKER_ORDER+cbs.MAKER_GIFT_AMOUNT+cbs.WELFARE_ORDER)),4) end AS totalBonusRate FROM CU_BONUS_VERTEX_STATIS cbs LEFT JOIN CU_MEMBER cm ON cm.PK_ID = cbs.PK_BD_VERTEX From d0a0bbb33590523358ec482930a3ac37ec582e14 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:27:25 +0800 Subject: [PATCH 051/362] =?UTF-8?q?##=20=E8=BF=81=E7=A7=BB=E6=80=BB?= =?UTF-8?q?=E8=A3=81=E9=9D=A2=E6=9D=BF=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../board/controller/BoardController.java | 139 ++++++++++ .../hzs/system/board/mapper/BoardMapper.java | 50 ++++ .../system/board/service/IBoardService.java | 50 ++++ .../board/service/impl/BoardServiceImpl.java | 48 ++++ .../hzs/system/board/vo/BoardAchieveVO.java | 50 ++++ .../system/board/vo/BoardDayAchieveVO.java | 23 ++ .../system/board/vo/BoardMemberLevelVO.java | 28 ++ .../hzs/system/board/vo/BoardMemberVO.java | 46 ++++ .../board/vo/BoardRechargeAccountVO.java | 31 +++ .../hzs/system/board/vo/BoardRechargeVO.java | 30 +++ .../mapper/system/board/BoardMapper.xml | 244 ++++++++++++++++++ .../core/constant/MagicNumberConstants.java | 7 + .../hzs/common/core/utils/BarCodeUtils.java | 6 +- .../hzs/common/core/utils/BigDecimalUtil.java | 20 ++ .../hzs/common/core/utils/CreatePassword.java | 59 ----- .../common/core/utils/DeduplicationUtil.java | 21 +- .../common/core/utils/DistinctByKeyUtil.java | 17 +- .../common/core/utils/NacosSecretUtil.java | 29 --- .../com/hzs/common/core/utils/NumberUtil.java | 8 +- .../com/hzs/common/core/utils/OssUtil.java | 2 - .../com/hzs/common/core/utils/PageUtils.java | 2 - .../hzs/common/core/utils/ServletUtils.java | 2 - .../hzs/common/core/utils/SpringUtils.java | 2 - .../common/core/utils/StringJsonUtils.java | 14 +- .../hzs/common/core/utils/ThreadUtils.java | 6 +- .../hzs/common/core/utils/UploadFileUtil.java | 6 +- .../core/utils/poi/ExcelHandlerAdapter.java | 2 - .../hzs/common/core/utils/poi/ExcelUtil.java | 2 - .../core/utils/reflect/ReflectUtils.java | 2 - .../common/core/utils/sign/Base64Util.java | 2 - .../hzs/common/core/utils/sql/SqlUtil.java | 2 - .../hzs/common/core/utils/uuid/IdUtils.java | 2 - .../com/hzs/common/core/utils/uuid/Seq.java | 2 +- .../com/hzs/common/core/utils/uuid/UUID.java | 2 - 34 files changed, 781 insertions(+), 175 deletions(-) create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java create mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java create mode 100644 bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java new file mode 100644 index 00000000..b12a6c25 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/controller/BoardController.java @@ -0,0 +1,139 @@ +package com.hzs.system.board.controller; + +import cn.hutool.core.collection.CollectionUtil; +import com.hzs.common.core.utils.BigDecimalUtil; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.system.board.service.IBoardService; +import com.hzs.system.board.vo.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * 首页看板 控制器 + */ +@RestController +@RequestMapping("/manage/board") +public class BoardController extends BaseController { + + @Autowired + private IBoardService iBoardService; + + /** + * 会员汇总数据 + * + * @return + */ + @GetMapping("/member-summary") + public AjaxResult memberSummary() { + // 会员汇总数据 + BoardMemberVO boardMemberVO = iBoardService.getMemberBoard(); + boardMemberVO.setMemberTodayLevelList(new ArrayList<>(6)); + boardMemberVO.setMemberYesterdayLevelList(new ArrayList<>(6)); + boardMemberVO.setMemberMonthLevelList(new ArrayList<>(6)); + + // 会员各等级数据 + List levelList = iBoardService.listMemberLevelBoard(); + + for (BoardMemberLevelVO boardMemberLevelVO : levelList) { + if (boardMemberLevelVO.getSort() == 0) { + // 今日 + boardMemberVO.getMemberTodayLevelList().add(boardMemberLevelVO); + } else if (boardMemberLevelVO.getSort() == 1) { + // 昨日 + boardMemberVO.getMemberYesterdayLevelList().add(boardMemberLevelVO); + } else { + // 本月 + boardMemberVO.getMemberMonthLevelList().add(boardMemberLevelVO); + } + } + return AjaxResult.success(boardMemberVO); + } + + /** + * 日业绩数据 + * + * @return + */ + @GetMapping("/day-achieve") + public AjaxResult dayAchieve() { + // 返回数据VO + BoardDayAchieveVO resultVO = new BoardDayAchieveVO(); + + List dayAchieveList = iBoardService.getDayAchieve(); + if (CollectionUtil.isNotEmpty(dayAchieveList)) { + for (BoardAchieveVO boardAchieveVO : dayAchieveList) { + if (boardAchieveVO.getSort() == 0) { + resultVO.setToday(BoardAchieveVO.builder() + .firstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())) + .firstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())) + .repAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())) + .repAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())) + .build()); + } else { + resultVO.setYesterday(BoardAchieveVO.builder() + .firstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())) + .firstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())) + .repAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())) + .repAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())) + .build()); + } + } + } + + return AjaxResult.success(resultVO); + } + + /** + * 月业绩数据 + * + * @return + */ + @GetMapping("/month-achieve") + public AjaxResult monthAchieve() { + BoardAchieveVO boardAchieveVO = iBoardService.getMonthAchieve(); + boardAchieveVO.setFirstAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAchieve())); + boardAchieveVO.setFirstAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getFirstAmount())); + boardAchieveVO.setRepAchieve(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAchieve())); + boardAchieveVO.setRepAmount(BigDecimalUtil.handleBig10000Down(boardAchieveVO.getRepAmount())); + return AjaxResult.success(boardAchieveVO); + } + + /** + * 充值汇总数据 + * + * @return + */ + @GetMapping("/recharge-summary") + public AjaxResult rechargeSummary() { + BoardRechargeVO boardRechargeVO = new BoardRechargeVO(); + boardRechargeVO.setRechargeTodayList(new ArrayList<>(6)); + boardRechargeVO.setRechargeYesterdayLevelList(new ArrayList<>(6)); + boardRechargeVO.setRechargeMonthLevelList(new ArrayList<>(6)); + + // 会员汇总数据 + List rechargeList = iBoardService.listAccountRechargeBoard(); + + for (BoardRechargeAccountVO boardMemberVO : rechargeList) { + // 充值金额按万处理 + boardMemberVO.setRechargeAmount(BigDecimalUtil.handleBig10000Down(boardMemberVO.getRechargeAmount())); + if (boardMemberVO.getSort() == 0) { + // 今日 + boardRechargeVO.getRechargeTodayList().add(boardMemberVO); + } else if (boardMemberVO.getSort() == 1) { + // 昨日 + boardRechargeVO.getRechargeYesterdayLevelList().add(boardMemberVO); + } else { + // 本月 + boardRechargeVO.getRechargeMonthLevelList().add(boardMemberVO); + } + } + return AjaxResult.success(boardRechargeVO); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java new file mode 100644 index 00000000..752f2d4e --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/mapper/BoardMapper.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.mapper; + +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; + +import java.util.List; + +/** + * 首页看板 mapper + */ +public interface BoardMapper { + + /** + * 查询会员汇总数据 + * + * @return + */ + BoardMemberVO getMemberBoard(); + + /** + * 查询会员等级数据 + * + * @return + */ + List listMemberLevelBoard(); + + /** + * 查询日业绩汇总数据 + * + * @return + */ + List getDayAchieve(); + + /** + * 查询月业绩汇总数据 + * + * @return + */ + BoardAchieveVO getMonthAchieve(); + + /** + * 各币种充值数据 + * + * @return + */ + List listAccountRechargeBoard(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java new file mode 100644 index 00000000..50b4808b --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/IBoardService.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.service; + +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; + +import java.util.List; + +/** + * 首页看板 service + */ +public interface IBoardService { + + /** + * 查询会员汇总数据 + * + * @return + */ + BoardMemberVO getMemberBoard(); + + /** + * 查询会员等级数据 + * + * @return + */ + List listMemberLevelBoard(); + + /** + * 查询日业绩汇总数据 + * + * @return + */ + List getDayAchieve(); + + /** + * 查询月业绩汇总数据 + * + * @return + */ + BoardAchieveVO getMonthAchieve(); + + /** + * 各币种充值数据 + * + * @return + */ + List listAccountRechargeBoard(); + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java new file mode 100644 index 00000000..6794feb9 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/service/impl/BoardServiceImpl.java @@ -0,0 +1,48 @@ +package com.hzs.system.board.service.impl; + +import com.hzs.system.board.mapper.BoardMapper; +import com.hzs.system.board.service.IBoardService; +import com.hzs.system.board.vo.BoardAchieveVO; +import com.hzs.system.board.vo.BoardMemberLevelVO; +import com.hzs.system.board.vo.BoardMemberVO; +import com.hzs.system.board.vo.BoardRechargeAccountVO; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 首页看板 service + */ +@Service +public class BoardServiceImpl implements IBoardService { + + @Resource + private BoardMapper boardMapper; + + @Override + public BoardMemberVO getMemberBoard() { + return boardMapper.getMemberBoard(); + } + + @Override + public List listMemberLevelBoard() { + return boardMapper.listMemberLevelBoard(); + } + + @Override + public List getDayAchieve() { + return boardMapper.getDayAchieve(); + } + + @Override + public BoardAchieveVO getMonthAchieve() { + return boardMapper.getMonthAchieve(); + } + + @Override + public List listAccountRechargeBoard() { + return boardMapper.listAccountRechargeBoard(); + } + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java new file mode 100644 index 00000000..7e8d9e29 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardAchieveVO.java @@ -0,0 +1,50 @@ +package com.hzs.system.board.vo; + +import com.hzs.common.core.annotation.BigDecimalFormat; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 看板业绩汇总数据 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class BoardAchieveVO implements Serializable { + + /** + * 首购业绩 + */ + @BigDecimalFormat + private BigDecimal firstAchieve; + + /** + * 首购金额 + */ + @BigDecimalFormat + private BigDecimal firstAmount; + + /** + * 复购业绩 + */ + @BigDecimalFormat + private BigDecimal repAchieve; + + /** + * 复购金额 + */ + @BigDecimalFormat + private BigDecimal repAmount; + + /** + * 序号 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java new file mode 100644 index 00000000..0f7ccaaf --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardDayAchieveVO.java @@ -0,0 +1,23 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 看板业绩汇总数据返回 + */ +@Data +public class BoardDayAchieveVO implements Serializable { + + /** + * 今日 + */ + private BoardAchieveVO today; + + /** + * 昨日 + */ + private BoardAchieveVO yesterday; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java new file mode 100644 index 00000000..76cf0113 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberLevelVO.java @@ -0,0 +1,28 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; + +/** + * 看板会员等级数据 + */ +@Data +public class BoardMemberLevelVO implements Serializable { + + /** + * 等级名称 + */ + private String gradeName; + + /** + * 会员数量 + */ + private Integer memberTotal; + + /** + * 0=今日,1=昨日,2=当月 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java new file mode 100644 index 00000000..f3525112 --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardMemberVO.java @@ -0,0 +1,46 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 看板会员汇总数据 + */ +@Data +public class BoardMemberVO implements Serializable { + + /** + * 会员总数 + */ + private Integer memberTotal; + + /** + * 今日新増会员 + */ + private Integer memberToday; + /** + * 今日会员等级 + */ + private List memberTodayLevelList; + + /** + * 昨日新増会员 + */ + private Integer memberYesterday; + /** + * 昨日会员等级 + */ + private List memberYesterdayLevelList; + + /** + * 本月新増会员 + */ + private Integer memberMonth; + /** + * 本月会员等级 + */ + private List memberMonthLevelList; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java new file mode 100644 index 00000000..c91e61ea --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeAccountVO.java @@ -0,0 +1,31 @@ +package com.hzs.system.board.vo; + +import com.hzs.common.core.annotation.BigDecimalFormat; +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 看板各币种充值数据 + */ +@Data +public class BoardRechargeAccountVO implements Serializable { + + /** + * 账户名称 + */ + private String accountName; + + /** + * 充值金额 + */ + @BigDecimalFormat + private BigDecimal rechargeAmount; + + /** + * 0=今日,1=昨日,2=当月 + */ + private Integer sort; + +} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java new file mode 100644 index 00000000..03a6002a --- /dev/null +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/board/vo/BoardRechargeVO.java @@ -0,0 +1,30 @@ +package com.hzs.system.board.vo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * 看板充值数据 + */ +@Data +public class BoardRechargeVO implements Serializable { + + /** + * 今日充值 + */ + private List rechargeTodayList; + + /** + * 昨日充值 + */ + private List rechargeYesterdayLevelList; + + /** + * 本月充值 + */ + private List rechargeMonthLevelList; + + +} diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml new file mode 100644 index 00000000..98c5720a --- /dev/null +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml @@ -0,0 +1,244 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index 576f03e7..32025a8c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -1,5 +1,7 @@ package com.hzs.common.core.constant; +import java.math.BigDecimal; + /** * 魔法数字常量类 */ @@ -99,4 +101,9 @@ public class MagicNumberConstants { */ public static final Integer WITHDRAW_MULTIPLE = 100; + /** + * 转换万处理 + */ + public static final BigDecimal big10000 = new BigDecimal("10000"); + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java index 3cb78656..d517d657 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BarCodeUtils.java @@ -14,11 +14,7 @@ import java.util.HashMap; import java.util.Map; /** - * @author: sui q - * @time: 2021/11/23 11:02 - * @description: 条形码+文字 生成 - * @classname: BarCodeUtils - * @package_name: com.hzs.web.util + * sui q */ @Slf4j public class BarCodeUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java new file mode 100644 index 00000000..ec61fad4 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BigDecimalUtil.java @@ -0,0 +1,20 @@ +package com.hzs.common.core.utils; + +import com.hzs.common.core.constant.MagicNumberConstants; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +public class BigDecimalUtil { + + /** + * 除万取2位小数并且去尾 + * + * @param bigDecimal + * @return + */ + public static BigDecimal handleBig10000Down(BigDecimal bigDecimal) { + return bigDecimal.divide(MagicNumberConstants.big10000, 2, RoundingMode.DOWN); + } + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java deleted file mode 100644 index 9c806432..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/CreatePassword.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.common.core.utils; - -/** - * @Description: 自动生成密码 暂时先不使用 - * @Author: sui q - * @Time: 2022/9/9 14:52 - * @Classname: CreatePassword - * @PackageName: com.hzs.common.core.utils - */ -public class CreatePassword { - - /** - * @Description: 生成密码 - * @param len 密码长度 - * @return: String - * @Author: sui q - * @Date: 2022/9/9 14:53 - */ - public static String generatePassword(int len) { - // 1、定义基本字符串baseStr和出参password - StringBuilder password = null; - String baseStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ~!@#$%^&*()_+{}|<>?"; - boolean flag = false; - // 2、使用循环来判断是否是正确的密码 - while (!flag) { - // 密码重置 - password = new StringBuilder(); - // 个数计数 - int a = 0, b = 0, c = 0, d = 0; - for (int i = 0; i < len; i++) { - int rand = (int) (Math.random() * baseStr.length()); - password.append(baseStr.charAt(rand)); - if (rand < 10) { - a++; - } - if (10 <= rand && rand < 36) { - b++; - } - if (36 <= rand && rand < 62) { - c++; - } - if (62 <= rand) { - d++; - } - if (a * b * c * d != 0) { - break; - } - } - // 是否是正确的密码(4类中仅一类为0,其他不为0) - flag = (a * b * c != 0 && d == 0) || (a * b * d != 0 && c == 0) || (a * c * d != 0 && b == 0) - || (b * c * d != 0 && a == 0); - } - return password.toString(); - } - - public static void main(String[] args) { - System.out.println(generatePassword(6)); - } -} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java index 063bc2cc..63da6925 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DeduplicationUtil.java @@ -1,25 +1,12 @@ -package com.hzs.common.core.utils;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 9:55 - * @Classname: DeduplicationUtil - * @PackageName: com.hzs.common.core.utils - */ +package com.hzs.common.core.utils; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; import java.util.function.Predicate; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.common.core.utils - *@Author: yh - *@CreateTime: 2023-06-06 09:55 - *@Description: TODO - *@Version: 1.0 - */ public class DeduplicationUtil { + /** * 自定义函数去重(采用 Predicate函数式判断,采用 Function获取比较key) * 内部维护一个 ConcurrentHashMap,并采用 putIfAbsent特性实现 @@ -29,7 +16,7 @@ public class DeduplicationUtil { * @return */ public static Predicate distinctByKey(Function keyExtractor) { - Map seen = new ConcurrentHashMap<>(); + Map seen = new ConcurrentHashMap<>(); return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) == null; } @@ -41,7 +28,7 @@ public class DeduplicationUtil { * @return */ public static Predicate distinctNotByKey(Function keyExtractor) { - Map seen = new ConcurrentHashMap<>(); + Map seen = new ConcurrentHashMap<>(); return t -> seen.putIfAbsent(keyExtractor.apply(t), Boolean.TRUE) != null; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java index 025062b7..6959bf8e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DistinctByKeyUtil.java @@ -1,27 +1,14 @@ -package com.hzs.common.core.utils;/** - * @Description: - * @Author: yuhui - * @Time: 2023/3/10 15:56 - * @Classname: distinctByKeyUtil - * @PackageName: com.hzs.common.core.utils - */ +package com.hzs.common.core.utils; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; import java.util.function.Function; import java.util.function.Predicate; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.common.core.utils - *@Author: yh - *@CreateTime: 2023-03-10 15:56 - *@Description: TODO - *@Version: 1.0 - */ public class DistinctByKeyUtil { /** * 对象根据某一值去重 + * * @param keyExtractor * @param * @return diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java deleted file mode 100644 index 97b37fed..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NacosSecretUtil.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.common.core.utils; - - - -import com.hzs.common.core.utils.sign.Base64Util; -import org.springframework.util.Base64Utils; - -import java.nio.charset.StandardCharsets; - -/** - * @Description: - * @Author: ljc - * @Time: 2024/8/20 9:38 - * @Classname: NacosSecretUtil - * @Package_name: com.hzs - */ -public class NacosSecretUtil { - - public static void main(String[] args) { - // 自定义生成JWT令牌的密钥 - String nacosSecret = "smYhZs_20240820_UNkSTzy_formY_toKen"; - // 输出密钥长度,要求不得低于32字符,否则无法启动节点。 - System.out.println("密钥长度》》》" + nacosSecret.length()); - // 密钥进行Base64编码 - byte[] data = nacosSecret.getBytes(StandardCharsets.UTF_8); - System.out.println("密钥Base64编码》》》" + Base64Utils.encodeToString(data)); - System.out.println("密钥Base64编码》》》" + Base64Util.encode(data)); - } -} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java index 7da4aa41..4dbb4f88 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/NumberUtil.java @@ -2,17 +2,11 @@ package com.hzs.common.core.utils; import java.text.DecimalFormat; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/12/2 14:12 - * @Classname: NumberUtil - * @PackageName: com.hzs.common.core.utils - */ public class NumberUtil { /** * 获取百分比 + * * @param number1 / * @param number2 总数/ * @return java.lang.String / diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java index 283c5344..0c2c5ff3 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/OssUtil.java @@ -14,8 +14,6 @@ import java.io.InputStream; /** * OSS 使用工具 - * - * @author: jiiangchao */ @Slf4j public class OssUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java index c0b34b76..a0c4bb29 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/PageUtils.java @@ -7,8 +7,6 @@ import com.hzs.common.core.web.page.TableSupport; /** * 分页工具类 - * - * @author hzs */ public class PageUtils extends PageHelper { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java index ab6e8062..35e4947f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ServletUtils.java @@ -27,8 +27,6 @@ import reactor.core.publisher.Mono; /** * 客户端工具类 - * - * @author hzs */ public class ServletUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java index 391cd718..be98b362 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/SpringUtils.java @@ -9,8 +9,6 @@ import org.springframework.stereotype.Component; /** * spring工具类 方便在非spring管理环境中获取bean - * - * @author hzs */ @Component public final class SpringUtils implements BeanFactoryPostProcessor { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java index ff59796e..f5d227d8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/StringJsonUtils.java @@ -7,13 +7,7 @@ import com.alibaba.fastjson2.JSONObject; import java.util.*; /** - * description: 将json串转化为map类型 - * - * @author: sui q - * @time: 2023/4/3 14:17 - * @classname: StringJsonUtils - * @package_name: com.hzs.common.core.utils - * version 1.0.0 + * 将json串转化为map类型 */ public class StringJsonUtils { @@ -50,10 +44,10 @@ public class StringJsonUtils { for (int j = 0; j < jsonArray.size(); j++) { // JSONObject reagobj = JSONObject.parseObject(jsonStr); Object object = jsonArray.get(j); - if(object instanceof String){ + if (object instanceof String) { jsonArray.set(j, jsonArray.get(j).toString().trim()); - }else{ - if(jsonArray.get(j) instanceof JSONObject){ + } else { + if (jsonArray.get(j) instanceof JSONObject) { JSONObject reagobj = (JSONObject) jsonArray.get(j); handleJsonObject(reagobj); jsonArray.set(j, reagobj); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java index a1b48ce4..3dbbd066 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java @@ -6,11 +6,7 @@ import org.springframework.stereotype.Component; import java.util.concurrent.*; /** - * Description: 线程工具类 - * Author: jiang chao - * Time: 2022/8/30 10:10 - * Classname: ThreadUtil - * PackageName: com.hzs.common.core.utils + * 线程工具类 */ @Slf4j @Component diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java index 4cc535dd..1388c7f3 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/UploadFileUtil.java @@ -8,11 +8,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.*; /** - * @Description: 文件上传工具 - * @Author: jiang chao - * @Time: 2023/1/13 11:24 - * @Classname: UploadUtil - * @PackageName: com.hzs.member.tool + * 文件上传工具 */ @Slf4j public class UploadFileUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java index 7d563a9d..a566f064 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelHandlerAdapter.java @@ -2,8 +2,6 @@ package com.hzs.common.core.utils.poi; /** * Excel数据格式处理适配器 - * - * @author hzs */ public interface ExcelHandlerAdapter { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java index 381d3be9..769743de 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/poi/ExcelUtil.java @@ -62,8 +62,6 @@ import com.hzs.common.core.utils.reflect.ReflectUtils; /** * Excel相关处理 - * - * @author hzs */ @Slf4j public class ExcelUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java index 452df287..77b86c63 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/reflect/ReflectUtils.java @@ -18,8 +18,6 @@ import com.hzs.common.core.utils.DateUtils; /** * 反射工具类. 提供调用getter/setter方法, 访问私有变量, 调用私有方法, 获取泛型类型Class, 被AOP过的真实类等工具函数. - * - * @author hzs */ @Slf4j @SuppressWarnings("rawtypes") diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java index 16446e79..65a9b5b1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sign/Base64Util.java @@ -8,8 +8,6 @@ import java.net.URL; /** * Base64工具类 - * - * @author hzs */ public final class Base64Util { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java index 86224702..0c3f0c05 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/sql/SqlUtil.java @@ -5,8 +5,6 @@ import com.hzs.common.core.utils.StringUtils; /** * sql操作工具类 - * - * @author hzs */ public class SqlUtil { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java index 8614d146..4399d85b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/IdUtils.java @@ -2,8 +2,6 @@ package com.hzs.common.core.utils.uuid; /** * ID生成器工具类 - * - * @author hzs */ public class IdUtils { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java index 1a1b8f9c..a2075725 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/Seq.java @@ -6,7 +6,7 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; /** - * @author hzs 序列生成类 + * 序列生成类 */ public class Seq { diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java index d55b31fe..77506702 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/uuid/UUID.java @@ -10,8 +10,6 @@ import com.hzs.common.core.exception.UtilException; /** * 提供通用唯一识别码(universally unique identifier)(UUID)实现 - * - * @author hzs */ public final class UUID implements java.io.Serializable, Comparable { From b4e065ff556cb6a02908fd19c858050feaddb95c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 14:36:07 +0800 Subject: [PATCH 052/362] =?UTF-8?q?##=20=E4=B8=8A=E4=BC=A0=E7=9B=92?= =?UTF-8?q?=E6=95=B0=E5=95=86=E5=93=81=E6=B7=BB=E5=8A=A0=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=BC=96=E7=A0=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/core/constant/RetailConstants.java | 48 ++++++++++++------- 1 file changed, 32 insertions(+), 16 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index bc755a59..89458c7f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -23,17 +23,25 @@ public class RetailConstants { */ public static final List BOX_PRODUCT_LIST = Arrays.asList( // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006", - "SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012", + "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", + "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", + "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", + "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006", - "SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012", + "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", + "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", + "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", + "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006", - "SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012", + "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", + "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", + "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", + "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006", - "SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012" + "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", + "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", + "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", + "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" ); /** @@ -41,17 +49,25 @@ public class RetailConstants { */ public static final List ALL_BOX_WARES_LIST = Arrays.asList( // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", "SP02410006", - "SP02410007", "SP02410008", "SP02410009", "SP02410010", "SP02410011", "SP02410012", + "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", + "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", + "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", + "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", "SP02420006", - "SP02420007", "SP02420008", "SP02420009", "SP02420010", "SP02420011", "SP02420012", + "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", + "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", + "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", + "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", "SP02430006", - "SP02430007", "SP02430008", "SP02430009", "SP02430010", "SP02430011", "SP02430012", + "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", + "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", + "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", + "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", "SP02440006", - "SP02440007", "SP02440008", "SP02440009", "SP02440010", "SP02440011", "SP02440012" + "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", + "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", + "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", + "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" ); } From 2da43d28914df3a156ec229ad5ec8ba7d3f1e811 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 15:20:00 +0800 Subject: [PATCH 053/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=8E=A5=E5=8F=A3=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/mapper/CuMemberMapper.java | 9 ++ .../member/base/service/ICuMemberService.java | 11 ++ .../service/impl/CuMemberServiceImpl.java | 64 ++++++++++ .../manage/CensusSummaryController.java | 116 ++++++++++++++++++ .../census/param/CensusSummaryParam.java | 55 +++++++++ .../hzs/member/census/vo/CensusSummaryVo.java | 82 +++++++++++++ .../mapper/member/base/CuMemberMapper.xml | 24 ++++ .../com/hzs/common/core/utils/DateUtils.java | 35 ++++++ 8 files changed, 396 insertions(+) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 1c18f5e1..a5e63dc7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -8,6 +8,7 @@ import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.member.base.dto.MemberCountDTO; import com.hzs.member.base.param.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; @@ -628,4 +629,12 @@ public interface CuMemberMapper extends BaseMapper { String getSharePosterImage(@Param("userId") Long userId); + /** + * 查询业绩汇总 + * + * @param censusSummaryParam + * @return + */ + List queryDateBySummary(CensusSummaryParam censusSummaryParam); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 692fdc70..62a318a9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -12,6 +12,8 @@ import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.member.base.dto.ZeroElementRevokeDTO; import com.hzs.member.base.param.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; @@ -900,4 +902,13 @@ public interface ICuMemberService extends IService { * @return */ String getSharePosterImage(); + + /** + * 查询汇总 + * + * @param censusSummaryParam 表格名称 + * @return + */ + List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 03ae4f7e..d9d3be60 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -42,6 +42,8 @@ import com.hzs.member.base.mapper.CuMemberMapper; import com.hzs.member.base.param.*; import com.hzs.member.base.service.*; import com.hzs.member.base.vo.*; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; @@ -3237,4 +3239,66 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.getSharePosterImage(SecurityUtils.getUserId()); } + + @Override + public List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days) { + // 根据类型查询所有人各类型的订单业绩汇总 + List censusSummaryList = new ArrayList<>(); + for (String day : days) { + censusSummaryParam.setTime(day); + List memberMeritsSummaryVoList = baseMapper.queryDateBySummary(censusSummaryParam); + Map memberMeritsSummaryMap = memberMeritsSummaryVoList.stream().collect(Collectors.toMap(MemberMeritsSummaryVo::getOrderType, Function.identity())); + + CensusSummaryVo censusSummaryVo = new CensusSummaryVo(); + censusSummaryVo.setSettleDate(day); + + // 注册 + BigDecimal reAmount = BigDecimal.ZERO; + BigDecimal reAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()) != null) { + reAmount = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAmount(); + reAchieve = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setRegisterAmount(reAmount); + censusSummaryVo.setRegisterPv(reAchieve); + + // 升级 + BigDecimal upAmount = BigDecimal.ZERO; + BigDecimal upAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()) != null) { + upAmount = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAmount(); + upAchieve = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setUpgradeAmount(upAmount); + censusSummaryVo.setUpgradePv(upAchieve); + + // 首购 + censusSummaryVo.setFirstPurchaseAmount(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount())); + censusSummaryVo.setFirstPurchasePv(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv())); + + // 复购订单 + BigDecimal repurchaseAmount = BigDecimal.ZERO; + BigDecimal repurchaseAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()) != null) { + repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAmount(); + repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAchieve(); + } + // 复消 + if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { + repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()).getAmount()); + } + + // 复购 + censusSummaryVo.setRepurchaseAmount(repurchaseAmount); + censusSummaryVo.setRepurchasePv(repurchaseAchieve); + + // 金额总计 + censusSummaryVo.setAmountTotal(censusSummaryVo.getFirstPurchaseAmount().add(censusSummaryVo.getRepurchaseAmount())); + // 业绩汇总 + censusSummaryVo.setPvTotal(censusSummaryVo.getFirstPurchasePv().add(censusSummaryVo.getRepurchasePv())); + censusSummaryList.add(censusSummaryVo); + } + return censusSummaryList; + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java new file mode 100644 index 00000000..17bf4d1a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java @@ -0,0 +1,116 @@ +package com.hzs.member.census.controller.manage; + +import com.hzs.common.core.annotation.AccessPermissions; +import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.core.utils.poi.ExcelUtil; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.census.param.CensusSummaryParam; +import com.hzs.member.census.vo.CensusSummaryVo; +import com.hzs.system.sys.IMenuColumnServiceApi; +import org.apache.dubbo.config.annotation.DubboReference; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +@RestController +@RequestMapping("/manage/member-structure") +public class CensusSummaryController extends BaseController { + + @Autowired + private ICuMemberSettlePeriodService memberSettlePeriodService; + @Autowired + private ICuMemberService memberService; + + @DubboReference + IMenuColumnServiceApi iMenuColumnServiceApi; + + /** + * 业绩汇总 + * + * @param censusSummaryParam + * @return + */ + @AccessPermissions("performanceTotal") + @GetMapping("/list") + public AjaxResult list(CensusSummaryParam censusSummaryParam) { + if (null == censusSummaryParam.getStartDate() + || null == censusSummaryParam.getEndDate()) { + return AjaxResult.success(new ArrayList<>()); + } + + List pkVertex = new ArrayList<>(); + if (StringUtils.isNotEmpty(censusSummaryParam.getPkBdVertexStr())) { + pkVertex = Arrays.stream(censusSummaryParam.getPkBdVertexStr().split(",")) + .map(Long::parseLong) + .collect(Collectors.toList()); + } + censusSummaryParam.setPkVertex(pkVertex); + + // 当天查询秒结 + Date date = new Date(); + // 查询当天 + String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); + // 查询当前时间范围 + List days = new ArrayList<>(); + if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { + days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); + } else { + // 默认查询当天 + days.add(thisTime); + } + + censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + + return AjaxResult.success(resultList); + } + + /** + * 导出(导出) + */ + @PostMapping("/export") + public void export(CensusSummaryParam censusSummaryParam, HttpServletResponse response) { + if (censusSummaryParam.getStartDate() == null || censusSummaryParam.getEndDate() == null) { + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class); + util.exportExcel(response, new ArrayList<>(), "业绩汇总信息"); + } + + // 当天查询秒结 + Date date = new Date(); + // 查询当天 + String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); + if (censusSummaryParam.getMemberSettlePeriodId() != null) { + memberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); + } else { + memberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); + } + + // 查询当前时间范围 + List days = new ArrayList(); + if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { + days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); + } else { + // 默认查询当天 + days.add(thisTime); + } + + List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class, iMenuColumnServiceApi.queryMenuColumn("performanceTotal", SecurityUtils.getUserId()).getData()); + util.exportExcel(response, resultList, "业绩汇总信息"); + } + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java new file mode 100644 index 00000000..d5073e16 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java @@ -0,0 +1,55 @@ +package com.hzs.member.census.param; + +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +public class CensusSummaryParam { + + /** + * 结算期数 + */ + private Long memberSettlePeriodId; + + /** + * 币种展示 + */ + private Long pkCurrency; + + /** + * 所属国家 + */ + private Integer pkCountry; + + /** + * 开始时间 + */ + private Date startDate; + + /** + * 结束时间 + */ + private Date endDate; + + /** + * 查询时间 + */ + private String time; + + /** + * 体系 + */ + private List pkVertex; + + /** + * 团队 + */ + private List pkMemberTeam; + /** + * 体系 + */ + private String pkBdVertexStr; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java new file mode 100644 index 00000000..91faac1a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java @@ -0,0 +1,82 @@ +package com.hzs.member.census.vo; + +import com.hzs.common.core.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class CensusSummaryVo { + + /** + * 结算期数 + */ + private Integer numberPeriods; + + /** + * 结算时间 + */ + @Excel(name = "结算时间") + private String settleDate; + + /** + * 注册金额 + */ + @Excel(name = "注册金额") + private BigDecimal registerAmount; + + /** + * 注册业绩 + */ + @Excel(name = "注册业绩") + private BigDecimal registerPv; + + /** + * 升级金额 + */ + @Excel(name = "升级金额") + private BigDecimal upgradeAmount; + + /** + * 升级业绩 + */ + @Excel(name = "升级业绩") + private BigDecimal upgradePv; + + /** + * 首购金额 + */ + @Excel(name = "首购金额") + private BigDecimal firstPurchaseAmount; + + /** + * 首购业绩 + */ + @Excel(name = "首购业绩") + private BigDecimal firstPurchasePv; + + /** + * 复购金额 + */ + @Excel(name = "复购金额") + private BigDecimal repurchaseAmount; + + /** + * 复购pv + */ + @Excel(name = "复购业绩") + private BigDecimal repurchasePv; + + /** + * 金额总计 + */ + @Excel(name = "金额总计") + private BigDecimal amountTotal; + + /** + * 业绩汇总 + */ + @Excel(name = "业绩汇总") + private BigDecimal pvTotal; + +} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index 8886787e..dfb5f75e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2477,6 +2477,7 @@ and t0.category = 0) where rownum = 1 + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java index ddae36e6..aa66ce87 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java @@ -8,8 +8,10 @@ import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; +import java.util.List; /** * 时间工具类 @@ -875,4 +877,37 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return before7days.getTime() < addtime.getTime(); } + + /** + * 获取两个时间内的每一天 + * + * @param startTime + * @param endTime + * @return + */ + public static List findDaysStr(String startTime, String endTime) { + SimpleDateFormat sdf = new SimpleDateFormat(DateUtils.YYYY_MM_DD); + Date dBegin = null; + Date dEnd = null; + try { + dBegin = sdf.parse(startTime); + dEnd = sdf.parse(endTime); + } catch (ParseException e) { + e.printStackTrace(); + } + List daysStrList = new ArrayList<>(); + daysStrList.add(sdf.format(dBegin)); + Calendar calBegin = Calendar.getInstance(); + calBegin.setTime(dBegin); + Calendar calEnd = Calendar.getInstance(); + calEnd.setTime(dEnd); + + while (dEnd.after(calBegin.getTime())) { + calBegin.add(Calendar.DAY_OF_MONTH, 1); + String dayStr = sdf.format(calBegin.getTime()); + daysStrList.add(dayStr); + } + return daysStrList; + } + } From f2003060bcdd09520edbf97d1f2b3f52d14329f6 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 18 Jul 2025 15:21:27 +0800 Subject: [PATCH 054/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=8E=A5=E5=8F=A3=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CensusSummaryController.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java index 17bf4d1a..a1ebe323 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/controller/manage/CensusSummaryController.java @@ -31,9 +31,9 @@ import java.util.stream.Collectors; public class CensusSummaryController extends BaseController { @Autowired - private ICuMemberSettlePeriodService memberSettlePeriodService; + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Autowired - private ICuMemberService memberService; + private ICuMemberService iCuMemberService; @DubboReference IMenuColumnServiceApi iMenuColumnServiceApi; @@ -74,7 +74,7 @@ public class CensusSummaryController extends BaseController { } censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); - List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + List resultList = iCuMemberService.selectCensusSummary(censusSummaryParam, days); return AjaxResult.success(resultList); } @@ -84,7 +84,8 @@ public class CensusSummaryController extends BaseController { */ @PostMapping("/export") public void export(CensusSummaryParam censusSummaryParam, HttpServletResponse response) { - if (censusSummaryParam.getStartDate() == null || censusSummaryParam.getEndDate() == null) { + if (null == censusSummaryParam.getStartDate() + || null == censusSummaryParam.getEndDate()) { ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class); util.exportExcel(response, new ArrayList<>(), "业绩汇总信息"); } @@ -94,13 +95,13 @@ public class CensusSummaryController extends BaseController { // 查询当天 String thisTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); if (censusSummaryParam.getMemberSettlePeriodId() != null) { - memberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); + iCuMemberSettlePeriodService.getById(censusSummaryParam.getMemberSettlePeriodId()); } else { - memberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); + iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(thisTime); } // 查询当前时间范围 - List days = new ArrayList(); + List days = new ArrayList<>(); if (censusSummaryParam.getStartDate() != null && censusSummaryParam.getEndDate() != null) { days = DateUtils.findDaysStr(DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getStartDate()), DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, censusSummaryParam.getEndDate())); } else { @@ -108,7 +109,9 @@ public class CensusSummaryController extends BaseController { days.add(thisTime); } - List resultList = memberService.selectCensusSummary(censusSummaryParam, days); + censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = iCuMemberService.selectCensusSummary(censusSummaryParam, days); + ExcelUtil util = new ExcelUtil<>(CensusSummaryVo.class, iMenuColumnServiceApi.queryMenuColumn("performanceTotal", SecurityUtils.getUserId()).getData()); util.exportExcel(response, resultList, "业绩汇总信息"); } From 1d5c7abf499b0d05594c70cd070debe110776307 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 22 Jul 2025 11:21:25 +0800 Subject: [PATCH 055/362] =?UTF-8?q?##=20=E6=96=B0=E9=9B=B6=E5=94=AE?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E8=AE=A2=E5=8D=95=E7=B1=BB=E5=9E=8B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=88307=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/system/board/BoardMapper.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml index 98c5720a..ff6a3531 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml @@ -109,7 +109,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate, 'yyyy-mm-dd') ) a @@ -119,7 +119,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate, 'yyyy-mm-dd') ) b on 1 = 1 @@ -131,7 +131,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate - 1, 'yyyy-mm-dd') ) a @@ -141,7 +141,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate - 1, 'yyyy-mm-dd') ) b on 1 = 1 @@ -156,7 +156,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm') = to_char(sysdate, 'yyyy-mm') ) a left join ( @@ -165,7 +165,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm') = to_char(sysdate, 'yyyy-mm') ) b on 1 = 1 From afda4d5b54375395b423491bfbe1e33362804159 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 22 Jul 2025 16:10:24 +0800 Subject: [PATCH 056/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=95=B0=E6=8D=AE=E6=98=BE=E7=A4=BA=EF=BC=88309?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberServiceImpl.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index d9d3be60..93c8db9d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3255,9 +3255,9 @@ public class CuMemberServiceImpl extends ServiceImpl i // 注册 BigDecimal reAmount = BigDecimal.ZERO; BigDecimal reAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()) != null) { - reAmount = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAmount(); - reAchieve = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()) != null) { + reAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()).getAmount(); + reAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()).getAchieve(); } censusSummaryVo.setRegisterAmount(reAmount); censusSummaryVo.setRegisterPv(reAchieve); @@ -3265,9 +3265,9 @@ public class CuMemberServiceImpl extends ServiceImpl i // 升级 BigDecimal upAmount = BigDecimal.ZERO; BigDecimal upAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()) != null) { - upAmount = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAmount(); - upAchieve = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()) != null) { + upAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAmount(); + upAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAchieve(); } censusSummaryVo.setUpgradeAmount(upAmount); censusSummaryVo.setUpgradePv(upAchieve); @@ -3279,13 +3279,13 @@ public class CuMemberServiceImpl extends ServiceImpl i // 复购订单 BigDecimal repurchaseAmount = BigDecimal.ZERO; BigDecimal repurchaseAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()) != null) { - repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAmount(); - repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()) != null) { + repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); + repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); } // 复消 if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { - repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()).getAmount()); + repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.RETAIL_CONSUME.getValue()).getAmount()); } // 复购 From 5b2ea228976a6b8edd315ea3b4cda348515d9dea Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 23 Jul 2025 09:26:19 +0800 Subject: [PATCH 057/362] =?UTF-8?q?##=20=E9=A1=B6=E7=82=B9=E5=A5=96?= =?UTF-8?q?=E9=87=91=E6=8B=A8=E6=AF=94=E5=88=97=E8=A1=A8=E4=BD=93=E7=B3=BB?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E9=97=AE=E9=A2=98=EF=BC=88310=EF=BC=89?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/ICuMemberRetailRegionServiceApi.java | 30 -- .../member/self/dto/SelfServiceDataDTO.java | 8 +- .../statis/ICuBonusStatisServiceApi.java | 36 +- .../ICuBonusVertexStatisServiceApi.java | 32 +- .../mapper/CuAuthorityControlMapper.java | 5 - .../member/base/mapper/CuMemberMapper.java | 6 +- .../CuMemberRetailRegionServiceProvider.java | 53 -- .../member/base/service/ICuMemberService.java | 6 +- .../service/impl/CuMemberServiceImpl.java | 4 +- .../CuBonusLenjoyStatisController.java | 176 ------- .../manager/CuBonusStatisController.java | 334 +++---------- .../CuBonusVertexStatisController.java | 196 +++----- .../CuBonusVertexStatisTotalController.java | 57 +-- .../mapper/CuBonusLenjoyStatisMapper.java | 57 --- .../statis/mapper/CuBonusStatisMapper.java | 20 - .../mapper/CuBonusVertexStatisMapper.java | 15 - .../ICuBonusStatisServiceProvider.java | 32 +- .../ICuBonusVertexStatisServiceProvider.java | 53 +- .../service/ICuBonusLenjoyStatisService.java | 44 -- .../statis/service/ICuBonusStatisService.java | 25 - .../service/ICuBonusVertexStatisService.java | 15 - .../impl/CuBonusLenjoyStatisServiceImpl.java | 258 ---------- .../impl/CuBonusStatisServiceImpl.java | 297 +---------- .../impl/CuBonusVertexStatisServiceImpl.java | 33 +- .../statis/vo/CuBonusLenjoyStatisVO.java | 132 ----- .../statis/vo/CuBonusStatisChartVO.java | 222 ++++----- .../statis/vo/CuBonusStatisColumnarVO.java | 10 +- .../statis/vo/CuBonusStatisRoundVO.java | 7 +- .../hzs/member/statis/vo/CuBonusStatisVO.java | 187 +------ .../statis/vo/CuBonusVertexStatisPvVO.java | 153 +++--- .../statis/vo/CuBonusVertexStatisSumPvVO.java | 56 +-- .../statis/vo/CuBonusVertexStatisSumVO.java | 56 +-- .../statis/vo/CuBonusVertexStatisTotalVO.java | 63 +-- .../statis/vo/CuBonusVertexStatisVO.java | 12 +- .../mapper/CuMemberRetailRegionMapper.java | 27 - .../service/ICuMemberRetailRegionService.java | 14 +- .../impl/CuMemberRetailRegionServiceImpl.java | 17 - .../mapper/member/base/CuMemberMapper.xml | 30 +- .../statis/CuBonusLenjoyStatisMapper.xml | 401 --------------- .../member/statis/CuBonusStatisMapper.xml | 471 ++---------------- .../statis/CuBonusVertexStatisMapper.xml | 252 ++-------- .../member/CuMemberRetailRegionMapper.xml | 104 ++-- .../java/com/hzs/third/job/MemberJob.java | 43 +- 43 files changed, 621 insertions(+), 3428 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java delete mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java deleted file mode 100644 index 61dc06e3..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.member.base; - -import com.hzs.common.core.domain.R; - -/** - * @description: 会员收益区域服务接口 - * @author: zhang jing - * @date: 2024/12/30 15:01 - * @param: - * @return: - **/ -public interface ICuMemberRetailRegionServiceApi { - - /** - * @description: 批量修改已到期的会员收益区域 - * @author: zhang jing - * @date: 2024/12/30 15:22 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R batchUpdateRetailRegion(); - - /** - * 处理重复区域 - * - * @return - */ - R handleRepeatRegion(); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java index 2fc55068..3863503b 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java @@ -9,20 +9,14 @@ import java.io.Serializable; /** * 自助服务解析DTO - * - * @Description: - * @Author: ljc - * @Time: 2023/4/19 16:20 - * @Classname: selfServiceDataDTO - * @Package_name: com.hzs.member.self.dto */ @Data @Builder @AllArgsConstructor @NoArgsConstructor public class SelfServiceDataDTO implements Serializable { - private static final long serialVersionUID = -7391351591016186401L; + private static final long serialVersionUID = -7391351591016186401L; /** * 业务单号 diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java index e3dbcb86..f99cf887 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java @@ -1,43 +1,21 @@ package com.hzs.member.statis; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.achieve.CuMemberAchieve; -import com.hzs.common.domain.member.bonus.CuMemberBonus; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.member.self.dto.SelfServiceDataDTO; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - -import java.util.Date; /** - * @description: 奖金拨比统计 - * @author: zhang jing - * @date: 2023/6/1 17:24 - * @param: - * @return: + * 奖金拨比统计 **/ public interface ICuBonusStatisServiceApi { - - + /** + * 统计历史奖金拨比 + **/ + R statisHistoryBonus(String startDate, String endDate); /** - * @description: 统计历史奖金拨比 - * @author: zhang jing - * @date: 2023/10/19 9:29 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R + * 删除奖金拨比统计数据 **/ - R statisHistoryBonus(String startDate, String endDate); - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ - R delStatis(String startDate,String endDate); + R delStatis(String startDate, String endDate); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java index 446621c0..2786681a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java @@ -3,36 +3,18 @@ package com.hzs.member.statis; import com.hzs.common.core.domain.R; /** - * @description: 顶点奖金拨比统计 - * @author: zhang jing - * @date: 2023/6/1 17:24 - * @param: - * @return: + * 顶点奖金拨比统计 **/ public interface ICuBonusVertexStatisServiceApi { - - + /** + * 7天重算顶点奖金拨比统计 + **/ + R anewStatisHistoryBonus(String startDate, String endDate); /** - * @description: 7天重算顶点奖金拨比统计 - * @author: zhang jing - * @date: 2024/8/15 10:30 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R + * 删除奖金拨比统计数据 **/ - R anewStatisHistoryBonus(String startDate, String endDate); - - - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ - R delStatis(String startDate,String endDate); - + R delStatis(String startDate, String endDate); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java index 18db58b6..331f94a3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.attest.CuAuthorityControl; /** - *

* 会员显示权限控制 Mapper 接口 - *

- * - * @author hzs - * @since 2024-06-07 */ public interface CuAuthorityControlMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index a5e63dc7..a0270d1a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -556,13 +556,11 @@ public interface CuMemberMapper extends BaseMapper { CuMemberExt queryRetailLoginMember(@Param("memberCode") String memberCode, @Param("pkMember") Long pkMember); /** - * 查询新零售登录会员列表 + * 查询有效顶点 * - * @param memberCodeList 会员编号列表 - * @param pkMemberList 会员主键列表 * @return */ - List listRetailLoginMember(@Param("memberCodeList") List memberCodeList, @Param("pkMemberList") List pkMemberList); + List vertexList(); /** * 新零售查询会员血缘伞上 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java deleted file mode 100644 index 5e0e0166..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.hzs.member.base.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.member.base.ICuMemberRetailRegionServiceApi; -import com.hzs.retail.member.service.ICuMemberRetailRegionService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @description: 会员收益区域dubbo服务 - * @author: zhang jing - * @date: 2024/12/30 15:05 - * @param: - * @return: - **/ -@Slf4j -@DubboService -public class CuMemberRetailRegionServiceProvider implements ICuMemberRetailRegionServiceApi { - - @Autowired - private ICuMemberRetailRegionService iCuMemberRetailRegionService; - - /** - * @description: 批量修改已到期的会员收益区域 - * @author: zhang jing - * @date: 2024/12/30 15:20 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R batchUpdateRetailRegion() { - try { - iCuMemberRetailRegionService.batchUpdateRetailRegion(); - } catch (Exception e) { - log.error("batchUpdateRetailRegion error:", e); - return R.fail(); - } - return R.ok(); - } - - @Override - public R handleRepeatRegion() { - try { - iCuMemberRetailRegionService.handleRepeatRegion(); - return R.ok(); - } catch (Exception e) { - log.error("handleRepeatRegion error:", e); - return R.fail(); - } - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 62a318a9..82998d90 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -779,12 +779,11 @@ public interface ICuMemberService extends IService { CuMemberExt getRetailMemberByCode(String memberCode); /** - * 根据会员编号列表获取会员信息(查库) + * 查询有效顶点 * - * @param memberCodeList 会员编号列表 * @return */ - List listRetailMemberByCode(List memberCodeList); + List vertexList(); /** * 根据会员ID获取会员信息(查库) @@ -899,6 +898,7 @@ public interface ICuMemberService extends IService { /** * 获取用户体系分享图片 + * * @return */ String getSharePosterImage(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 93c8db9d..d5ce407f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3031,8 +3031,8 @@ public class CuMemberServiceImpl extends ServiceImpl i } @Override - public List listRetailMemberByCode(List memberCodeList) { - return baseMapper.listRetailLoginMember(memberCodeList, null); + public List vertexList() { + return baseMapper.vertexList(); } @Override diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java deleted file mode 100644 index d722d6f3..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java +++ /dev/null @@ -1,176 +0,0 @@ -package com.hzs.member.statis.controller.manager; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.AccessPermissions; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.msg.FinanceMsgConstants; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.dto.CurrencyDTO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.servlet.http.HttpServletResponse; -import java.math.BigDecimal; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 乐享奖金拨比零线统计 前端控制器 - */ -@Slf4j -@RestController -@RequestMapping("/manage/bonus-len-statis") -public class CuBonusLenjoyStatisController extends BaseController { - - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - - - /** - * 奖金拨比列表 - **/ - @AccessPermissions("LenTopPerformance") - @GetMapping("/list") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_LIST, method = EOperationMethod.SELECT) - public TableDataInfo list(CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - //默认查询当前日期的前一天 - Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - //查询顶点会员 - startPage(); - //查询乐享顶点奖金拨比列表 - slList = iCuBonusLenjoyStatisService.queryCuBonusStatis(cuBonusLenjoyStatisVO); - if (CollectionUtil.isNotEmpty(slList)) { - slList.forEach(itm -> { - itm.setCloudRealSubtotal(itm.getCloudRealSubtotal().multiply(exchangeRate)); - }); - } - return getDataTable(slList); - } - - /** - * 导出奖金拨比列表 - **/ - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusLenjoyStatisVO subtotal = null; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - //默认查询当前日期的前一天 - Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - startPage(); - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusLenjoyStatisService.queryCuBonusStatis(cuBonusLenjoyStatisVO); - if (CollectionUtil.isNotEmpty(slList)) { - slList.forEach(itm -> { - itm.setCloudRealSubtotal(itm.getCloudRealSubtotal().multiply(exchangeRate)); - }); - } - //合计 - subtotal = iCuBonusLenjoyStatisService.queryCuBonusSumStatis(cuBonusLenjoyStatisVO); - } - //合计 - if (subtotal == null) { - subtotal = new CuBonusLenjoyStatisVO(); - } - subtotal.setMemberCode("合计"); - slList.add(subtotal); - ExcelUtil util = new ExcelUtil<>(CuBonusLenjoyStatisVO.class); - util.exportExcel(response, slList, "拨比列表"); - } - - /** - * 奖金拨比列表合计 - **/ - @AccessPermissions("LenTopPerformance") - @GetMapping("/subtotal") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) - public AjaxResult subtotal(CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - CuBonusLenjoyStatisVO subtotal; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - Date date = DateUtils.currentDate(); - //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - //查询合计 - subtotal = iCuBonusLenjoyStatisService.queryCuBonusSumStatis(cuBonusLenjoyStatisVO); - return AjaxResult.success(subtotal); - } - - /** - * 统计历史奖金拨比数据, 手动统计某一天 - **/ - @GetMapping("/statis-history") - public AjaxResult statisHistoryBonus(String startDate, String endDate) { - if (StringUtils.isEmpty(startDate) || StringUtils.isEmpty(endDate)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_DATE_NOT_NULL)); - } - List vertexList = iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList = new ArrayList<>(); - pkVertexList.addAll(vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList())); - //删除数据 - if (CollectionUtil.isNotEmpty(pkVertexList)) { - iCuBonusLenjoyStatisService.delStatis(startDate, endDate, pkVertexList); - } - //重新统计 - Boolean b = iCuBonusLenjoyStatisService.anewStatisHistoryBonus(startDate, endDate); - return AjaxResult.success(b); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java index f4104bff..0d933b14 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java @@ -32,7 +32,6 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.LocalDate; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -53,7 +52,6 @@ public class CuBonusStatisController extends BaseController { @DubboReference ICurrencyServiceApi currencyServiceApi; - /** * 奖金拨比列表 **/ @@ -62,13 +60,10 @@ public class CuBonusStatisController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) public TableDataInfo list(CuBonusStatisVO cuBonusStatisVO) { int pkCountry = SecurityUtils.getPkCountry(); - List slList; R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - cuBonusStatisVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + cuBonusStatisVO.setRate(exchangeRate); cuBonusStatisVO.setPerCent(exchangeRate.multiply(cent)); cuBonusStatisVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 @@ -94,20 +89,13 @@ public class CuBonusStatisController extends BaseController { //查询订单业绩,查询分红配置每月10号分红 BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry == CountryConstants.CHINA_COUNTRY) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -121,13 +109,9 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); } startPage(); - if (pkCountry == CountryConstants.CHINA_COUNTRY) { - //查询中国奖金拨比列表 - slList = iCuBonusStatisService.queryCuBonusStatis(cuBonusStatisVO); - } else { - //查询国外奖金拨比 - slList = iCuBonusStatisService.queryForeignCountryCuBonusStatis(cuBonusStatisVO); - } + //查询中国奖金拨比列表 + List slList = iCuBonusStatisService.queryCuBonusStatis(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { if (itm.getIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { @@ -147,8 +131,8 @@ public class CuBonusStatisController extends BaseController { itm.setMainBonusPvRate(itm.getMainBonusPvRate().divide(itm.getFirstPurchaseAll(), 4, RoundingMode.HALF_UP)); } //重新算总拨比 - if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || - itm.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { + if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 + || itm.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { BigDecimal totalBonusRate = cent.multiply((itm.getTotalBonus()).multiply(currency.getData().getInExchangeRate())); totalBonusRate = totalBonusRate.divide(itm.getFirstPurchaseAll().add(itm.getRepurchaseAllAmount()), 4, RoundingMode.HALF_UP); itm.setTotalBonusRate(totalBonusRate); @@ -159,32 +143,24 @@ public class CuBonusStatisController extends BaseController { if (itm.getServiceBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setServiceBonus(itm.getServiceBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getHiFunIncome().compareTo(BigDecimal.ZERO) > 0) { - itm.setHiFunIncome(itm.getHiFunIncome().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurRangeBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurRangeBonus(itm.getRepurRangeBonus().multiply(currency.getData().getInExchangeRate())); } if (itm.getRepurOrgBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurOrgBonus(itm.getRepurOrgBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getAgentIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { - itm.setAgentIntroduceBonus(itm.getAgentIntroduceBonus().multiply(currency.getData().getInExchangeRate())); - } itm.setRepurBonus(itm.getRepurBonus().multiply(currency.getData().getInExchangeRate())); }); } return getDataTable(slList); } - /** * 查询单个人奖金拨比列表 **/ @GetMapping("/singlePersonList") @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_SINGLE_PERSON_LIST, method = EOperationMethod.SELECT) public AjaxResult singlePersonList(CuBonusSinglePersonStatisVO csps) { - CuBonusSinglePersonStatisVO cspsSum; if (StringUtils.isEmpty(csps.getMemberCode()) || StringUtils.isEmpty(csps.getStartDate()) || StringUtils.isEmpty(csps.getEndDate())) { return AjaxResult.success(); } @@ -193,13 +169,10 @@ public class CuBonusStatisController extends BaseController { return AjaxResult.success(); } R currency = currencyServiceApi.getCurrency(cmex.getPkSettleCountry()); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - csps.setRate(exchangeRate); - - csps.setPkMember(cmex.getPkId()); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + csps.setRate(exchangeRate); + csps.setPkMember(cmex.getPkId()); csps.setPkCountry(cmex.getPkSettleCountry()); //查询订单业绩,查询分红配置每月10号分红 @@ -207,16 +180,13 @@ public class CuBonusStatisController extends BaseController { CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); cuBonusStatisVO.setPkCountry(cmex.getPkSettleCountry()); //查询奖金扣项配置参数 0.8 - if (cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -230,76 +200,41 @@ public class CuBonusStatisController extends BaseController { csps.setDividendRatio(BigDecimal.ZERO); } startPage(); - cspsSum = iCuBonusStatisService.bonusSingleSum(csps); + CuBonusSinglePersonStatisVO cspsSum = iCuBonusStatisService.bonusSingleSum(csps); BigDecimal mainBonusRate; BigDecimal repurBonusRate; BigDecimal totalBonus; BigDecimal totalBonusRate; - //国外转为人民币 - if (cspsSum != null && !cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - //订单金额 + + if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setFirstPurchaseAll(cspsSum.getFirstPurchaseAll().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setMainBonusRate(mainBonusRate); + } else { + cspsSum.setMainBonusRate(new BigDecimal(0)); } if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurchaseAllAmount(cspsSum.getRepurchaseAllAmount().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setRepurBonusRate(repurBonusRate); + } else { + cspsSum.setRepurBonusRate(new BigDecimal(0)); } - if (cspsSum.getMainBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setMainBonus(cspsSum.getMainBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurBonus(cspsSum.getRepurBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); - } - } else { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - if (cspsSum.getShareBonus() == null) { - cspsSum.setShareBonus(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); + if (cspsSum.getShareBonus() == null) { + cspsSum.setShareBonus(new BigDecimal(0)); } + totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); + cspsSum.setTotalBonus(totalBonus); + totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); + cspsSum.setTotalBonusRate(totalBonusRate); + cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); } + return AjaxResult.success(cspsSum); } @PostMapping("/export-singlePersonList") @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_SINGLE_PERSON_LIST, method = EOperationMethod.EXPORT) public void exportSinglePersonList(HttpServletResponse response, CuBonusSinglePersonStatisVO csps) { - CuBonusSinglePersonStatisVO cspsSum; if (StringUtils.isEmpty(csps.getMemberCode()) || StringUtils.isEmpty(csps.getStartDate()) || StringUtils.isEmpty(csps.getEndDate())) { List cspsList = new ArrayList<>(); ExcelUtil util = new ExcelUtil<>(CuBonusSinglePersonStatisVO.class); @@ -313,12 +248,9 @@ public class CuBonusStatisController extends BaseController { } R currency = currencyServiceApi.getCurrency(cmex.getPkSettleCountry()); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - csps.setRate(exchangeRate); - - csps.setPkMember(cmex.getPkId()); BigDecimal cent = new BigDecimal(100); + csps.setRate(exchangeRate); + csps.setPkMember(cmex.getPkId()); csps.setPkCountry(cmex.getPkSettleCountry()); //查询订单业绩,查询分红配置每月10号分红 @@ -326,16 +258,13 @@ public class CuBonusStatisController extends BaseController { CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); cuBonusStatisVO.setPkCountry(cmex.getPkSettleCountry()); //查询奖金扣项配置参数 0.8 - if (cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -348,70 +277,36 @@ public class CuBonusStatisController extends BaseController { } else { csps.setDividendRatio(BigDecimal.ZERO); } + startPage(); - cspsSum = iCuBonusStatisService.bonusSingleSum(csps); + CuBonusSinglePersonStatisVO cspsSum = iCuBonusStatisService.bonusSingleSum(csps); BigDecimal mainBonusRate; BigDecimal repurBonusRate; BigDecimal totalBonus; BigDecimal totalBonusRate; - //国外转为人民币 - if (cspsSum != null && !cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - //订单金额 + if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setFirstPurchaseAll(cspsSum.getFirstPurchaseAll().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setMainBonusRate(mainBonusRate); + } else { + cspsSum.setMainBonusRate(new BigDecimal(0)); } if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurchaseAllAmount(cspsSum.getRepurchaseAllAmount().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setRepurBonusRate(repurBonusRate); + } else { + cspsSum.setRepurBonusRate(new BigDecimal(0)); } - if (cspsSum.getMainBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setMainBonus(cspsSum.getMainBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurBonus(cspsSum.getRepurBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); - } - } else { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - if (cspsSum.getShareBonus() == null) { - cspsSum.setShareBonus(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); + if (cspsSum.getShareBonus() == null) { + cspsSum.setShareBonus(new BigDecimal(0)); } + totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); + cspsSum.setTotalBonus(totalBonus); + totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); + cspsSum.setTotalBonusRate(totalBonusRate); + cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); } + List cspsList = Collections.singletonList(cspsSum); ExcelUtil util = new ExcelUtil<>(CuBonusSinglePersonStatisVO.class); util.exportExcel(response, cspsList, "个人拨比列表"); @@ -425,12 +320,10 @@ public class CuBonusStatisController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) public AjaxResult subtotal(CuBonusStatisVO cuBonusStatisVO) { int pkCountry = SecurityUtils.getPkCountry(); - CuBonusStatisVO subtotal; R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - cuBonusStatisVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + cuBonusStatisVO.setRate(exchangeRate); cuBonusStatisVO.setPerCent(exchangeRate.multiply(cent)); cuBonusStatisVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); @@ -461,15 +354,9 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - //查询体系订单分红业绩 - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); - cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); startPage(); - subtotal = iCuBonusStatisService.queryCuBonusSumStatis(cuBonusStatisVO); - if (subtotal != null && pkCountry == CountryConstants.CHINA_COUNTRY) { + CuBonusStatisVO subtotal = iCuBonusStatisService.queryCuBonusSumStatis(cuBonusStatisVO); + if (subtotal != null) { if (subtotal.getIntroduceBonusSum().compareTo(BigDecimal.ZERO) > 0) { subtotal.setIntroduceBonusSum(subtotal.getIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); } @@ -498,9 +385,6 @@ public class CuBonusStatisController extends BaseController { if (subtotal.getRepurOrgBonusSum().compareTo(BigDecimal.ZERO) > 0) { subtotal.setRepurOrgBonusSum(subtotal.getRepurOrgBonusSum().multiply(currency.getData().getInExchangeRate())); } - if (subtotal.getAgentIntroduceBonusSum().compareTo(BigDecimal.ZERO) > 0) { - subtotal.setAgentIntroduceBonusSum(subtotal.getAgentIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); - } subtotal.setMainBonusSum(subtotal.getMainBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurBonusSum(subtotal.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setTotalBonusSum(subtotal.getTotalBonusSum().multiply(currency.getData().getInExchangeRate())); @@ -508,7 +392,6 @@ public class CuBonusStatisController extends BaseController { return AjaxResult.success(subtotal); } - /** * 奖金拨比图表统计 **/ @@ -661,16 +544,13 @@ public class CuBonusStatisController extends BaseController { BigDecimal orderAchieve; BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + CuBonusStatisVO cuBonusStatisAchieve = new CuBonusStatisVO(); cuBonusStatisAchieve.setStartDate(chartVO.getStartDate()); cuBonusStatisAchieve.setEndDate(chartVO.getEndDate()); @@ -687,7 +567,6 @@ public class CuBonusStatisController extends BaseController { //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { - BigDecimal ratio = new BigDecimal("0.01"); for (CuBonusStatisVO cs : bdr) { dividendRatio = dividendRatio.add(cs.getDividendRatio()); @@ -700,7 +579,7 @@ public class CuBonusStatisController extends BaseController { chartVO.setOrderAchieve(orderAchieve.multiply(dividendRatio)); CuBonusStatisChartVO sumChart = iCuBonusStatisService.queryCuBonusSumStatisChart(chartVO); - if (sumChart != null && pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { + if (sumChart != null) { sumChart.setIntroduceBonusSum(sumChart.getIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setOrgBonusSum(sumChart.getOrgBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setLeaderBonusSum(sumChart.getLeaderBonusSum().multiply(currency.getData().getInExchangeRate())); @@ -713,35 +592,6 @@ public class CuBonusStatisController extends BaseController { sumChart.setRepurBonusSum(sumChart.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setTotalBonusSum(sumChart.getTotalBonusSum().multiply(currency.getData().getInExchangeRate())); } - if (sumChart != null && !pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - if (sumChart.getMainRegAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainRegAmount(sumChart.getMainRegAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getMainUpAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainUpAmount(sumChart.getMainUpAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentRegAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentRegAmount(sumChart.getAgentRegAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentUpAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentUpAmount(sumChart.getAgentUpAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setFirstPurchaseAll(sumChart.getFirstPurchaseAll().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentFirstAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentFirstAmount(sumChart.getAgentFirstAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentRepurAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentRepurAmount(sumChart.getAgentRepurAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getMainRepurAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainRepurAmount(sumChart.getMainRepurAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setRepurchaseAllAmount(sumChart.getRepurchaseAllAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - } return AjaxResult.success(sumChart); } @@ -782,20 +632,12 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setPkTeamCodeList(pkTeamCodeList); } //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); startPage(); @@ -814,7 +656,6 @@ public class CuBonusStatisController extends BaseController { if (itm.getLeaderBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setLeaderBonus(itm.getLeaderBonus().multiply(currency.getData().getInExchangeRate())); } - String creationTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, itm.getCreationTime()); //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -835,18 +676,12 @@ public class CuBonusStatisController extends BaseController { if (itm.getServiceBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setServiceBonus(itm.getServiceBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getHiFunIncome().compareTo(BigDecimal.ZERO) > 0) { - itm.setHiFunIncome(itm.getHiFunIncome().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurRangeBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurRangeBonus(itm.getRepurRangeBonus().multiply(currency.getData().getInExchangeRate())); } if (itm.getRepurOrgBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurOrgBonus(itm.getRepurOrgBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getAgentIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { - itm.setAgentIntroduceBonus(itm.getAgentIntroduceBonus().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurBonus(itm.getRepurBonus().multiply(chRate)); } @@ -867,17 +702,12 @@ public class CuBonusStatisController extends BaseController { subtotal.setServiceBonus(subtotal.getServiceBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurRangeBonus(subtotal.getRepurRangeBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurOrgBonus(subtotal.getRepurOrgBonusSum().multiply(currency.getData().getInExchangeRate())); - subtotal.setAgentIntroduceBonus(subtotal.getAgentIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setMainBonus(subtotal.getMainBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurBonus(subtotal.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setTotalBonus((subtotal.getTotalBonusSum()).multiply(currency.getData().getInExchangeRate())); subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); - subtotal.setAgentRegAmount(subtotal.getAgentRegAmountSum()); - subtotal.setAgentUpAmount(subtotal.getAgentUpAmountSum()); subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setAgentFirstAmount(subtotal.getAgentFirstAmountSum()); - subtotal.setAgentRepurAmount(subtotal.getAgentRepurAmountSum()); subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); subtotal.setRepurchaseAllAmount(subtotal.getRepurchaseAllAmountSum()); subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); @@ -921,16 +751,13 @@ public class CuBonusStatisController extends BaseController { BigDecimal orderAchieve; BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + CuBonusStatisVO cuBonusStatisAchieve = new CuBonusStatisVO(); cuBonusStatisAchieve.setStartDate(cuBonusStatisVO.getStartDate()); cuBonusStatisAchieve.setEndDate(cuBonusStatisVO.getEndDate()); @@ -947,7 +774,6 @@ public class CuBonusStatisController extends BaseController { //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { - BigDecimal ratio = new BigDecimal("0.01"); for (CuBonusStatisVO cs : bdr) { dividendRatio = dividendRatio.add(cs.getDividendRatio()); @@ -1137,12 +963,10 @@ public class CuBonusStatisController extends BaseController { Date date = DateUtils.currentDate(); date = DateUtils.beforeDate(2, ChronoUnit.DAYS, date); Date endDate = DateUtils.beforeDate(5, ChronoUnit.DAYS, date); - if (StringUtils.isEmpty(endDateStr) || - StringUtils.isEmpty(startDateStr)) { + if (StringUtils.isEmpty(endDateStr) || StringUtils.isEmpty(startDateStr)) { endDateStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); startDateStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, endDate)); } - System.out.println(startDateStr + "--" + endDateStr); //删除前6天的数据 Boolean delstatis = iCuBonusStatisService.delStatis(startDateStr, endDateStr); if (delstatis) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java index 2c6707a6..b4768d87 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOperationBusiness; @@ -18,7 +17,6 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; import com.hzs.member.statis.service.ICuBonusVertexStatisService; import com.hzs.member.statis.vo.*; import com.hzs.system.base.ICurrencyServiceApi; @@ -40,9 +38,6 @@ import java.util.stream.Collectors; /** * 奖金拨比零线统计 前端控制器 - * - * @author hzs - * @since 2024-08-12 */ @Slf4j @RestController @@ -51,33 +46,21 @@ public class CuBonusVertexStatisController extends BaseController { @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; @DubboReference ICurrencyServiceApi currencyServiceApi; - /** - * @description: 查询所有顶点会员 - * @author: zhang jing - * @date: 2024/8/14 15:56 - * @param: [] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询所有顶点会员 **/ @GetMapping("/vertexList") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_LIST, method = EOperationMethod.SELECT) public TableDataInfo vertexList() { List vertexList = iCuBonusVertexStatisService.vertexList(null); return getDataTable(vertexList); } /** - * @description: 奖金拨比列表 - * @author: zhang jing - * @date: 2023/6/2 17:27 - * @param: [CuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 奖金拨比列表 **/ @AccessPermissions("TopPerformance") @GetMapping("/list") @@ -105,11 +88,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表(PV) - * @author: zhang jing - * @date: 2025/3/12 17:15 - * @param: [cuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 奖金拨比列表(PV) **/ @AccessPermissions("TopPerformance") @GetMapping("/list-pv") @@ -135,18 +114,12 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 导出奖金拨比列表 - * @author: zhang jing - * @date: 2023/8/16 20:07 - * @param: [response, cuBonusVertexStatisVO] - * @return: void + * 导出奖金拨比列表 **/ @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, CuBonusVertexStatisVO cuBonusVertexStatisVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusVertexStatisVO subtotal = null; R currency = currencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisVO.setRate(exchangeRate); @@ -155,44 +128,39 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { cuBonusVertexStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusVertexStatisService.queryCuBonusStatis(cuBonusVertexStatisVO); - //合计 - subtotal = iCuBonusVertexStatisService.queryCuBonusSumStatis(cuBonusVertexStatisVO); - subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); - subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); - subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); - subtotal.setRetailConsumeAmount(subtotal.getRetailConsumeAmountSum()); - subtotal.setTotalAmount(subtotal.getTotalAmountSum()); - subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); - subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); - subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); - subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); - subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); - subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); - subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); - subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); - subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); - subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); - subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); - subtotal.setTotalBonus(subtotal.getTotalBonusSum()); - subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); - } + List slList = iCuBonusVertexStatisService.queryCuBonusStatis(cuBonusVertexStatisVO); //合计 - if (subtotal == null) { - subtotal = new CuBonusVertexStatisVO(); - } + CuBonusVertexStatisVO subtotal = iCuBonusVertexStatisService.queryCuBonusSumStatis(cuBonusVertexStatisVO); + subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); + subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); + subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); + subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); + subtotal.setRetailConsumeAmount(subtotal.getRetailConsumeAmountSum()); + subtotal.setTotalAmount(subtotal.getTotalAmountSum()); + subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); + subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); + subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); + subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); + subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); + subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); + subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); + subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); + subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); + subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); + subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); + subtotal.setTotalBonus(subtotal.getTotalBonusSum()); + subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); + subtotal = new CuBonusVertexStatisVO(); subtotal.setMemberCode("合计"); slList.add(subtotal); ExcelUtil util = new ExcelUtil<>(CuBonusVertexStatisVO.class); @@ -200,18 +168,12 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 导出奖金拨比列表(PV) - * @author: zhang jing - * @date: 2025/3/12 17:23 - * @param: [response, cuBonusVertexStatisPvVO] - * @return: void + * 导出奖金拨比列表(PV) **/ @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) @PostMapping("/export-pv") public void exportPv(HttpServletResponse response, CuBonusVertexStatisPvVO cuBonusVertexStatisPvVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusVertexStatisPvVO subtotal = null; R currency = currencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisPvVO.setRate(exchangeRate); @@ -220,44 +182,38 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisPvVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { cuBonusVertexStatisPvVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisPvVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusVertexStatisService.queryCuBonusPvStatis(cuBonusVertexStatisPvVO); - //合计 - subtotal = iCuBonusVertexStatisService.queryCuBonusPvSumStatis(cuBonusVertexStatisPvVO); - subtotal.setMainRegPv(subtotal.getMainRegPvSum()); - subtotal.setMainUpPv(subtotal.getMainUpPvSum()); - subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setMainRepurPv(subtotal.getMainRepurPvSum()); - subtotal.setTotalAchieve(subtotal.getTotalAchieveSum()); - subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); - subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); - subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); - subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); - subtotal.setRetailConsumePv(subtotal.getRetailConsumePvSum()); - subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); - subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); - subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); - subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); - subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); - subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); - subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); - subtotal.setTotalBonus(subtotal.getTotalBonusSum()); - subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); - } - + List slList = iCuBonusVertexStatisService.queryCuBonusPvStatis(cuBonusVertexStatisPvVO); //合计 - if (subtotal == null) { - subtotal = new CuBonusVertexStatisPvVO(); - } + CuBonusVertexStatisPvVO subtotal = iCuBonusVertexStatisService.queryCuBonusPvSumStatis(cuBonusVertexStatisPvVO); + subtotal.setMainRegPv(subtotal.getMainRegPvSum()); + subtotal.setMainUpPv(subtotal.getMainUpPvSum()); + subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); + subtotal.setMainRepurPv(subtotal.getMainRepurPvSum()); + subtotal.setTotalAchieve(subtotal.getTotalAchieveSum()); + subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); + subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); + subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); + subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); + subtotal.setRetailConsumePv(subtotal.getRetailConsumePvSum()); + subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); + subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); + subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); + subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); + subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); + subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); + subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); + subtotal.setTotalBonus(subtotal.getTotalBonusSum()); + subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); + subtotal = new CuBonusVertexStatisPvVO(); subtotal.setMemberCode("合计"); slList.add(subtotal); ExcelUtil util = new ExcelUtil<>(CuBonusVertexStatisPvVO.class); @@ -265,11 +221,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表合计 - * @author: zhang jing - * @date: 2023/9/15 14:04 - * @param: [CuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 奖金拨比列表合计 **/ @AccessPermissions("TopPerformance") @GetMapping("/subtotal") @@ -285,8 +237,8 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { cuBonusVertexStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } @@ -297,11 +249,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表合计(PV) - * @author: zhang jing - * @date: 2025/3/12 17:20 - * @param: [cuBonusVertexStatisPvVO] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 奖金拨比列表合计(PV) **/ @AccessPermissions("TopPerformance") @GetMapping("/subtotal-pv") @@ -317,8 +265,8 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisPvVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { cuBonusVertexStatisPvVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisPvVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } @@ -329,19 +277,15 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 统计历史奖金拨比数据, 手动统计某一天 - * @author: zhang jing - * @date: 2023/8/16 11:43 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 统计历史奖金拨比数据, 手动统计某一天 **/ @GetMapping("/statis-history") public AjaxResult statisHistoryBonus(String startDate, String endDate) { if (StringUtils.isEmpty(startDate) || StringUtils.isEmpty(endDate)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_DATE_NOT_NULL)); } - List vertexList = iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList = vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList()); + List vertexList = iCuBonusVertexStatisService.vertexList(null); + List pkVertexList = vertexList.stream().map(CuBonusVertexStatisVO::getPkVertex).collect(Collectors.toList()); //删除数据 if (CollectionUtil.isNotEmpty(pkVertexList)) { iCuBonusVertexStatisService.delStatis(startDate, endDate, pkVertexList); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java index bd9962d6..ca16b4cd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java @@ -8,7 +8,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; @@ -32,7 +31,6 @@ import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; -import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -46,8 +44,9 @@ public class CuBonusVertexStatisTotalController extends BaseController { @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; + @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; /** * 奖金拨比列表 @@ -57,11 +56,11 @@ public class CuBonusVertexStatisTotalController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_TOTAL, method = EOperationMethod.SELECT) public TableDataInfo list(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); + R currency = iCurrencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusVertexStatisTotalVO.setRate(exchangeRate); + BigDecimal cent = new BigDecimal(100); + cuBonusVertexStatisTotalVO.setRate(exchangeRate); cuBonusVertexStatisTotalVO.setPerCent(exchangeRate.multiply(cent)); cuBonusVertexStatisTotalVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 @@ -71,10 +70,7 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisTotalVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisTotalVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusVertexStatisTotalVO.setOrderTypeList(orderTypeList); + //查询分红比例配置 cuBonusVertexStatisTotalVO.setDividendRatio(BigDecimal.ZERO); //查询顶点会员 @@ -83,27 +79,12 @@ public class CuBonusVertexStatisTotalController extends BaseController { CuBonusVertexStatisVO cvs = BeanUtil.copyProperties(cuBonusVertexStatisTotalVO, CuBonusVertexStatisVO.class); for (CuBonusVertexStatisTotalVO ve : vertexList) { cvs.setPkVertex(ve.getPkVertex()); - -// CuBonusVertexStatisTotalVO energyChamberAmountSum = iCuBonusVertexStatisService.queryEnergyChamberOrderTotal(cvs); -// //查询顶点拓展封顶人数 -// CuBonusVertexStatisTotalVO orgTopNumber = iCuBonusVertexStatisService.queryOrgTopNumber(cvs); -// if (orgTopNumber != null) { -// energyChamberAmountSum.setOrgTopNumber(orgTopNumber.getOrgTopNumber()); -// } -// //查询顶点拓展平均碰次和拓展最高碰次 -// CuBonusVertexStatisTotalVO touch = iCuBonusVertexStatisService.queryTouch(cvs); -// if (touch != null) { -// energyChamberAmountSum.setOrgAvTouch(touch.getOrgAvTouch()); -// energyChamberAmountSum.setOrgMaxTouch(touch.getOrgMaxTouch()); -// } - } startPage(); //查询顶点奖金拨比汇总 - slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); + List slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -145,7 +126,7 @@ public class CuBonusVertexStatisTotalController extends BaseController { public void export(HttpServletResponse response, CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO) { Integer pkCountry = SecurityUtils.getPkCountry(); List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); + R currency = iCurrencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisTotalVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); @@ -153,15 +134,11 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisTotalVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getEndDate())) { cuBonusVertexStatisTotalVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisTotalVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusVertexStatisTotalVO.setOrderTypeList(orderTypeList); //查询分红比例配置 cuBonusVertexStatisTotalVO.setDividendRatio(BigDecimal.ZERO); //查询顶点会员 @@ -170,20 +147,6 @@ public class CuBonusVertexStatisTotalController extends BaseController { CuBonusVertexStatisVO cvs = BeanUtil.copyProperties(cuBonusVertexStatisTotalVO, CuBonusVertexStatisVO.class); for (CuBonusVertexStatisTotalVO ve : vertexList) { cvs.setPkVertex(ve.getPkVertex()); - - CuBonusVertexStatisTotalVO tmpTotal = new CuBonusVertexStatisTotalVO(); - tmpTotal.setPkVertex(ve.getPkVertex()); - //查询顶点拓展封顶人数 - CuBonusVertexStatisTotalVO orgTopNumber = iCuBonusVertexStatisService.queryOrgTopNumber(cvs); - if (orgTopNumber != null) { - tmpTotal.setOrgTopNumber(orgTopNumber.getOrgTopNumber()); - } - //查询顶点拓展平均碰次和拓展最高碰次 - CuBonusVertexStatisTotalVO touch = iCuBonusVertexStatisService.queryTouch(cvs); - if (touch != null) { - tmpTotal.setOrgAvTouch(touch.getOrgAvTouch()); - tmpTotal.setOrgMaxTouch(touch.getOrgMaxTouch()); - } } startPage(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java deleted file mode 100644 index 05d5ebc3..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.hzs.member.statis.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 奖金拨比零线统计 Mapper 接口 - */ -public interface CuBonusLenjoyStatisMapper extends BaseMapper { - - /** - * 奖金拨比列表 - **/ - List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 奖金拨比列表统计小计(最后一行) - **/ - CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 7天重算查询订单 - **/ - List queryAnewSaOrderByLessDay(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 删除奖金拨比统计表数据 - **/ - Boolean delStatis(@Param("startDate") String startDate, - @Param("endDate") String endDate, - @Param("pkVertexList") List pkVertexList); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询7天重算奖金查询 - **/ - List queryVertexChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询有效顶点 - **/ - List vertexList(@Param("pkVertex") Integer pkVertex); - - /** - * 查询当天团队统计数据 - **/ - List getCuBonusStatis(CuBonusVertexStatis CuBonusVertexStatis); - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java index dffe672a..625b9321 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java @@ -22,16 +22,6 @@ public interface CuBonusStatisMapper extends BaseMapper { **/ List queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金拨比 - **/ - List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询国外奖金拨比合计 - **/ - CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO); - /** * 查询体系合计的订单业绩 **/ @@ -87,21 +77,11 @@ public interface CuBonusStatisMapper extends BaseMapper { **/ List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金 - **/ - List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO); - /** * 查询中国奖金 **/ List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询生效国外国家列表 - **/ - List countrylist(CuBonusStatisVO cuBonusStatisVO); - /** * 查询有效体系 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java index 282d1947..1b96cc07 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java @@ -37,16 +37,6 @@ public interface CuBonusVertexStatisMapper extends BaseMapper queryCuBonusVertex(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO); - /** - * 查询顶点拓展封顶人数 - **/ - CuBonusVertexStatisTotalVO queryOrgTopNumber(CuBonusVertexStatisVO cuBonusVertexStatisVO); - - /** - * 查询顶点拓展平均碰次和拓展最高碰次 - **/ - CuBonusVertexStatisTotalVO queryTouch(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 奖金拨比列表统计小计(最后一行) **/ @@ -69,11 +59,6 @@ public interface CuBonusVertexStatisMapper extends BaseMapper pkVertexList); - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusVertexStatisVO CuBonusVertexStatisVO); - /** * 查询7天重算奖金查询 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java index 7111fd87..3ff00de0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java @@ -1,53 +1,29 @@ package com.hzs.member.statis.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.achieve.CuMemberAchieve; -import com.hzs.common.domain.member.bonus.CuMemberBonus; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.statis.ICuBonusStatisServiceApi; import com.hzs.member.statis.service.ICuBonusStatisService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; - - /** - * @description: 奖金拨比统计Dubbo 服务 - * @author: zhang jing - * @date: 2023/6/1 17:25 - * @param: - * @return: + * 奖金拨比统计Dubbo 服务 **/ @Slf4j @DubboService public class ICuBonusStatisServiceProvider implements ICuBonusStatisServiceApi { @Autowired - ICuBonusStatisService iCuBonusStatisService; + private ICuBonusStatisService iCuBonusStatisService; - /** - * @description: 统计历史奖金拨比 - * @author: zhang jing - * @date: 2023/10/19 9:29 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R statisHistoryBonus(String startDate, String endDate) { + public R statisHistoryBonus(String startDate, String endDate) { return R.ok(iCuBonusStatisService.statisHistoryBonus(startDate, endDate)); } - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R delStatis(String startDate, String endDate) { + public R delStatis(String startDate, String endDate) { return R.ok(iCuBonusStatisService.delStatis(startDate, endDate)); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java index 9e88c69b..c4ab6cb9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java @@ -3,24 +3,17 @@ package com.hzs.member.statis.provider; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.domain.R; import com.hzs.member.statis.ICuBonusVertexStatisServiceApi; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; import com.hzs.member.statis.service.ICuBonusVertexStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; +import com.hzs.member.statis.vo.CuBonusVertexStatisVO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; - /** - * @description: 顶点奖金拨比统计Dubbo 服务 - * @author: zhang jing - * @date: 2023/6/1 17:25 - * @param: - * @return: + * 顶点奖金拨比统计Dubbo 服务 **/ @Slf4j @DubboService @@ -28,46 +21,22 @@ public class ICuBonusVertexStatisServiceProvider implements ICuBonusVertexStatis @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; - - - - - /** - * @description: 7天重算顶点奖金拨比统计 - * @author: zhang jing - * @date: 2024/8/15 9:58 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R anewStatisHistoryBonus(String startDate,String endDate) { - return R.ok(iCuBonusVertexStatisService.anewStatisHistoryBonus( startDate, endDate)); + public R anewStatisHistoryBonus(String startDate, String endDate) { + return R.ok(iCuBonusVertexStatisService.anewStatisHistoryBonus(startDate, endDate)); } - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R delStatis(String startDate,String endDate) { - List vertexList=iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList= new ArrayList<>(); - pkVertexList.addAll(vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList())); - if(CollectionUtil.isNotEmpty(pkVertexList)){ - iCuBonusVertexStatisService.delStatis(startDate, endDate,pkVertexList); + public R delStatis(String startDate, String endDate) { + List vertexList = iCuBonusVertexStatisService.vertexList(null); + if (CollectionUtil.isNotEmpty(vertexList)) { + List pkVertexList = vertexList.stream().map(CuBonusVertexStatisVO::getPkVertex).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(pkVertexList)) { + iCuBonusVertexStatisService.delStatis(startDate, endDate, pkVertexList); + } } return R.ok(); } - - - - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java deleted file mode 100644 index f28ca5a8..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.member.statis.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; - -import java.util.List; - -/** - * 奖金拨比零线统计 服务类 - */ -public interface ICuBonusLenjoyStatisService extends IService { - - /** - * 奖金拨比列表 - **/ - List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 奖金拨比列表统计小计(最后一行) - **/ - CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 7天重算顶点奖金拨比统计 - **/ - Boolean anewStatisHistoryBonus(String startDate, String endDate); - - /** - * 删除奖金拨比统计表数据 - **/ - Boolean delStatis(String startDate, String endDate, List pkVertexList); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询所有体系 - **/ - List vertexList(Integer pkVertex); - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java index 92554636..36f38a17 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java @@ -16,16 +16,6 @@ public interface ICuBonusStatisService extends IService { **/ List queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金拨比 - **/ - List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询国外奖金拨比合计 - **/ - CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO); - /** * 查询体系合计的订单业绩 **/ @@ -86,21 +76,6 @@ public interface ICuBonusStatisService extends IService { **/ List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金 - **/ - List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询生效国外国家列表 - **/ - List countrylist(CuBonusStatisVO cuBonusStatisVO); - /** * 查询所有体系 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java index 867526a6..1228dff0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java @@ -38,16 +38,6 @@ public interface ICuBonusVertexStatisService extends IService queryCuBonusVertex(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO); - /** - * 查询顶点拓展封顶人数 - **/ - CuBonusVertexStatisTotalVO queryOrgTopNumber(CuBonusVertexStatisVO cuBonusVertexStatisVO); - - /** - * 查询顶点拓展平均碰次和拓展最高碰次 - **/ - CuBonusVertexStatisTotalVO queryTouch(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 奖金拨比列表统计小计(最后一行) **/ @@ -68,11 +58,6 @@ public interface ICuBonusVertexStatisService extends IService pkVertexList); - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 查询生效国外国家列表 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java deleted file mode 100644 index 950e0a25..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java +++ /dev/null @@ -1,258 +0,0 @@ -package com.hzs.member.statis.service.impl; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.EOrderStatus; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.statis.mapper.CuBonusLenjoyStatisMapper; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -/** - * 奖金拨比零线统计 服务实现类 - */ -@Service -public class CuBonusLenjoyStatisServiceImpl extends ServiceImpl implements ICuBonusLenjoyStatisService { - - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired - private ICuMemberService iCuMemberService; - - /** - * 通过日期范围,返回范围内每天的日期 - **/ - public static List getDatesInRange(String startDate, String endDate) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - LocalDate start = LocalDate.parse(startDate, formatter); - LocalDate end = LocalDate.parse(endDate, formatter); - List dates = new ArrayList<>(); - LocalDate current = start; - while (!current.isAfter(end)) { - dates.add(current.format(formatter)); - current = current.plusDays(1); - } - return dates; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean anewStatisHistoryBonus(String startDate, String endDate) { - //查询顶点会员 - List vertexList = vertexList(null); - //会员订单信息 - List orachListAll = new ArrayList<>(); - //查询新增订单 - CuBonusLenjoyStatisVO cbs = new CuBonusLenjoyStatisVO(); - //日期集合 - List dates = getDatesInRange(startDate, endDate); - for (String date : dates) { - int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(date).getPkId(); - String settleTableName = TableNameConstants.CU_MEMBER_RANGE + period; - Integer count = iCuMemberService.selectExistTable(settleTableName); - if (count == 0) { - continue; - } - //累加好的数据存入soAll - List soAll = new ArrayList<>(); - cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cbs.setOrderStatus(EOrderStatus.PAY.getValue()); - cbs.setStartDate(date); - cbs.setEndDate(date); - cbs.setPeriod(period); - cbs.setSettleTableName(settleTableName); - cbs.setPkCountry(CountryConstants.CHINA_COUNTRY); - //先查订单 - for (CuBonusLenjoyStatisVO ve : vertexList) { - cbs.setPkVertex(ve.getPkVertex()); - List orachList = baseMapper.queryAnewSaOrderByLessDay(cbs); - orachListAll.addAll(orachList); - } - Map> orachListMap = orachListAll.stream() - .collect(Collectors.groupingBy(CuBonusLenjoyStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(orachListAll)) { - if (CollectionUtil.isNotEmpty(vertexList)) { - for (Map.Entry> entry : orachListMap.entrySet()) { - for (CuBonusLenjoyStatisVO ve : vertexList) { - CuBonusLenjoyStatisVO oldSo = new CuBonusLenjoyStatisVO(); - oldSo = addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); - if (oldSo.getPkCountry() != null) { - soAll.add(oldSo); - } - } - } - } - } - //累加好的数据存入acAll - List acAll = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(vertexList)) { - for (CuBonusLenjoyStatisVO ve : vertexList) { - cbs.setPkVertex(ve.getPkVertex()); - //查询中国统计奖金 - List listCn = baseMapper.queryVertexChinaCountryBonus(cbs); - Map> listCnMap = listCn.stream() - .collect(Collectors.groupingBy(CuBonusLenjoyStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(listCn)) { - for (Map.Entry> entry : listCnMap.entrySet()) { - CuBonusLenjoyStatisVO oldSo = new CuBonusLenjoyStatisVO(); - for (CuBonusLenjoyStatisVO cb : entry.getValue()) { - if (ve.getPkVertex().equals(cb.getPkVertex())) { - oldSo = addChAchieve(oldSo, cb); - } - } - if (oldSo.getPkCountry() != null) { - acAll.add(oldSo); - } - } - } - } - } - //存入订单信息 - saveBonusStatis(soAll); - //存入国内奖金信息 - saveBonusStatisAchieve(acAll); - } - return true; - } - - @Override - public Boolean delStatis(String startDate, String endDate, List pkVertexList) { - return baseMapper.delStatis(startDate, endDate, pkVertexList); - } - - @Override - public List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryCuBonusStatis(CuBonusLenjoyStatisVO); - } - - @Override - public CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryCuBonusSumStatis(CuBonusLenjoyStatisVO); - } - - //累计中国奖金 - private CuBonusLenjoyStatisVO addChAchieve(CuBonusLenjoyStatisVO oldBon, CuBonusLenjoyStatisVO newBon) { - oldBon.setPkCountry(newBon.getPkCountry()); - oldBon.setCreationTime(newBon.getCreationTime()); - oldBon.setPkVertex(newBon.getPkVertex()); - oldBon.setCloudRealSubtotal(addOrInitializeAmount(oldBon.getCloudRealSubtotal(), newBon.getRealIncome(), 2)); - return oldBon; - } - - @Override - public List vertexList(Integer pkVertex) { - return baseMapper.vertexList(pkVertex); - } - - - /** - * 累加订单金额 - **/ - private CuBonusLenjoyStatisVO addOrderAmount(CuBonusLenjoyStatisVO oldSo, Integer pkCountry, Integer pkVertex, List orachList, int type) { - for (CuBonusLenjoyStatisVO newSo : orachList) { - // 修改统计数据 - if ((pkCountry == null && pkVertex != null && pkVertex.equals(newSo.getPkVertex())) || - (pkCountry != null && pkVertex == null && pkCountry.equals(newSo.getPkCountry()))) { - oldSo.setPkCountry(newSo.getPkCountry()); - oldSo.setCreationTime(newSo.getCreationTime()); - if (newSo.getPkVertex() != null) { - oldSo.setPkVertex(newSo.getPkVertex()); - } - } - } - return oldSo; - } - - private void saveBonusStatisAchieve(List cblist) { - for (CuBonusLenjoyStatisVO cb : cblist) { - if (cb.getPkCountry() == null) { - continue; - } - //查询体系是否添加 - CuBonusVertexStatis bs = new CuBonusVertexStatis(); - bs.setPkBdVertex(cb.getPkVertex()); - bs.setCreationTime(cb.getCreationTime()); - bs.setPkCountry(cb.getPkCountry()); - bs.setCloudRealSubtotal(cb.getCloudRealSubtotal()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - } - - /** - * 保存奖金拨比订单数据 - **/ - private void saveBonusStatis(List soList) { - for (CuBonusLenjoyStatisVO so : soList) { - if (so.getPkCountry() == null) { - continue; - } - CuBonusVertexStatis bs = new CuBonusVertexStatis(); - bs.setPkBdVertex(so.getPkVertex()); - bs.setCreationTime(so.getCreationTime()); - bs.setPkCountry(so.getPkCountry()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - - } - - @Override - public List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryChinaCountryBonus(CuBonusLenjoyStatisVO); - } - - // 获取或初始化金额 - private BigDecimal addOrInitializeAmount(BigDecimal currentAmount, BigDecimal newAmount, int type) { - if (type == 1) { - if (currentAmount != null) { - return currentAmount.subtract(newAmount); - } else { - return newAmount; - } - } else { - if (currentAmount != null) { - return currentAmount.add(newAmount); - } else { - return newAmount; - } - } - } - - /** - * 查询当天顶点统计数据 - **/ - public List getCuBonusStatis(CuBonusVertexStatis CuBonusVertexStatis) { - return baseMapper.getCuBonusStatis(CuBonusVertexStatis); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java index c222904f..f92fd106 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java @@ -8,12 +8,10 @@ import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.statis.CuBonusStatis; -import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.statis.mapper.CuBonusStatisMapper; import com.hzs.member.statis.service.ICuBonusStatisService; import com.hzs.member.statis.vo.*; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -29,9 +27,6 @@ import java.util.stream.Collectors; @Slf4j public class CuBonusStatisServiceImpl extends ServiceImpl implements ICuBonusStatisService { - @Autowired - ICuMemberSettlePeriodService cuMemberSettlePeriodService; - /** * 保存奖金拨比订单数据 **/ @@ -47,17 +42,9 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cblist) { for (CuBonusStatisVO cb : cblist) { @@ -260,13 +172,8 @@ public class CuBonusStatisServiceImpl extends ServiceImpl existingRecord = getCuBonusStatis(bs); @@ -279,37 +186,6 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cblist) { - for (CuBonusStatisVO cb : cblist) { - if (cb.getPkCountry() == null) { - continue; - } - //查询体系是否添加 - CuBonusStatis bs = new CuBonusStatis(); - bs.setCreationTime(cb.getCreationTime()); - bs.setPkCountry(cb.getPkCountry()); - bs.setIntroduceBonus(cb.getIntroduceBonus()); - bs.setOrgBonus(cb.getOrgBonus()); - bs.setLeaderBonus(cb.getLeaderBonus()); - bs.setShareBonus(cb.getShareBonus()); - bs.setServiceBonus(cb.getServiceBonus()); - bs.setRepurRangeBonus(cb.getRepurRangeBonus()); - bs.setRepurOrgBonus(cb.getRepurOrgBonus()); - bs.setRepurPushIncome(cb.getRepurPushIncome()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - } - // 获取或初始化金额 private BigDecimal addOrInitializeAmount(BigDecimal currentAmount, BigDecimal newAmount, int type) { if (type == 1) { @@ -327,73 +203,36 @@ public class CuBonusStatisServiceImpl extends ServiceImpl queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryCuBonusStatis(cuBonusStatisVO); } - /** - * 查询国外奖金拨比 - **/ - @Override - public List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryCuBonusStatis(cuBonusStatisVO); - } - - /** - * 查询国外奖金拨比合计 - **/ - @Override - public CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryCuBonusStatisSum(cuBonusStatisVO); - } - - /** - * 查询体系合计的订单业绩 - **/ @Override public CuBonusStatisVO queryOrderAchieveSum(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryOrderAchieveSum(cuBonusStatisVO); } - /** - * 奖金拨比列表统计小计(最后一行) - **/ @Override public CuBonusStatisVO queryCuBonusSumStatis(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryCuBonusSumStatis(cuBonusStatisVO); } - /** - * 查询个人奖金拨比 - **/ @Override public CuBonusSinglePersonStatisVO bonusSingleSum(CuBonusSinglePersonStatisVO csps) { return baseMapper.bonusSingleSum(csps); } - /** - * 奖金拨比图表 - **/ @Override public List queryCuBonusStatisChart(CuBonusStatisChartVO chartVO) { return baseMapper.queryCuBonusStatisChart(chartVO); } - /** - * 奖金拨比图表合计 - **/ @Override public CuBonusStatisChartVO queryCuBonusSumStatisChart(CuBonusStatisChartVO chartVO) { return baseMapper.queryCuBonusSumStatisChart(chartVO); } - /** - * 查询奖金拨比图形数据-柱形图 - **/ @Override public CuBonusStatisColumnarVO pillarRatio(CuBonusStatisColumnarVO columnarVO) { // 查询当年的数据 @@ -420,18 +259,12 @@ public class CuBonusStatisServiceImpl extends ServiceImpl opt = Optional.ofNullable(baseMapper.queryYearData(columnarVO)); return opt.orElse(null); } - /** - * 查询奖金拨比(饼状图) - **/ @Override public CuBonusStatisRoundVO queryDiallingRatio(CuBonusStatisRoundVO roundVO) { return baseMapper.queryDiallingRatio(roundVO); @@ -450,27 +283,30 @@ public class CuBonusStatisServiceImpl extends ServiceImpl vertexlist = vertexList(); + //查询新增订单 CuBonusStatisVO cbs = new CuBonusStatisVO(); - //累加好的数据存入soAll - List soAll = new ArrayList<>(); cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); cbs.setOrderStatus(EOrderStatus.PAY.getValue()); cbs.setStartDate(startDate); cbs.setEndDate(endDate); cbs.setPkCountry(CountryConstants.CHINA_COUNTRY); -// //先查中国订单 + + //累加好的数据存入soAll + List soAll = new ArrayList<>(); + // 查中国订单 List orachList = baseMapper.querySaOrderByLessDay(cbs); - Map> orachListMap = orachList.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - //查询所有体系 - List vertexlist = vertexList(); if (CollectionUtil.isNotEmpty(orachList)) { + // 按支付时间(年月日)把订单进行分组(key:支付时间(年月日),value:订单统计数据列表) + Map> orachListMap = orachList.stream().collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + if (CollectionUtil.isNotEmpty(vertexlist)) { for (Map.Entry> entry : orachListMap.entrySet()) { for (CuBonusStatisVO ve : entry.getValue()) { CuBonusStatisVO oldSo = new CuBonusStatisVO(); - oldSo = addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); + addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); if (oldSo.getPkCountry() != null) { soAll.add(oldSo); } @@ -478,153 +314,58 @@ public class CuBonusStatisServiceImpl extends ServiceImpl> soAllMap = soAll.stream() -// .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + //累加好的数据存入acAll List acAll = new ArrayList<>(); //查询中国统计奖金 -// List listCn = cuMemberBonusService.queryMemberBonusByPeriod(null, startDate, endDate, CountryConstants.CHINA_COUNTRY); - List listCn = queryChinaCountryBonus(cbs); - Map> listCnMap = listCn.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + List listCn = baseMapper.queryChinaCountryBonus(cbs); if (CollectionUtil.isNotEmpty(listCn)) { + // 按支付时间(年月日)把订单进行分组(key:支付时间(年月日),value:订单统计数据列表) + Map> listCnMap = listCn.stream() + .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + if (CollectionUtil.isNotEmpty(vertexlist)) { for (CuBonusStatisVO ve : vertexlist) { for (Map.Entry> entry : listCnMap.entrySet()) { CuBonusStatisVO oldSo = new CuBonusStatisVO(); for (CuBonusStatisVO cb : entry.getValue()) { if (ve.getPkVertex().equals(cb.getPkVertex())) { - oldSo = addChAchieve(oldSo, cb); + addChAchieve(oldSo, cb); if (oldSo.getPkCountry() != null) { acAll.add(oldSo); } } } - } } } } - //查询国外国家列表 查询国外统计奖金 - //累加好的数据存入fcAll - List fcAll = new ArrayList<>(); - List countrylist = countrylist(cbs); - if (CollectionUtil.isNotEmpty(countrylist)) { - for (CuBonusStatisVO con : countrylist) { - cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cbs.setOrderStatus(EOrderStatus.PAY.getValue()); - cbs.setStartDate(startDate); - cbs.setEndDate(endDate); - cbs.setPkCountry(con.getPkCountry()); - //查询国外订单 - List orach = baseMapper.querySaOrderByLessDay(cbs); - Map> orachMap = orach.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(orach)) { - for (Map.Entry> entry : orachMap.entrySet()) { - CuBonusStatisVO oldSo = new CuBonusStatisVO(); - oldSo = addOrderAmount(oldSo, con.getPkCountry(), null, entry.getValue(), 2); - if (oldSo.getPkCountry() != null) { - soAll.add(oldSo); - } - } - } - - //查询国外统计奖金 - //累加好的数据存入fcAll - CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); - cuBonusStatisVO.setStartDate(startDate); - cuBonusStatisVO.setEndDate(endDate); - cuBonusStatisVO.setPkCountry(con.getPkCountry()); - //查询国外奖金 - List bsList = queryForeignCountryBonus(cuBonusStatisVO); - Map> bsListMap = bsList.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(bsList)) { - for (Map.Entry> entry : bsListMap.entrySet()) { - CuBonusStatisVO oldSo1 = new CuBonusStatisVO(); - for (CuBonusStatisVO cb : entry.getValue()) { - if (con.getPkCountry().equals(cb.getPkCountry())) { - oldSo1 = addFcAchieve(oldSo1, cb); - } - } - if (oldSo1.getPkCountry() != null) { - fcAll.add(oldSo1); - } - } - - } - } - } - - //存入订单信息 saveBonusStatis(soAll); //存入国内奖金信息 saveBonusStatisAchieve(acAll); - //存入国外奖金信息 - saveForeignCountryBonus(fcAll); return true; } - /** - * 删除奖金拨比统计表数据 - **/ @Override public Boolean delStatis(String startDate, String endDate) { return baseMapper.delStatis(startDate, endDate); } - /** - * 查询奖金扣项配置参数 - **/ @Override public List bonusDeductlist(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.bonusDeductlist(cuBonusStatisVO); } - - /** - * 查询分红比例配置 - **/ @Override public List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.bonusDividendRatiolist(cuBonusStatisVO); } - /** - * 查询国外奖金 - **/ - @Override - public List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryBonus(cuBonusStatisVO); - } - - /** - * 查询中国奖金 - **/ - @Override - public List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryChinaCountryBonus(cuBonusStatisVO); - } - - - /** - * 查询生效国外国家列表 - **/ - @Override - public List countrylist(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.countrylist(cuBonusStatisVO); - } - - /** - * 查询有效体系 - **/ @Override public List vertexList() { return baseMapper.vertexList(); } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java index 767af1de..0b66ac0b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java @@ -3,7 +3,6 @@ package com.hzs.member.statis.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EOrderStatus; @@ -83,8 +82,7 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl> orachListMap = orachListAll.stream() - .collect(Collectors.groupingBy(CuBonusVertexStatisVO::getCreationTime)); + Map> orachListMap = orachListAll.stream().collect(Collectors.groupingBy(CuBonusVertexStatisVO::getCreationTime)); //查询所有体系 if (CollectionUtil.isNotEmpty(orachListAll)) { if (CollectionUtil.isNotEmpty(vertexList)) { @@ -161,16 +159,6 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl vertexList(Integer pkVertex) { List list = new ArrayList<>(); - List memberList = iCuMemberService.listRetailMemberByCode(Arrays.asList(SysConstants.RETAIL_TOP_CODE)); + List memberList = iCuMemberService.vertexList(); if (CollectionUtil.isNotEmpty(memberList)) { for (CuMemberExt cuMemberExt : memberList) { list.add(CuBonusVertexStatisVO.builder() - .pkVertex(cuMemberExt.getPkId().intValue()) + .pkVertex(cuMemberExt.getPkVertex().intValue()) .memberCode(cuMemberExt.getMemberCode()) .memberName(cuMemberExt.getMemberName()) .build()); @@ -238,16 +226,16 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl queryChinaCountryBonus(CuBonusVertexStatisVO cuBonusVertexStatisVO) { - return baseMapper.queryChinaCountryBonus(cuBonusVertexStatisVO); } // 获取或初始化金额 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java deleted file mode 100644 index 53afd852..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.hzs.member.statis.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.BigDecimalFormat; -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 乐享奖金拨比统计 - * 每个团队,每天一条数据 - * 数据来自 订单表奖金明细表 会员奖金-会员奖金汇总表 - */ -@Data -public class CuBonusLenjoyStatisVO { - - private static final long serialVersionUID = 1L; - - private Long pkId; - - /** - * 日,月,年,全 - */ - private String statisType; - - /** - * 顶点编号 - */ - @Excel(name = "顶点编号") - private String memberCode; - /** - * 顶点名称 - */ - @Excel(name = "顶点名称") - private String memberName; - /** - * 创建时间 - */ - @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 乐享极差 - */ - @Excel(name = "乐享极差(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal cloudRealSubtotal = BigDecimal.ZERO; - - private BigDecimal realIncome; - - /** - * 首购相关奖金拨比(%)=首购总奖金(推荐奖净值+拓展奖净值+领导奖净值+服务费净值+分红奖净值)/首购总金额 - */ - @Excel(name = "乐享拨出比例(%)", scale = 2) - @BigDecimalFormat - private BigDecimal lenjoyRate = BigDecimal.ZERO; - - - /** - * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 - */ - private Integer pkVertex; - - /** - * 国家 - */ - private Integer pkCountry; - /** - * 币种展示 当地币 本币 - */ - private Integer currency; - - /** - * 体系集合 - */ - private List pkBdVertexList; - - /** - * 开始时间 - */ - private String startDate; - /** - * 结束时间 - */ - private String endDate; - /** - * 汇率 *100 - */ - private BigDecimal perCent = BigDecimal.ZERO; - - /** - * 汇率 - */ - private BigDecimal rate = BigDecimal.ZERO; - - private Integer orderStatus; - private Integer delFlag; - private Long pkMember; - private Integer orderType; - - /** - * 订单PV - */ - private BigDecimal orderAchieve = BigDecimal.ZERO; - /** - * 订单金额 - */ - private BigDecimal orderAmount = BigDecimal.ZERO; - private List orderAchieveList; - List orderTypeList; - /** - * 本月会员网体表 - */ - private String settleTableName; - /** - * 期数 - */ - private int period; - - /** - * 系统类型 - */ - private int systemType; - - private String payTimeStr; - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java index ca49ec2f..9b8fdd60 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java @@ -10,14 +10,9 @@ import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计(波比图表) * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisChartVO { @@ -38,7 +33,7 @@ public class CuBonusStatisChartVO { /** * 创建时间 */ - @Excel(name = "业绩时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; /** @@ -51,15 +46,15 @@ public class CuBonusStatisChartVO { * 注册新增金额(¥) */ @BigDecimalFormat - @Excel(name = "注册专区(¥)",scale = 2) - private BigDecimal mainRegAmount=BigDecimal.ZERO; + @Excel(name = "注册专区(¥)", scale = 2) + private BigDecimal mainRegAmount = BigDecimal.ZERO; /** * 升级新增金额(¥) */ @BigDecimalFormat - @Excel(name = "升级专区(¥)",scale = 2) - private BigDecimal mainUpAmount=BigDecimal.ZERO; + @Excel(name = "升级专区(¥)", scale = 2) + private BigDecimal mainUpAmount = BigDecimal.ZERO; /** * 特殊注册 @@ -74,171 +69,171 @@ public class CuBonusStatisChartVO { * 云代注册金额 */ @BigDecimalFormat - @Excel(name = "云代注册(¥)",scale = 2) - private BigDecimal agentRegAmount=BigDecimal.ZERO; + @Excel(name = "云代注册(¥)", scale = 2) + private BigDecimal agentRegAmount = BigDecimal.ZERO; /** * 云代升级新增金额 */ @BigDecimalFormat - @Excel(name = "云代升级(¥)",scale = 2) - private BigDecimal agentUpAmount=BigDecimal.ZERO; + @Excel(name = "云代升级(¥)", scale = 2) + private BigDecimal agentUpAmount = BigDecimal.ZERO; /** * 首购总金额(¥) 注册金额+升级金额+特殊注册+特殊升级(1万礼包) */ @BigDecimalFormat - @Excel(name = "首购金额(¥)",scale = 2) - private BigDecimal firstPurchaseAll=BigDecimal.ZERO; + @Excel(name = "首购金额(¥)", scale = 2) + private BigDecimal firstPurchaseAll = BigDecimal.ZERO; /** * 直推收益(¥) */ @BigDecimalFormat - @Excel(name = "直推收益(¥)",scale = 2) - private BigDecimal introduceBonus=BigDecimal.ZERO; + @Excel(name = "直推收益(¥)", scale = 2) + private BigDecimal introduceBonus = BigDecimal.ZERO; /** * 直推收益拨比(%) 直推收益/首购金额 */ @BigDecimalFormat - @Excel(name = "直推收益拨比(%)",scale = 2) - private BigDecimal introduceBonusRate=BigDecimal.ZERO; + @Excel(name = "直推收益拨比(%)", scale = 2) + private BigDecimal introduceBonusRate = BigDecimal.ZERO; /** * 直推收益拨比小计(%) 直推收益/首购金额 */ @BigDecimalFormat - private BigDecimal introduceBonusRateSum=BigDecimal.ZERO; + private BigDecimal introduceBonusRateSum = BigDecimal.ZERO; /** * 拓展收益(¥) */ @BigDecimalFormat - @Excel(name = "拓展收益(¥)",scale = 2) - private BigDecimal orgBonus=BigDecimal.ZERO; + @Excel(name = "拓展收益(¥)", scale = 2) + private BigDecimal orgBonus = BigDecimal.ZERO; /** * 拓展收益拨比(%) */ @BigDecimalFormat - @Excel(name = "拓展收益拨比(%)",scale = 2) - private BigDecimal orgBonusRate=BigDecimal.ZERO; + @Excel(name = "拓展收益拨比(%)", scale = 2) + private BigDecimal orgBonusRate = BigDecimal.ZERO; /** * 拓展收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal orgBonusRateSum=BigDecimal.ZERO; + private BigDecimal orgBonusRateSum = BigDecimal.ZERO; /** * 辅导收益(¥) */ @BigDecimalFormat - @Excel(name = "辅导收益(¥)",scale = 2) - private BigDecimal leaderBonus=BigDecimal.ZERO; + @Excel(name = "辅导收益(¥)", scale = 2) + private BigDecimal leaderBonus = BigDecimal.ZERO; /** * 辅导收益拨比(%) */ @BigDecimalFormat - @Excel(name = "辅导收益(%)",scale = 2) - private BigDecimal leaderBonusRate=BigDecimal.ZERO; + @Excel(name = "辅导收益(%)", scale = 2) + private BigDecimal leaderBonusRate = BigDecimal.ZERO; /** * 辅导收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal leaderBonusRateSum=BigDecimal.ZERO; + private BigDecimal leaderBonusRateSum = BigDecimal.ZERO; /** * 分红收益(¥) */ @BigDecimalFormat - @Excel(name = "分红收益(¥)",scale = 2) - private BigDecimal shareBonus=BigDecimal.ZERO; + @Excel(name = "分红收益(¥)", scale = 2) + private BigDecimal shareBonus = BigDecimal.ZERO; /** * 分红收益拨比(%) */ @BigDecimalFormat - @Excel(name = "分红收益拨比(%)",scale = 2) - private BigDecimal shareBonusRate=BigDecimal.ZERO; + @Excel(name = "分红收益拨比(%)", scale = 2) + private BigDecimal shareBonusRate = BigDecimal.ZERO; /** * 分红收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal shareBonusRateSum=BigDecimal.ZERO; + private BigDecimal shareBonusRateSum = BigDecimal.ZERO; /** * 服务补贴(¥) */ @BigDecimalFormat - @Excel(name = "服务补贴(¥)",scale = 2) - private BigDecimal serviceBonus=BigDecimal.ZERO; + @Excel(name = "服务补贴(¥)", scale = 2) + private BigDecimal serviceBonus = BigDecimal.ZERO; /** * 服务补贴拨比(%) */ @BigDecimalFormat - @Excel(name = "服务补贴拨比(%)",scale = 2) - private BigDecimal serviceBonusRate=BigDecimal.ZERO; + @Excel(name = "服务补贴拨比(%)", scale = 2) + private BigDecimal serviceBonusRate = BigDecimal.ZERO; /** * 服务补贴拨比小计(%) */ @BigDecimalFormat - private BigDecimal serviceBonusRateSum=BigDecimal.ZERO; + private BigDecimal serviceBonusRateSum = BigDecimal.ZERO; /** * 云代直推收益(¥) */ @BigDecimalFormat - @Excel(name = "云代直推",scale = 2) - private BigDecimal agentIntroduceBonus=BigDecimal.ZERO; + @Excel(name = "云代直推", scale = 2) + private BigDecimal agentIntroduceBonus = BigDecimal.ZERO; /** * 云代直推收益拨比 */ @BigDecimalFormat - @Excel(name = "云代直推拨比(%)",scale = 2) - private BigDecimal agentIntroduceBonusRate=BigDecimal.ZERO; + @Excel(name = "云代直推拨比(%)", scale = 2) + private BigDecimal agentIntroduceBonusRate = BigDecimal.ZERO; /** * 云代直推拨比小计 */ @BigDecimalFormat - private BigDecimal agentIntroduceBonusRateSum=BigDecimal.ZERO; + private BigDecimal agentIntroduceBonusRateSum = BigDecimal.ZERO; /** * 云代首购 = 云代注册+云代升级 */ @BigDecimalFormat - @Excel(name = "云代首购(¥)",scale = 2) - private BigDecimal agentFirstAmount=BigDecimal.ZERO; + @Excel(name = "云代首购(¥)", scale = 2) + private BigDecimal agentFirstAmount = BigDecimal.ZERO; /** * 云代首购 = 云代注册+云代升级 * 云代直推/云代首购 */ @BigDecimalFormat - @Excel(name = "云代首购拨比(%)",scale = 2) - private BigDecimal agentFirstAmountRate=BigDecimal.ZERO; + @Excel(name = "云代首购拨比(%)", scale = 2) + private BigDecimal agentFirstAmountRate = BigDecimal.ZERO; /** * 云代首购拨比小计 */ @BigDecimalFormat - private BigDecimal agentFirstAmountRateSum=BigDecimal.ZERO; + private BigDecimal agentFirstAmountRateSum = BigDecimal.ZERO; /** * 云代复购新增 */ @BigDecimalFormat - @Excel(name = "云代复购(¥)",scale = 2) - private BigDecimal agentRepurAmount=BigDecimal.ZERO; + @Excel(name = "云代复购(¥)", scale = 2) + private BigDecimal agentRepurAmount = BigDecimal.ZERO; /** * 云代复购/(云代注册+升级+复购) */ @BigDecimalFormat - @Excel(name = "云代复购拨比(%)",scale = 2) - private BigDecimal agentRepurAmountRate=BigDecimal.ZERO; + @Excel(name = "云代复购拨比(%)", scale = 2) + private BigDecimal agentRepurAmountRate = BigDecimal.ZERO; /** * 云代复购拨比小计 (%) */ @BigDecimalFormat - private BigDecimal agentRepurAmountRateSum=BigDecimal.ZERO; + private BigDecimal agentRepurAmountRateSum = BigDecimal.ZERO; /** * 复购新增金额(¥)(复购专区) */ @BigDecimalFormat - @Excel(name = "复购专区(¥)",scale = 2) - private BigDecimal mainRepurAmount=BigDecimal.ZERO; + @Excel(name = "复购专区(¥)", scale = 2) + private BigDecimal mainRepurAmount = BigDecimal.ZERO; /** * 直播订单 @@ -259,81 +254,83 @@ public class CuBonusStatisChartVO { * 复购总金额 复购订单+直播订单+合作订单+特殊复购订单 */ @BigDecimalFormat - @Excel(name = "复购金额(¥)",scale = 2) - private BigDecimal repurchaseAllAmount=BigDecimal.ZERO; + @Excel(name = "复购金额(¥)", scale = 2) + private BigDecimal repurchaseAllAmount = BigDecimal.ZERO; /** * 复购级差收益(¥) */ @BigDecimalFormat - @Excel(name = "复购级差收益(¥)",scale = 2) - private BigDecimal repurRangeBonus=BigDecimal.ZERO; + @Excel(name = "复购级差收益(¥)", scale = 2) + private BigDecimal repurRangeBonus = BigDecimal.ZERO; /** * 复购级差拨比(¥)/ 复购金额 */ @BigDecimalFormat - @Excel(name = "复购级差拨比(%)",scale = 2) - private BigDecimal repurRangeBonusRate=BigDecimal.ZERO; + @Excel(name = "复购级差拨比(%)", scale = 2) + private BigDecimal repurRangeBonusRate = BigDecimal.ZERO; /** * 复购级差拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurRangeBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurRangeBonusRateSum = BigDecimal.ZERO; /** * 复购拓展收益(¥) */ @BigDecimalFormat - @Excel(name = "复购拓展收益(¥)",scale = 2) - private BigDecimal repurOrgBonus=BigDecimal.ZERO; + @Excel(name = "复购拓展收益(¥)", scale = 2) + private BigDecimal repurOrgBonus = BigDecimal.ZERO; /** * 复购拓展拨比(¥) / 复购金额 */ @BigDecimalFormat - @Excel(name = "复购拓展拨比(%)",scale = 2) - private BigDecimal repurOrgBonusRate=BigDecimal.ZERO; + @Excel(name = "复购拓展拨比(%)", scale = 2) + private BigDecimal repurOrgBonusRate = BigDecimal.ZERO; /** * 复购拓展拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurOrgBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurOrgBonusRateSum = BigDecimal.ZERO; /** * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*0.8=实际拨出之和。 */ @BigDecimalFormat - @Excel(name = "首购拨出金额(¥)",scale = 2) - private BigDecimal mainBonus=BigDecimal.ZERO; + @Excel(name = "首购拨出金额(¥)", scale = 2) + private BigDecimal mainBonus = BigDecimal.ZERO; /** * 首购拨出金额 小计 */ @BigDecimalFormat - private BigDecimal mainBonusSum=BigDecimal.ZERO; + private BigDecimal mainBonusSum = BigDecimal.ZERO; /** * 首购相关奖金拨比(%)=首购总奖金(推荐奖净值+拓展奖净值+领导奖净值+服务费净值+分红奖净值)/首购总金额 */ @BigDecimalFormat - @Excel(name = "首购拨出比例(%)",scale = 2) - private BigDecimal mainBonusRate=BigDecimal.ZERO; + @Excel(name = "首购拨出比例(%)", scale = 2) + private BigDecimal mainBonusRate = BigDecimal.ZERO; - /** 复购拨出金额 + /** + * 复购拨出金额 * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 * (复购级差+复购拓展 ) *0.8 +海粉直推 */ @BigDecimalFormat - @Excel(name = "复购拨出金额(¥)",scale = 2) - private BigDecimal repurBonus=BigDecimal.ZERO; + @Excel(name = "复购拨出金额(¥)", scale = 2) + private BigDecimal repurBonus = BigDecimal.ZERO; - /** (复购级差+复购拓展 ) *0.8 +海粉直推 + /** + * (复购级差+复购拓展 ) *0.8 +海粉直推 * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) */ @BigDecimalFormat - @Excel(name = "复购拨出比例(%)",scale = 2) - private BigDecimal repurBonusRate=BigDecimal.ZERO; + @Excel(name = "复购拨出比例(%)", scale = 2) + private BigDecimal repurBonusRate = BigDecimal.ZERO; /** * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 */ @BigDecimalFormat - @Excel(name = "总拨出金额(¥)",scale = 2) - private BigDecimal totalBonus=BigDecimal.ZERO; + @Excel(name = "总拨出金额(¥)", scale = 2) + private BigDecimal totalBonus = BigDecimal.ZERO; /** * 综合(拨出)实发拨比(%)=(直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*80% @@ -341,8 +338,8 @@ public class CuBonusStatisChartVO { * (复购直推收益+复购级差收益+复购拓展收益)*80%=X+海粉直推=实际大盘拨出金额/(总金额)(注册+升级+复购+海粉+礼包)订单 */ @BigDecimalFormat - @Excel(name = "总拨出比例(%)",scale = 2) - private BigDecimal totalBonusRate=BigDecimal.ZERO; + @Excel(name = "总拨出比例(%)", scale = 2) + private BigDecimal totalBonusRate = BigDecimal.ZERO; /** * 首购实发小计 @@ -372,136 +369,136 @@ public class CuBonusStatisChartVO { * 注册新增金额(¥)小计 */ @BigDecimalFormat - private BigDecimal mainRegAmountSum=BigDecimal.ZERO; + private BigDecimal mainRegAmountSum = BigDecimal.ZERO; /** * 升级新增金额(¥)小计 */ @BigDecimalFormat - private BigDecimal mainUpAmountSum=BigDecimal.ZERO; + private BigDecimal mainUpAmountSum = BigDecimal.ZERO; /** * 云代注册金额小计 */ @BigDecimalFormat - private BigDecimal agentRegAmountSum=BigDecimal.ZERO; + private BigDecimal agentRegAmountSum = BigDecimal.ZERO; /** * 云代升级新增金额小计 */ @BigDecimalFormat - private BigDecimal agentUpAmountSum=BigDecimal.ZERO; + private BigDecimal agentUpAmountSum = BigDecimal.ZERO; /** * 首购总金额(¥)小计 注册金额+升级金额+礼包订单(1万礼包) */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 直推收益(¥)小计 */ @BigDecimalFormat - private BigDecimal introduceBonusSum=BigDecimal.ZERO; + private BigDecimal introduceBonusSum = BigDecimal.ZERO; /** * 拓展收益(¥)小计 */ @BigDecimalFormat - private BigDecimal orgBonusSum=BigDecimal.ZERO; + private BigDecimal orgBonusSum = BigDecimal.ZERO; /** * 辅导收益(¥)小计 */ @BigDecimalFormat - private BigDecimal leaderBonusSum=BigDecimal.ZERO; + private BigDecimal leaderBonusSum = BigDecimal.ZERO; /** * 分红收益(¥)小计 */ @BigDecimalFormat - private BigDecimal shareBonusSum=BigDecimal.ZERO; + private BigDecimal shareBonusSum = BigDecimal.ZERO; /** * 服务补贴(¥)小计 */ @BigDecimalFormat - private BigDecimal serviceBonusSum=BigDecimal.ZERO; + private BigDecimal serviceBonusSum = BigDecimal.ZERO; /** * 云代直推收益(¥)小计 */ @BigDecimalFormat - private BigDecimal agentIntroduceBonusSum=BigDecimal.ZERO; + private BigDecimal agentIntroduceBonusSum = BigDecimal.ZERO; /** * 首购奖金拨比小计(%) */ @BigDecimalFormat - private BigDecimal mainBonusRateSum=BigDecimal.ZERO; + private BigDecimal mainBonusRateSum = BigDecimal.ZERO; /** * 云代首购小计 = 云代注册+云代升级 */ @BigDecimalFormat - private BigDecimal agentFirstAmountSum=BigDecimal.ZERO; + private BigDecimal agentFirstAmountSum = BigDecimal.ZERO; /** * 云代复购小计 */ @BigDecimalFormat - private BigDecimal agentRepurAmountSum=BigDecimal.ZERO; + private BigDecimal agentRepurAmountSum = BigDecimal.ZERO; /** * 复购总金额小计 复购订单+海粉订单+海粉复购订单 */ @BigDecimalFormat - private BigDecimal repurchaseAllAmountSum=BigDecimal.ZERO; + private BigDecimal repurchaseAllAmountSum = BigDecimal.ZERO; /** * 复购级差收益(¥)小计 */ @BigDecimalFormat - private BigDecimal repurRangeBonusSum=BigDecimal.ZERO; + private BigDecimal repurRangeBonusSum = BigDecimal.ZERO; /** * 复购拓展收益(¥)小计 */ @BigDecimalFormat - private BigDecimal repurOrgBonusSum=BigDecimal.ZERO; + private BigDecimal repurOrgBonusSum = BigDecimal.ZERO; /** * 复购专区小计(¥) */ @BigDecimalFormat - private BigDecimal mainRepurAmountSum=BigDecimal.ZERO; + private BigDecimal mainRepurAmountSum = BigDecimal.ZERO; /** * 海粉专区小计(¥)(海粉注册) */ @BigDecimalFormat - private BigDecimal hifansRegAmountSum=BigDecimal.ZERO; + private BigDecimal hifansRegAmountSum = BigDecimal.ZERO; /** * 复购拨出金额小计 */ @BigDecimalFormat - private BigDecimal repurBonusSum=BigDecimal.ZERO; + private BigDecimal repurBonusSum = BigDecimal.ZERO; /** * 复购拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurBonusRateSum = BigDecimal.ZERO; /** * 总拨出金额小计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例小计(%) */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** * 海粉直推收益(海粉推荐收益)(%) */ - private BigDecimal hiFunIncome=BigDecimal.ZERO; + private BigDecimal hiFunIncome = BigDecimal.ZERO; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkVertex; /** @@ -510,7 +507,6 @@ public class CuBonusStatisChartVO { private Long pkTeamCode; - /** * 国家 */ @@ -563,11 +559,11 @@ public class CuBonusStatisChartVO { private Integer delFlag; private Long pkMember; private Integer orderType; - private BigDecimal orderAchieve=BigDecimal.ONE; + private BigDecimal orderAchieve = BigDecimal.ONE; /** * 分红比例% */ - private BigDecimal dividendRatio=BigDecimal.ZERO; + private BigDecimal dividendRatio = BigDecimal.ZERO; /** * 重复消费% */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java index eb0bbf83..77bb20f0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java @@ -1,22 +1,15 @@ package com.hzs.member.statis.vo; -import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; import lombok.Data; import java.math.BigDecimal; -import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计 柱状图 * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisColumnarVO { @@ -74,7 +67,7 @@ public class CuBonusStatisColumnarVO { private BigDecimal lastHifansRegAmount; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkBdVertex; /** @@ -106,5 +99,4 @@ public class CuBonusStatisColumnarVO { private String endDate; - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java index 74802aa6..1dd578df 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java @@ -9,14 +9,9 @@ import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计 圆型图 * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisRoundVO { @@ -138,7 +133,7 @@ public class CuBonusStatisRoundVO { private BigDecimal totalBonusRate; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkBdVertex; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java index 045d5ec4..c3f1a0a2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java @@ -75,36 +75,12 @@ public class CuBonusStatisVO { @Excel(name = "升级专区(¥)", scale = 2) private BigDecimal mainUpAmount = BigDecimal.ZERO; - /** - * 特殊注册 - */ - @BigDecimalFormat - private BigDecimal specialRegisterAmount = BigDecimal.ZERO; - /** - * 特殊升级 - */ - @BigDecimalFormat - private BigDecimal specialUpgradeAmount = BigDecimal.ZERO; /** * 虚拟订单金额(¥) */ @BigDecimalFormat private BigDecimal fictitiousAmount = BigDecimal.ZERO; - /** - * 云代理注册金额 - */ - @Excel(name = "云代注册(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentRegAmount = BigDecimal.ZERO; - - /** - * 云代理升级新增金额 - */ - @Excel(name = "云代升级(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentUpAmount = BigDecimal.ZERO; - /** * 首购总金额(¥) 注册金额+升级金额+礼包订单(1万礼包) */ @@ -142,24 +118,6 @@ public class CuBonusStatisVO { @Excel(name = "服务补贴(¥)", scale = 2) @BigDecimalFormat private BigDecimal serviceBonus = BigDecimal.ZERO; - /** - * 云代理直推收益(¥) - */ - @Excel(name = "云代直推(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentIntroduceBonus = BigDecimal.ZERO; - /** - * 云代理首购 = 云代注册+云代升级 - */ - @Excel(name = "云代首购(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentFirstAmount = BigDecimal.ZERO; - /** - * 云代理复购新增 - */ - @Excel(name = "云代复购(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentRepurAmount = BigDecimal.ZERO; /** * 复购新增金额(¥)(复购专区) */ @@ -185,21 +143,14 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal cooperateAmount = BigDecimal.ZERO; - /** - * 特殊复购 - */ - @BigDecimalFormat - private BigDecimal specialRepurchaseAmount = BigDecimal.ZERO; - /** * 福利订单 */ @BigDecimalFormat private BigDecimal welfareOrder = BigDecimal.ZERO; - /** - * 复购总金额 复购订单+海粉订单+海粉复购订单 + * 复购总金额 复购订单 */ @Excel(name = "复购金额(¥)", scale = 2) @BigDecimalFormat @@ -232,23 +183,23 @@ public class CuBonusStatisVO { /** - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @Excel(name = "复购拨出金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurBonus = BigDecimal.ZERO; /** - * (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @Excel(name = "复购拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal repurBonusRate = BigDecimal.ZERO; /** - * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 + * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8 */ @Excel(name = "总拨出金额(¥)", scale = 2) @BigDecimalFormat @@ -257,18 +208,12 @@ public class CuBonusStatisVO { /** * 综合(拨出)实发拨比(%)=(直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*80% * =首购拨出之和+ - * (复购直推收益+复购级差收益+复购拓展收益)*80%=X+海粉直推=实际大盘拨出金额/(总金额)(注册+升级+复购+海粉+礼包)订单 + * (复购直推收益+复购级差收益+复购拓展收益)*80%=实际大盘拨出金额/(总金额)(注册+升级+复购)订单 */ @Excel(name = "总拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal totalBonusRate = BigDecimal.ZERO; - /** - * 三方订单业绩(¥)(礼包订单) - */ - @BigDecimalFormat - private BigDecimal thirdOrder = BigDecimal.ZERO; - /** * 首购实发小计 */ @@ -281,22 +226,6 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal repurRealSubtotal = BigDecimal.ZERO; - /** - * 云代实发小计 - */ - @BigDecimalFormat - private BigDecimal cloudRealSubtotal = BigDecimal.ZERO; - - /** - * 云代首购收益 - */ - @BigDecimalFormat - private BigDecimal cloudAgentFirstPurchase = BigDecimal.ZERO; - /** - * 云代复购收益 - */ - @BigDecimalFormat - private BigDecimal cloudAgentRepurchase = BigDecimal.ZERO; /** * 复购券收益小计 */ @@ -320,18 +249,6 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal mainUpAmountSum = BigDecimal.ZERO; - /** - * 云代理注册金额小计 - */ - @BigDecimalFormat - private BigDecimal agentRegAmountSum = BigDecimal.ZERO; - - /** - * 云代理升级新增金额小计 - */ - @BigDecimalFormat - private BigDecimal agentUpAmountSum = BigDecimal.ZERO; - /** * 首购总金额(¥)小计 注册金额+升级金额+礼包订单(1万礼包) */ @@ -363,21 +280,6 @@ public class CuBonusStatisVO { */ @BigDecimalFormat private BigDecimal serviceBonusSum = BigDecimal.ZERO; - /** - * 云代理直推收益(¥)小计 - */ - @BigDecimalFormat - private BigDecimal agentIntroduceBonusSum = BigDecimal.ZERO; - /** - * 云代理首购小计 = 云代注册+云代升级 - */ - @BigDecimalFormat - private BigDecimal agentFirstAmountSum = BigDecimal.ZERO; - /** - * 云代理复购新增小计 - */ - @BigDecimalFormat - private BigDecimal agentRepurAmountSum = BigDecimal.ZERO; /** * 复购新增金额小计(¥)(复购专区) */ @@ -389,7 +291,7 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal hifansRegAmountSum = BigDecimal.ZERO; /** - * 复购总金额小计 复购订单+海粉订单+海粉复购订单 + * 复购总金额小计 复购订单 */ @BigDecimalFormat private BigDecimal repurchaseAllAmountSum = BigDecimal.ZERO; @@ -424,27 +326,27 @@ public class CuBonusStatisVO { /** * 小计 - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @BigDecimalFormat private BigDecimal repurBonusSum = BigDecimal.ZERO; /** - * 小计 (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * 小计 (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @BigDecimalFormat private BigDecimal repurBonusRateSum = BigDecimal.ZERO; /** - * 小计 (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购PV拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * 小计 (复购级差+复购拓展 ) *0.8 + * 复购PV拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @BigDecimalFormat private BigDecimal repurBonusPvRateSum = BigDecimal.ZERO; /** * 小计 - * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 + * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8 */ @BigDecimalFormat private BigDecimal totalBonusSum = BigDecimal.ZERO; @@ -457,7 +359,7 @@ public class CuBonusStatisVO { /** * 小计 - * 总拨出金额(¥)/(复购订单+海粉订单+海粉复购订单+注册+升级+1万礼包(礼包订单)=总金额) + * 总拨出金额(¥)/(复购订单+注册+升级+1万礼包(礼包订单)=总金额) */ @BigDecimalFormat private BigDecimal totalBonusRateSum = BigDecimal.ZERO; @@ -492,48 +394,12 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal serviceBonusRate = BigDecimal.ZERO; - /** - * 三方订单金额(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderMoney = BigDecimal.ZERO; - /** - * 三方拨出金额(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderBonus = BigDecimal.ZERO; - /** - * 三方利润(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderProfit = BigDecimal.ZERO; - - /** - * 海粉直推收益(海粉推荐收益)(%) - */ - @BigDecimalFormat - private BigDecimal hiFunIncome = BigDecimal.ZERO; - - /** * 消费拓展收益拨比(%) */ @BigDecimalFormat private BigDecimal repurOrgBonusRate = BigDecimal.ZERO; - - /** - * 云代理直推收益拨比 - */ - @BigDecimalFormat - private BigDecimal agentIntroduceBonusRate = BigDecimal.ZERO; - - /** - * 礼包金额(¥)(礼包订单) - */ - @BigDecimalFormat - private BigDecimal giftOrder = BigDecimal.ZERO; - /** * 实际综合实发金额(¥) */ @@ -558,14 +424,6 @@ public class CuBonusStatisVO { * 升级新增PV MAIN_UP_PV */ private BigDecimal mainUpPv; - /** - * 特殊注册PV SPECIAL_REGISTER_PV - */ - private BigDecimal specialRegisterPv; - /** - * 特殊升级PV SPECIAL_UPGRADE_PV - */ - private BigDecimal specialUpgradePv; /** * 虚拟订单PV FICTITIOUS_PV */ @@ -577,19 +435,6 @@ public class CuBonusStatisVO { */ private BigDecimal mainRepurPv; - /** - * 特殊复购PV SPECIAL_REPURCHASE_PV - */ - private BigDecimal specialRepurchasePv; - - /** - * 嗨粉注册PV HIFANS_REG_PV - */ - private BigDecimal hifansRegPv; - /** - * 海粉升级PV HAI_FUN_UPGRADE_PV - */ - private BigDecimal haiFunUpgradePv; /** * 直播订单PV MALL_PV */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java index 8ec5b0a3..c23fc5fa 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java @@ -13,11 +13,7 @@ import java.util.Date; import java.util.List; /** - * @description: 奖金拨比统计(PV) - * @author: zhang jing - * @date: 2025/3/12 15:05 - * @param: - * @return: + * 奖金拨比统计(PV) **/ @Builder @AllArgsConstructor @@ -47,7 +43,7 @@ public class CuBonusVertexStatisPvVO { /** * 创建时间 */ - @Excel(name = "业绩时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; @@ -55,62 +51,62 @@ public class CuBonusVertexStatisPvVO { * 注册新增业绩(¥) */ @BigDecimalFormat - @Excel(name = "注册专区(¥)",scale = 2) - private BigDecimal mainRegPv=BigDecimal.ZERO; + @Excel(name = "注册专区(¥)", scale = 2) + private BigDecimal mainRegPv = BigDecimal.ZERO; /** * 升级新增业绩(¥) */ @BigDecimalFormat - @Excel(name = "升级专区(¥)",scale = 2) - private BigDecimal mainUpPv=BigDecimal.ZERO; + @Excel(name = "升级专区(¥)", scale = 2) + private BigDecimal mainUpPv = BigDecimal.ZERO; /** * 首购总业绩(¥) 注册业绩+升级业绩 */ - @Excel(name = "首购业绩(¥)",scale = 2) + @Excel(name = "首购业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal firstPurchaseAll=BigDecimal.ZERO; + private BigDecimal firstPurchaseAll = BigDecimal.ZERO; /** * 复购总业绩 */ - @Excel(name = "复购业绩(¥)",scale = 2) + @Excel(name = "复购业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal mainRepurPv=BigDecimal.ZERO; + private BigDecimal mainRepurPv = BigDecimal.ZERO; /** * 重消业绩 */ - @Excel(name = "重消业绩(¥)",scale = 2) + @Excel(name = "重消业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal retailConsumePv=BigDecimal.ZERO; + private BigDecimal retailConsumePv = BigDecimal.ZERO; /** * 合计业绩 */ - @Excel(name = "合计业绩(¥)",scale = 2) + @Excel(name = "合计业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal totalAchieve=BigDecimal.ZERO; + private BigDecimal totalAchieve = BigDecimal.ZERO; /** * 新零售极差收益 */ @BigDecimalFormat - @Excel(name = "极差收益(¥)",scale = 2) + @Excel(name = "极差收益(¥)", scale = 2) private BigDecimal retailRangeIncome; /** * 极差收益拨比 */ @BigDecimalFormat - @Excel(name = "极差收益拨比(%)",scale = 2) + @Excel(name = "极差收益拨比(%)", scale = 2) private BigDecimal retailRangeIncomeRate; /** * 新零售平级收益 */ @BigDecimalFormat - @Excel(name = "平级收益V1-V4(¥)",scale = 2) - private BigDecimal retailSameLevelIncomeV1V4=BigDecimal.ZERO; + @Excel(name = "平级收益V1-V4(¥)", scale = 2) + private BigDecimal retailSameLevelIncomeV1V4 = BigDecimal.ZERO; @BigDecimalFormat - @Excel(name = "平级收益V1-V4拨比(%)",scale = 2) + @Excel(name = "平级收益V1-V4拨比(%)", scale = 2) private BigDecimal retailSameLevelIncomeV1V4Rate; @@ -118,241 +114,240 @@ public class CuBonusVertexStatisPvVO { * 平级收益V5 */ @BigDecimalFormat - @Excel(name = "平级收益V5(¥)",scale = 2) - private BigDecimal retailSameLevelIncomeV5=BigDecimal.ZERO; + @Excel(name = "平级收益V5(¥)", scale = 2) + private BigDecimal retailSameLevelIncomeV5 = BigDecimal.ZERO; /** * 平级收益V5 */ @BigDecimalFormat - @Excel(name = "平级收益V5拨比(%)",scale = 2) + @Excel(name = "平级收益V5拨比(%)", scale = 2) private BigDecimal retailSameLevelIncomeV5Rate; /** * 新零售区域收益 */ @BigDecimalFormat - @Excel(name = "区域收益(¥)",scale = 2) + @Excel(name = "区域收益(¥)", scale = 2) private BigDecimal retailAreaIncome; /** * 区域收益拨比 */ @BigDecimalFormat - @Excel(name = "区域收益拨比(%)",scale = 2) + @Excel(name = "区域收益拨比(%)", scale = 2) private BigDecimal retailAreaIncomeRate; /** * 新零售福利极差收益 */ @BigDecimalFormat - @Excel(name = "福利极差收益(¥)",scale = 2) + @Excel(name = "福利极差收益(¥)", scale = 2) private BigDecimal retailBenefitRangeIncome; /** * 福利极差收益拨比 */ @BigDecimalFormat - @Excel(name = "福利极差收益拨比(%)",scale = 2) + @Excel(name = "福利极差收益拨比(%)", scale = 2) private BigDecimal retailBenefitRangeIncomeRate; /** * 新零售福利平均收益 */ @BigDecimalFormat - @Excel(name = "福利平均收益(¥)",scale = 2) + @Excel(name = "福利平均收益(¥)", scale = 2) private BigDecimal retailBenefitAvgIncome; /** * 福利平均收益拨比 */ @BigDecimalFormat - @Excel(name = "福利平均收益拨比(%)",scale = 2) + @Excel(name = "福利平均收益拨比(%)", scale = 2) private BigDecimal retailBenefitAvgIncomeRate; /** * 新零售福利加权收益 */ @BigDecimalFormat - @Excel(name = "福利加权收益(¥)",scale = 2) + @Excel(name = "福利加权收益(¥)", scale = 2) private BigDecimal retailBenefitIncome; /** * 福利加权收益拨比 */ @BigDecimalFormat - @Excel(name = "福利加权收益拨比(%)",scale = 2) + @Excel(name = "福利加权收益拨比(%)", scale = 2) private BigDecimal retailBenefitIncomeRate; /** * 商城重消 */ @BigDecimalFormat - @Excel(name = "商城重消(¥)",scale = 2) - private BigDecimal backPoints=BigDecimal.ZERO; + @Excel(name = "商城重消(¥)", scale = 2) + private BigDecimal backPoints = BigDecimal.ZERO; /** * 商城重消拨比 */ @BigDecimalFormat - @Excel(name = "商城重消拨比(%)",scale = 2) - private BigDecimal backPointsRate=BigDecimal.ZERO; + @Excel(name = "商城重消拨比(%)", scale = 2) + private BigDecimal backPointsRate = BigDecimal.ZERO; /** * 总拨出金额 */ @BigDecimalFormat - private BigDecimal realIncomeTotal=BigDecimal.ZERO; + private BigDecimal realIncomeTotal = BigDecimal.ZERO; /** * 总拨出金额 */ - @Excel(name = "总拨出金额(¥)",scale = 2) + @Excel(name = "总拨出金额(¥)", scale = 2) @BigDecimalFormat - private BigDecimal totalBonus=BigDecimal.ZERO; + private BigDecimal totalBonus = BigDecimal.ZERO; /** * 综合(拨出)实发拨比(%) */ - @Excel(name = "总拨出比例(%)",scale = 2) + @Excel(name = "总拨出比例(%)", scale = 2) @BigDecimalFormat - private BigDecimal totalBonusRate=BigDecimal.ZERO; - + private BigDecimal totalBonusRate = BigDecimal.ZERO; /** * 注册新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegPvSum=BigDecimal.ZERO; + private BigDecimal mainRegPvSum = BigDecimal.ZERO; /** * 升级新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpPvSum=BigDecimal.ZERO; + private BigDecimal mainUpPvSum = BigDecimal.ZERO; /** * 首购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 全部业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAchieveSum=BigDecimal.ZERO; + private BigDecimal totalAchieveSum = BigDecimal.ZERO; /** * 复购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurPvSum=BigDecimal.ZERO; + private BigDecimal mainRepurPvSum = BigDecimal.ZERO; /** * 重消新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumePvSum=BigDecimal.ZERO; + private BigDecimal retailConsumePvSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 平级收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeSum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 总拨出业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkVertex; /** @@ -389,12 +384,12 @@ public class CuBonusVertexStatisPvVO { /** * 汇率 *100 */ - private BigDecimal perCent=BigDecimal.ZERO; + private BigDecimal perCent = BigDecimal.ZERO; /** * 汇率 */ - private BigDecimal rate=BigDecimal.ZERO; + private BigDecimal rate = BigDecimal.ZERO; private Date payTime; @@ -406,32 +401,32 @@ public class CuBonusVertexStatisPvVO { private Long pkMember; private Integer orderType; /** - *奖金类型 + * 奖金类型 */ private Integer bonusType; /** * 订单PV */ - private BigDecimal orderAchieve=BigDecimal.ZERO; + private BigDecimal orderAchieve = BigDecimal.ZERO; /** * 订单金额 */ - private BigDecimal orderAmount=BigDecimal.ZERO; + private BigDecimal orderAmount = BigDecimal.ZERO; private List orderAchieveList; /** - *奖金 + * 奖金 */ @BigDecimalFormat - private BigDecimal realIncome=BigDecimal.ZERO; + private BigDecimal realIncome = BigDecimal.ZERO; /** * 重复消费% */ @BigDecimalFormat - private BigDecimal backRatio=BigDecimal.ZERO; + private BigDecimal backRatio = BigDecimal.ZERO; /** - *按照体系(中国)和国家分组合并订单 + * 按照体系(中国)和国家分组合并订单 */ List mergeList; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java index be2ed833..e8842942 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java @@ -6,13 +6,7 @@ import lombok.Data; import java.math.BigDecimal; /** - *

* 奖金拨比统计汇总PV - * - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusVertexStatisSumPvVO { @@ -34,132 +28,130 @@ public class CuBonusVertexStatisSumPvVO { * 注册专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegPvSum=BigDecimal.ZERO; + private BigDecimal mainRegPvSum = BigDecimal.ZERO; /** * 升级专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpPvSum=BigDecimal.ZERO; + private BigDecimal mainUpPvSum = BigDecimal.ZERO; /** * 首购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 复购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurPvSum=BigDecimal.ZERO; + private BigDecimal mainRepurPvSum = BigDecimal.ZERO; /** * 重消业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumePvSum=BigDecimal.ZERO; + private BigDecimal retailConsumePvSum = BigDecimal.ZERO; /** * 全部业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAchieveSum=BigDecimal.ZERO; + private BigDecimal totalAchieveSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 总拨出金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; - - + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java index d0be0d51..3aa34928 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java @@ -6,13 +6,7 @@ import lombok.Data; import java.math.BigDecimal; /** - *

* 奖金拨比统计汇总 - * - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusVertexStatisSumVO { @@ -34,132 +28,130 @@ public class CuBonusVertexStatisSumVO { * 注册专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegAmountSum=BigDecimal.ZERO; + private BigDecimal mainRegAmountSum = BigDecimal.ZERO; /** * 升级专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpAmountSum=BigDecimal.ZERO; + private BigDecimal mainUpAmountSum = BigDecimal.ZERO; /** * 首购(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 复购金额(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurAmountSum=BigDecimal.ZERO; + private BigDecimal mainRepurAmountSum = BigDecimal.ZERO; /** * 重消金额(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumeAmountSum=BigDecimal.ZERO; + private BigDecimal retailConsumeAmountSum = BigDecimal.ZERO; /** * 全部金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAmountSum=BigDecimal.ZERO; + private BigDecimal totalAmountSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 总拨出金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; - - + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java index 2303bb67..fdf52448 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java @@ -111,23 +111,23 @@ public class CuBonusVertexStatisTotalVO { private BigDecimal serviceBonusRate = BigDecimal.ZERO; /** - * 复购总金额 复购订单+海粉订单+海粉复购订单 + * 复购总金额 复购订单 */ @Excel(name = "复购金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurchaseAllAmount = BigDecimal.ZERO; /** - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @Excel(name = "复购拨出金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurBonus = BigDecimal.ZERO; /** - * (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @Excel(name = "复购拨出比例(%)", scale = 2) @BigDecimalFormat @@ -139,39 +139,12 @@ public class CuBonusVertexStatisTotalVO { @Excel(name = "复购PV拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal repurBonusPvRate = BigDecimal.ZERO; - /** - * 拓展平均碰次 - */ - @Excel(name = "拓展平均碰次", scale = 2) - @BigDecimalFormat - private BigDecimal orgAvTouch = BigDecimal.ZERO; - ; /** - * 拓展最高碰次 - */ - @Excel(name = "拓展最高碰次") - private Integer orgMaxTouch = 0; - - /** - * 拓展封顶人数 - */ - @Excel(name = "拓展封顶人数") - private Integer orgTopNumber = 0; - - @BigDecimalFormat - private BigDecimal makerDirectSum = BigDecimal.ZERO; - - @BigDecimalFormat - private BigDecimal makerShareSum = BigDecimal.ZERO; - - - /** - * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系 */ private Integer pkVertex; - /** * 注册新增PV MAIN_REG_PV */ @@ -180,14 +153,6 @@ public class CuBonusVertexStatisTotalVO { * 升级新增PV MAIN_UP_PV */ private BigDecimal mainUpPv; - /** - * 特殊注册PV SPECIAL_REGISTER_PV - */ - private BigDecimal specialRegisterPv; - /** - * 特殊升级PV SPECIAL_UPGRADE_PV - */ - private BigDecimal specialUpgradePv; /** * 虚拟订单PV FICTITIOUS_PV */ @@ -197,25 +162,11 @@ public class CuBonusVertexStatisTotalVO { */ private BigDecimal orderAmount = BigDecimal.ZERO; - /** * 复购新增PV MAIN_REPUR_PV */ private BigDecimal mainRepurPv; - /** - * 特殊复购PV SPECIAL_REPURCHASE_PV - */ - private BigDecimal specialRepurchasePv; - - /** - * 嗨粉注册PV HIFANS_REG_PV - */ - private BigDecimal hifansRegPv; - /** - * 海粉升级PV HAI_FUN_UPGRADE_PV - */ - private BigDecimal haiFunUpgradePv; /** * 直播订单PV MALL_PV */ @@ -307,8 +258,6 @@ public class CuBonusVertexStatisTotalVO { */ List mergeList; - List orderTypeList; - /** * 本月会员网体表 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java index 7d5e8bbf..5fc09669 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java @@ -89,16 +89,16 @@ public class CuBonusVertexStatisVO { @BigDecimalFormat private BigDecimal totalAmount = BigDecimal.ZERO; /** - * 新零售极差收益 + * 新零售直推极差收益 */ @BigDecimalFormat - @Excel(name = "极差收益(¥)", scale = 2) + @Excel(name = "直推极差收益(¥)", scale = 2) private BigDecimal retailRangeIncome; /** - * 极差收益拨比 + * 直推极差收益拨比 */ @BigDecimalFormat - @Excel(name = "极差收益拨比(%)", scale = 2) + @Excel(name = "直推极差收益拨比(%)", scale = 2) private BigDecimal retailRangeIncomeRate; /** @@ -247,7 +247,7 @@ public class CuBonusVertexStatisVO { /** - * 极差收益(¥)合计 + * 直推极差收益(¥)合计 */ @BigDecimalFormat private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; @@ -306,7 +306,7 @@ public class CuBonusVertexStatisVO { private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** - * 极差收益拨比(%)合计 + * 直推极差收益拨比(%)合计 */ @BigDecimalFormat private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java index c4d9b03e..011c58ac 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java @@ -54,11 +54,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 批量修改已到期的会员收益区域 - **/ - void batchUpdateRetailRegion(); - /** * 重新判断收益区域数据 * @@ -78,28 +73,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper waresCodeList); - /** - * 获取重复数据 - * - * @param systemType 系统类型 - * @return - */ - List listRepeatData(@Param("systemType") Integer systemType); - - /** - * 更新非最新区域其它数据 - * - * @param province 省 - * @param city 市 - * @param county 区 - * @param systemType 系统类型 - * @return - */ - int updateRepeatDate(@Param("province") Integer province, - @Param("city") Integer city, - @Param("county") Integer county, - @Param("systemType") Integer systemType); - int validateBindCountA(@Param("mrrExt") CuMemberRetailRegionExt mrrExt, @Param("yesOrNoValue") Integer yesOrNoValue, @Param("systemType") Integer systemType, @Param("pkId") Long pkId); int validateBindCountB(@Param("mrrExt") RetailMemberRegionParam mrrExt, @Param("yesOrNoValue") Integer yesOrNoValue, @Param("systemType") Integer systemType, @Param("pkId") Long pkId); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java index a0fcf6e3..20c49716 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java @@ -6,7 +6,6 @@ import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.vo.UnboundAreaVO; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -51,11 +50,6 @@ public interface ICuMemberRetailRegionService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 批量修改已到期的会员收益区域 - **/ - void batchUpdateRetailRegion(); - /** * 定时处理收益区域 */ @@ -78,15 +72,9 @@ public interface ICuMemberRetailRegionService extends IService waresCodeList); - /** - * 处理重复区域 - * - * @return - */ - void handleRepeatRegion(); - int validateBindCount(CuMemberRetailRegionExt mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId); + int validateBindCount(RetailMemberRegionParam mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId); Long getRegionVertexPkIdByPkMember(Long pkMember); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java index 7d633c6b..4bc71e30 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java @@ -99,11 +99,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl retailRegionList = baseMapper.listRepeatData(eSystemType.getValue()); - if (CollectionUtil.isNotEmpty(retailRegionList)) { - retailRegionList.parallelStream().forEach(retailRegion -> { - baseMapper.updateRepeatDate(retailRegion.getProvince(), retailRegion.getCity(), retailRegion.getCounty(), eSystemType.getValue()); - }); - } - } - } - @Override public int validateBindCount(CuMemberRetailRegionExt mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId) { return baseMapper.validateBindCountA(mrrExt, yesOrNoValue, systemType, pkId); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index dfb5f75e..bf57e173 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2315,23 +2315,19 @@ - - + SELECT + m.pk_id as pk_vertex, + m.MEMBER_CODE as member_code, + m.MEMBER_NAME as member_name + FROM cu_member m + WHERE + m.pk_parent = 2 + AND m.del_flag = 0 + AND m.category = 0 + AND m.pk_country = 1 + ORDER BY m.pk_id ASC diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml deleted file mode 100644 index 868d8205..00000000 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml +++ /dev/null @@ -1,401 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CREATION_TIME - , - PK_COUNTRY, - DEL_FLAG, - PK_ID, STATIS_TYPE, PERIOD, START_DATE, END_DATE, MAIN_REG_AMOUNT, MAIN_UP_AMOUNT, MAIN_REPUR_AMOUNT, HIFANS_REG_AMOUNT, INTRODUCE_BONUS, ORG_BONUS, LEADER_BONUS, SHARE_BONUS, SERVICE_BONUS, HI_FUN_INCOME, REPUR_RANGE_BONUS, REPUR_ORG_BONUS, MAIN_BONUS, REPUR_BONUS, PK_BD_VERTEX, PK_TEAM_CODE, HAI_FUN_INCOME, GIFT_ORDER, SPECIAL_REGISTER_AMOUNT, SPECIAL_UPGRADE_AMOUNT, CLOUD_COLLEGE_AMOUNT, MALL_AMOUNT, MAKER_GIFT_AMOUNT, EMPOWERMENT_GIFT_AMOUNT, COOPERATE_AMOUNT, SPECIAL_REPURCHASE_AMOUNT, HAI_FUN_UPGRADE_AMOUNT, REPUR_PUSH_INCOME, MAKER_DIRECT, MAKER_SHARE, THIRD_ORDER, FICTITIOUS_AMOUNT, MAKER_ORDER, WELFARE_ORDER, MAIN_REG_PV, MAIN_UP_PV, MAIN_REPUR_PV, SPECIAL_REGISTER_PV, SPECIAL_UPGRADE_PV, SPECIAL_REPURCHASE_PV, FICTITIOUS_PV, HIFANS_REG_PV, HAI_FUN_UPGRADE_PV, CLOUD_COLLEGE_PV, MALL_PV, EMPOWERMENT_GIFT_PV, COOPERATE_PV, MAKER_ORDER_PV, MAKER_GIFT_PV, WELFARE_ORDER_PV - - - - - - - - - - - - - - delete from CU_BONUS_VERTEX_STATIS - where 1=1 - - and PK_BD_VERTEX in - - #{item} - - - - and CREATION_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') - - - and CREATION_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml index 5c10640b..0831f979 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml @@ -239,241 +239,6 @@ - - - - - - + - + + delete from CU_BONUS_STATIS where 1=1 @@ -1019,28 +783,26 @@ - + - + - - - - - - - + - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml index 15078ada..b50779fd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml @@ -176,76 +176,6 @@ ORDER BY cbs.CREATION_TIME asc - - - - - - - select cbs.PK_BD_VERTEX pkVertex - from CU_BONUS_VERTEX_STATIS cbs where 1=1 + select cbs.pk_bd_vertex pkVertex + from cu_bonus_vertex_statis cbs where 1=1 and cbs.PK_COUNTRY=#{pkCountry} @@ -686,12 +616,12 @@ pk_member FROM ${settleTableName} - WHERE category=0 + WHERE category = 0 start with PK_PARENT = #{pkVertex} connect by PK_PARENT = prior pk_member ) cm INNER JOIN SA_ORDER so on so.pk_member=cm.pk_member - where so.ORDER_TYPE in (41,42,43,44) + where so.ORDER_TYPE in (41, 42, 43, 44) and so.pk_country=#{pkCountry} @@ -701,7 +631,6 @@ AND so.order_status=#{orderStatus} - and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') @@ -740,151 +669,15 @@ where pk_id!=1 and del_flag = 0 and EFFECTIVE_DATE <= sysdate - - - - + @@ -92,7 +97,7 @@ and cmrr.effective = 0 and cmrr.system_type = #{retailRegion.systemType} AND cm.pk_id = #{retailRegion.pkMember} - ) + ) @@ -203,16 +208,6 @@ order by CRR.CREATION_TIME desc - - - UPDATE CU_MEMBER_RETAIL_REGION - SET EFFECTIVE=1, - MODIFIED_TIME=sysdate - WHERE EFFECTIVE = 0 - AND DEL_FLAG = 0 - AND EFFECTIVE_END_DATE < = sysdate - - - - - + + - - - update cu_member_retail_region cmrr - set cmrr.effective = 1, - cmrr.modified_time = sysdate - where cmrr.del_flag = 0 - and cmrr.effective = 0 - and cmrr.province = #{province} - and cmrr.city = #{city} - and cmrr.county = #{county} - and cmrr.system_type = #{systemType} - and cmrr.pk_id not in (select pk_id - from (select cmrr.pk_id - from cu_member_retail_region cmrr - where cmrr.del_flag = 0 - and cmrr.effective = 0 - and cmrr.province = #{province} - and cmrr.city = #{city} - and cmrr.county = #{county} - and cmrr.system_type = #{systemType} - order by cmrr.creation_time) - where rownum = 1) - diff --git a/bd-third/src/main/java/com/hzs/third/job/MemberJob.java b/bd-third/src/main/java/com/hzs/third/job/MemberJob.java index ec526c21..ebc073d9 100644 --- a/bd-third/src/main/java/com/hzs/third/job/MemberJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/MemberJob.java @@ -4,7 +4,6 @@ import com.hzs.activity.pick.IAcRetailPickLogServiceApi; import com.hzs.bonus.detail.ICuRegionAssessApi; import com.hzs.common.core.domain.R; import com.hzs.common.core.utils.DateUtils; -import com.hzs.member.base.ICuMemberRetailRegionServiceApi; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.statis.ICuBonusStatisServiceApi; import com.hzs.member.statis.ICuBonusVertexStatisServiceApi; @@ -33,8 +32,6 @@ public class MemberJob { @DubboReference ICuBonusVertexStatisServiceApi iCuBonusVertexStatisServiceApi; @DubboReference - ICuMemberRetailRegionServiceApi iCuMemberRetailRegionServiceApi; - @DubboReference IAcRetailPickLogServiceApi iAcRetailPickLogServiceApi; @DubboReference IMemberReportServiceApi iMemberReportServiceApi; @@ -56,21 +53,6 @@ public class MemberJob { } } - /** - * 定时统计顶点奖金拨比 - */ - @XxlJob("bonus-vertex-statis") - public void cuBonusVertexStatis() { - //查询前一天的订单和奖金 - Date date = DateUtils.currentDate(); - date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); - String payTimeStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); - R statis = iCuBonusVertexStatisServiceApi.anewStatisHistoryBonus(payTimeStr, payTimeStr); - if (!statis.getData()) { - log.info("{}-定时统计奖金拨统计失败", DateUtils.currentDate()); - } - } - /** * 重算7天内奖金拨比 **/ @@ -94,7 +76,22 @@ public class MemberJob { } /** - * 7天重算顶点奖金拨比统计 + * 定时统计顶点奖金拨比 -- 新零售 + */ + @XxlJob("bonus-vertex-statis") + public void cuBonusVertexStatis() { + //查询前一天的订单和奖金 + Date date = DateUtils.currentDate(); + date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); + String payTimeStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); + R statis = iCuBonusVertexStatisServiceApi.anewStatisHistoryBonus(payTimeStr, payTimeStr); + if (!statis.getData()) { + log.info("{}-定时统计奖金拨统计失败", DateUtils.currentDate()); + } + } + + /** + * 7天重算顶点奖金拨比统计 -- 新零售 **/ @XxlJob("rerun-bonus-vertex-statis") public void rerunCuBonusVertexStatis() { @@ -146,14 +143,6 @@ public class MemberJob { iMemberRetailApi.checkRegion(); } - /** - * 定时任务重复收益区域数据 - */ - @XxlJob("handleRepeatRegion") - public void handleRepeatRegion() { - iCuMemberRetailRegionServiceApi.handleRepeatRegion(); - } - /** * 每月10号处理上个月提货赠送活动满足活动规则的数据 **/ From 861ae3ce391ce33179d7435f151970012f240cf3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 22 Jul 2025 11:21:25 +0800 Subject: [PATCH 058/362] =?UTF-8?q?##=20=E6=96=B0=E9=9B=B6=E5=94=AE?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1=E8=AE=A2=E5=8D=95=E7=B1=BB=E5=9E=8B=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=88307=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mapper/system/board/BoardMapper.xml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml index 98c5720a..ff6a3531 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/board/BoardMapper.xml @@ -109,7 +109,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate, 'yyyy-mm-dd') ) a @@ -119,7 +119,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate, 'yyyy-mm-dd') ) b on 1 = 1 @@ -131,7 +131,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate - 1, 'yyyy-mm-dd') ) a @@ -141,7 +141,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm-dd') = to_char(sysdate - 1, 'yyyy-mm-dd') ) b on 1 = 1 @@ -156,7 +156,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (1, 2, 24, 25) + and so.order_type in (41, 42) and to_char(so.pay_time, 'yyyy-mm') = to_char(sysdate, 'yyyy-mm') ) a left join ( @@ -165,7 +165,7 @@ from sa_order so where so.del_flag = 0 and so.order_status = 1 - and so.order_type in (3, 26, 10) + and so.order_type in (43, 44) and to_char(so.pay_time, 'yyyy-mm') = to_char(sysdate, 'yyyy-mm') ) b on 1 = 1 From 05ba589fbcf77f260829d24d77556383c606784c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 22 Jul 2025 16:10:24 +0800 Subject: [PATCH 059/362] =?UTF-8?q?##=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E6=95=B0=E6=8D=AE=E6=98=BE=E7=A4=BA=EF=BC=88309?= =?UTF-8?q?=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberServiceImpl.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index d9d3be60..93c8db9d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3255,9 +3255,9 @@ public class CuMemberServiceImpl extends ServiceImpl i // 注册 BigDecimal reAmount = BigDecimal.ZERO; BigDecimal reAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()) != null) { - reAmount = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAmount(); - reAchieve = memberMeritsSummaryMap.get(EOrderType.REGISTER_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()) != null) { + reAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()).getAmount(); + reAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()).getAchieve(); } censusSummaryVo.setRegisterAmount(reAmount); censusSummaryVo.setRegisterPv(reAchieve); @@ -3265,9 +3265,9 @@ public class CuMemberServiceImpl extends ServiceImpl i // 升级 BigDecimal upAmount = BigDecimal.ZERO; BigDecimal upAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()) != null) { - upAmount = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAmount(); - upAchieve = memberMeritsSummaryMap.get(EOrderType.UPGRADE_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()) != null) { + upAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAmount(); + upAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAchieve(); } censusSummaryVo.setUpgradeAmount(upAmount); censusSummaryVo.setUpgradePv(upAchieve); @@ -3279,13 +3279,13 @@ public class CuMemberServiceImpl extends ServiceImpl i // 复购订单 BigDecimal repurchaseAmount = BigDecimal.ZERO; BigDecimal repurchaseAchieve = BigDecimal.ZERO; - if (memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()) != null) { - repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAmount(); - repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAchieve(); + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()) != null) { + repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); + repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); } // 复消 if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { - repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()).getAmount()); + repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.RETAIL_CONSUME.getValue()).getAmount()); } // 复购 From d7e7c33c1f3344ace82fb1e33045057c8872e079 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 23 Jul 2025 09:26:19 +0800 Subject: [PATCH 060/362] =?UTF-8?q?##=20=E9=A1=B6=E7=82=B9=E5=A5=96?= =?UTF-8?q?=E9=87=91=E6=8B=A8=E6=AF=94=E5=88=97=E8=A1=A8=E4=BD=93=E7=B3=BB?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E9=97=AE=E9=A2=98=EF=BC=88310=EF=BC=89?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/ICuMemberRetailRegionServiceApi.java | 30 -- .../member/self/dto/SelfServiceDataDTO.java | 8 +- .../statis/ICuBonusStatisServiceApi.java | 36 +- .../ICuBonusVertexStatisServiceApi.java | 32 +- .../mapper/CuAuthorityControlMapper.java | 5 - .../member/base/mapper/CuMemberMapper.java | 6 +- .../CuMemberRetailRegionServiceProvider.java | 53 -- .../member/base/service/ICuMemberService.java | 6 +- .../service/impl/CuMemberServiceImpl.java | 4 +- .../CuBonusLenjoyStatisController.java | 176 ------- .../manager/CuBonusStatisController.java | 334 +++---------- .../CuBonusVertexStatisController.java | 196 +++----- .../CuBonusVertexStatisTotalController.java | 57 +-- .../mapper/CuBonusLenjoyStatisMapper.java | 57 --- .../statis/mapper/CuBonusStatisMapper.java | 20 - .../mapper/CuBonusVertexStatisMapper.java | 15 - .../ICuBonusStatisServiceProvider.java | 32 +- .../ICuBonusVertexStatisServiceProvider.java | 53 +- .../service/ICuBonusLenjoyStatisService.java | 44 -- .../statis/service/ICuBonusStatisService.java | 25 - .../service/ICuBonusVertexStatisService.java | 15 - .../impl/CuBonusLenjoyStatisServiceImpl.java | 258 ---------- .../impl/CuBonusStatisServiceImpl.java | 297 +---------- .../impl/CuBonusVertexStatisServiceImpl.java | 33 +- .../statis/vo/CuBonusLenjoyStatisVO.java | 132 ----- .../statis/vo/CuBonusStatisChartVO.java | 222 ++++----- .../statis/vo/CuBonusStatisColumnarVO.java | 10 +- .../statis/vo/CuBonusStatisRoundVO.java | 7 +- .../hzs/member/statis/vo/CuBonusStatisVO.java | 187 +------ .../statis/vo/CuBonusVertexStatisPvVO.java | 153 +++--- .../statis/vo/CuBonusVertexStatisSumPvVO.java | 56 +-- .../statis/vo/CuBonusVertexStatisSumVO.java | 56 +-- .../statis/vo/CuBonusVertexStatisTotalVO.java | 63 +-- .../statis/vo/CuBonusVertexStatisVO.java | 12 +- .../mapper/CuMemberRetailRegionMapper.java | 27 - .../service/ICuMemberRetailRegionService.java | 14 +- .../impl/CuMemberRetailRegionServiceImpl.java | 17 - .../mapper/member/base/CuMemberMapper.xml | 30 +- .../statis/CuBonusLenjoyStatisMapper.xml | 401 --------------- .../member/statis/CuBonusStatisMapper.xml | 471 ++---------------- .../statis/CuBonusVertexStatisMapper.xml | 252 ++-------- .../member/CuMemberRetailRegionMapper.xml | 104 ++-- .../java/com/hzs/third/job/MemberJob.java | 43 +- 43 files changed, 621 insertions(+), 3428 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java delete mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java deleted file mode 100644 index 61dc06e3..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberRetailRegionServiceApi.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.member.base; - -import com.hzs.common.core.domain.R; - -/** - * @description: 会员收益区域服务接口 - * @author: zhang jing - * @date: 2024/12/30 15:01 - * @param: - * @return: - **/ -public interface ICuMemberRetailRegionServiceApi { - - /** - * @description: 批量修改已到期的会员收益区域 - * @author: zhang jing - * @date: 2024/12/30 15:22 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R batchUpdateRetailRegion(); - - /** - * 处理重复区域 - * - * @return - */ - R handleRepeatRegion(); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java index 2fc55068..3863503b 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfServiceDataDTO.java @@ -9,20 +9,14 @@ import java.io.Serializable; /** * 自助服务解析DTO - * - * @Description: - * @Author: ljc - * @Time: 2023/4/19 16:20 - * @Classname: selfServiceDataDTO - * @Package_name: com.hzs.member.self.dto */ @Data @Builder @AllArgsConstructor @NoArgsConstructor public class SelfServiceDataDTO implements Serializable { - private static final long serialVersionUID = -7391351591016186401L; + private static final long serialVersionUID = -7391351591016186401L; /** * 业务单号 diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java index e3dbcb86..f99cf887 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusStatisServiceApi.java @@ -1,43 +1,21 @@ package com.hzs.member.statis; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.achieve.CuMemberAchieve; -import com.hzs.common.domain.member.bonus.CuMemberBonus; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.member.self.dto.SelfServiceDataDTO; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - -import java.util.Date; /** - * @description: 奖金拨比统计 - * @author: zhang jing - * @date: 2023/6/1 17:24 - * @param: - * @return: + * 奖金拨比统计 **/ public interface ICuBonusStatisServiceApi { - - + /** + * 统计历史奖金拨比 + **/ + R statisHistoryBonus(String startDate, String endDate); /** - * @description: 统计历史奖金拨比 - * @author: zhang jing - * @date: 2023/10/19 9:29 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R + * 删除奖金拨比统计数据 **/ - R statisHistoryBonus(String startDate, String endDate); - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ - R delStatis(String startDate,String endDate); + R delStatis(String startDate, String endDate); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java index 446621c0..2786681a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/statis/ICuBonusVertexStatisServiceApi.java @@ -3,36 +3,18 @@ package com.hzs.member.statis; import com.hzs.common.core.domain.R; /** - * @description: 顶点奖金拨比统计 - * @author: zhang jing - * @date: 2023/6/1 17:24 - * @param: - * @return: + * 顶点奖金拨比统计 **/ public interface ICuBonusVertexStatisServiceApi { - - + /** + * 7天重算顶点奖金拨比统计 + **/ + R anewStatisHistoryBonus(String startDate, String endDate); /** - * @description: 7天重算顶点奖金拨比统计 - * @author: zhang jing - * @date: 2024/8/15 10:30 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R + * 删除奖金拨比统计数据 **/ - R anewStatisHistoryBonus(String startDate, String endDate); - - - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ - R delStatis(String startDate,String endDate); - + R delStatis(String startDate, String endDate); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java index 18db58b6..331f94a3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/attest/mapper/CuAuthorityControlMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.attest.CuAuthorityControl; /** - *

* 会员显示权限控制 Mapper 接口 - *

- * - * @author hzs - * @since 2024-06-07 */ public interface CuAuthorityControlMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index a5e63dc7..a0270d1a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -556,13 +556,11 @@ public interface CuMemberMapper extends BaseMapper { CuMemberExt queryRetailLoginMember(@Param("memberCode") String memberCode, @Param("pkMember") Long pkMember); /** - * 查询新零售登录会员列表 + * 查询有效顶点 * - * @param memberCodeList 会员编号列表 - * @param pkMemberList 会员主键列表 * @return */ - List listRetailLoginMember(@Param("memberCodeList") List memberCodeList, @Param("pkMemberList") List pkMemberList); + List vertexList(); /** * 新零售查询会员血缘伞上 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java deleted file mode 100644 index 5e0e0166..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuMemberRetailRegionServiceProvider.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.hzs.member.base.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.member.base.ICuMemberRetailRegionServiceApi; -import com.hzs.retail.member.service.ICuMemberRetailRegionService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @description: 会员收益区域dubbo服务 - * @author: zhang jing - * @date: 2024/12/30 15:05 - * @param: - * @return: - **/ -@Slf4j -@DubboService -public class CuMemberRetailRegionServiceProvider implements ICuMemberRetailRegionServiceApi { - - @Autowired - private ICuMemberRetailRegionService iCuMemberRetailRegionService; - - /** - * @description: 批量修改已到期的会员收益区域 - * @author: zhang jing - * @date: 2024/12/30 15:20 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R batchUpdateRetailRegion() { - try { - iCuMemberRetailRegionService.batchUpdateRetailRegion(); - } catch (Exception e) { - log.error("batchUpdateRetailRegion error:", e); - return R.fail(); - } - return R.ok(); - } - - @Override - public R handleRepeatRegion() { - try { - iCuMemberRetailRegionService.handleRepeatRegion(); - return R.ok(); - } catch (Exception e) { - log.error("handleRepeatRegion error:", e); - return R.fail(); - } - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 62a318a9..82998d90 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -779,12 +779,11 @@ public interface ICuMemberService extends IService { CuMemberExt getRetailMemberByCode(String memberCode); /** - * 根据会员编号列表获取会员信息(查库) + * 查询有效顶点 * - * @param memberCodeList 会员编号列表 * @return */ - List listRetailMemberByCode(List memberCodeList); + List vertexList(); /** * 根据会员ID获取会员信息(查库) @@ -899,6 +898,7 @@ public interface ICuMemberService extends IService { /** * 获取用户体系分享图片 + * * @return */ String getSharePosterImage(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 93c8db9d..d5ce407f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3031,8 +3031,8 @@ public class CuMemberServiceImpl extends ServiceImpl i } @Override - public List listRetailMemberByCode(List memberCodeList) { - return baseMapper.listRetailLoginMember(memberCodeList, null); + public List vertexList() { + return baseMapper.vertexList(); } @Override diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java deleted file mode 100644 index d722d6f3..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusLenjoyStatisController.java +++ /dev/null @@ -1,176 +0,0 @@ -package com.hzs.member.statis.controller.manager; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.AccessPermissions; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.msg.FinanceMsgConstants; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.dto.CurrencyDTO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import javax.servlet.http.HttpServletResponse; -import java.math.BigDecimal; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; - -/** - * 乐享奖金拨比零线统计 前端控制器 - */ -@Slf4j -@RestController -@RequestMapping("/manage/bonus-len-statis") -public class CuBonusLenjoyStatisController extends BaseController { - - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - - - /** - * 奖金拨比列表 - **/ - @AccessPermissions("LenTopPerformance") - @GetMapping("/list") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_LIST, method = EOperationMethod.SELECT) - public TableDataInfo list(CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - //默认查询当前日期的前一天 - Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - //查询顶点会员 - startPage(); - //查询乐享顶点奖金拨比列表 - slList = iCuBonusLenjoyStatisService.queryCuBonusStatis(cuBonusLenjoyStatisVO); - if (CollectionUtil.isNotEmpty(slList)) { - slList.forEach(itm -> { - itm.setCloudRealSubtotal(itm.getCloudRealSubtotal().multiply(exchangeRate)); - }); - } - return getDataTable(slList); - } - - /** - * 导出奖金拨比列表 - **/ - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusLenjoyStatisVO subtotal = null; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - //默认查询当前日期的前一天 - Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - startPage(); - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusLenjoyStatisService.queryCuBonusStatis(cuBonusLenjoyStatisVO); - if (CollectionUtil.isNotEmpty(slList)) { - slList.forEach(itm -> { - itm.setCloudRealSubtotal(itm.getCloudRealSubtotal().multiply(exchangeRate)); - }); - } - //合计 - subtotal = iCuBonusLenjoyStatisService.queryCuBonusSumStatis(cuBonusLenjoyStatisVO); - } - //合计 - if (subtotal == null) { - subtotal = new CuBonusLenjoyStatisVO(); - } - subtotal.setMemberCode("合计"); - slList.add(subtotal); - ExcelUtil util = new ExcelUtil<>(CuBonusLenjoyStatisVO.class); - util.exportExcel(response, slList, "拨比列表"); - } - - /** - * 奖金拨比列表合计 - **/ - @AccessPermissions("LenTopPerformance") - @GetMapping("/subtotal") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) - public AjaxResult subtotal(CuBonusLenjoyStatisVO cuBonusLenjoyStatisVO) { - Integer pkCountry = SecurityUtils.getPkCountry(); - CuBonusLenjoyStatisVO subtotal; - R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusLenjoyStatisVO.setRate(exchangeRate); - BigDecimal cent = new BigDecimal(100); - cuBonusLenjoyStatisVO.setPerCent(exchangeRate.multiply(cent)); - cuBonusLenjoyStatisVO.setPkCountry(pkCountry); - Date date = DateUtils.currentDate(); - //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusLenjoyStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusLenjoyStatisVO.getEndDate())) { - cuBonusLenjoyStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - cuBonusLenjoyStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); - } - //查询合计 - subtotal = iCuBonusLenjoyStatisService.queryCuBonusSumStatis(cuBonusLenjoyStatisVO); - return AjaxResult.success(subtotal); - } - - /** - * 统计历史奖金拨比数据, 手动统计某一天 - **/ - @GetMapping("/statis-history") - public AjaxResult statisHistoryBonus(String startDate, String endDate) { - if (StringUtils.isEmpty(startDate) || StringUtils.isEmpty(endDate)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_DATE_NOT_NULL)); - } - List vertexList = iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList = new ArrayList<>(); - pkVertexList.addAll(vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList())); - //删除数据 - if (CollectionUtil.isNotEmpty(pkVertexList)) { - iCuBonusLenjoyStatisService.delStatis(startDate, endDate, pkVertexList); - } - //重新统计 - Boolean b = iCuBonusLenjoyStatisService.anewStatisHistoryBonus(startDate, endDate); - return AjaxResult.success(b); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java index f4104bff..0d933b14 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java @@ -32,7 +32,6 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.LocalDate; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -53,7 +52,6 @@ public class CuBonusStatisController extends BaseController { @DubboReference ICurrencyServiceApi currencyServiceApi; - /** * 奖金拨比列表 **/ @@ -62,13 +60,10 @@ public class CuBonusStatisController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) public TableDataInfo list(CuBonusStatisVO cuBonusStatisVO) { int pkCountry = SecurityUtils.getPkCountry(); - List slList; R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - cuBonusStatisVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + cuBonusStatisVO.setRate(exchangeRate); cuBonusStatisVO.setPerCent(exchangeRate.multiply(cent)); cuBonusStatisVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 @@ -94,20 +89,13 @@ public class CuBonusStatisController extends BaseController { //查询订单业绩,查询分红配置每月10号分红 BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry == CountryConstants.CHINA_COUNTRY) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -121,13 +109,9 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); } startPage(); - if (pkCountry == CountryConstants.CHINA_COUNTRY) { - //查询中国奖金拨比列表 - slList = iCuBonusStatisService.queryCuBonusStatis(cuBonusStatisVO); - } else { - //查询国外奖金拨比 - slList = iCuBonusStatisService.queryForeignCountryCuBonusStatis(cuBonusStatisVO); - } + //查询中国奖金拨比列表 + List slList = iCuBonusStatisService.queryCuBonusStatis(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { if (itm.getIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { @@ -147,8 +131,8 @@ public class CuBonusStatisController extends BaseController { itm.setMainBonusPvRate(itm.getMainBonusPvRate().divide(itm.getFirstPurchaseAll(), 4, RoundingMode.HALF_UP)); } //重新算总拨比 - if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || - itm.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { + if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 + || itm.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { BigDecimal totalBonusRate = cent.multiply((itm.getTotalBonus()).multiply(currency.getData().getInExchangeRate())); totalBonusRate = totalBonusRate.divide(itm.getFirstPurchaseAll().add(itm.getRepurchaseAllAmount()), 4, RoundingMode.HALF_UP); itm.setTotalBonusRate(totalBonusRate); @@ -159,32 +143,24 @@ public class CuBonusStatisController extends BaseController { if (itm.getServiceBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setServiceBonus(itm.getServiceBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getHiFunIncome().compareTo(BigDecimal.ZERO) > 0) { - itm.setHiFunIncome(itm.getHiFunIncome().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurRangeBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurRangeBonus(itm.getRepurRangeBonus().multiply(currency.getData().getInExchangeRate())); } if (itm.getRepurOrgBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurOrgBonus(itm.getRepurOrgBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getAgentIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { - itm.setAgentIntroduceBonus(itm.getAgentIntroduceBonus().multiply(currency.getData().getInExchangeRate())); - } itm.setRepurBonus(itm.getRepurBonus().multiply(currency.getData().getInExchangeRate())); }); } return getDataTable(slList); } - /** * 查询单个人奖金拨比列表 **/ @GetMapping("/singlePersonList") @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_SINGLE_PERSON_LIST, method = EOperationMethod.SELECT) public AjaxResult singlePersonList(CuBonusSinglePersonStatisVO csps) { - CuBonusSinglePersonStatisVO cspsSum; if (StringUtils.isEmpty(csps.getMemberCode()) || StringUtils.isEmpty(csps.getStartDate()) || StringUtils.isEmpty(csps.getEndDate())) { return AjaxResult.success(); } @@ -193,13 +169,10 @@ public class CuBonusStatisController extends BaseController { return AjaxResult.success(); } R currency = currencyServiceApi.getCurrency(cmex.getPkSettleCountry()); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - csps.setRate(exchangeRate); - - csps.setPkMember(cmex.getPkId()); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + csps.setRate(exchangeRate); + csps.setPkMember(cmex.getPkId()); csps.setPkCountry(cmex.getPkSettleCountry()); //查询订单业绩,查询分红配置每月10号分红 @@ -207,16 +180,13 @@ public class CuBonusStatisController extends BaseController { CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); cuBonusStatisVO.setPkCountry(cmex.getPkSettleCountry()); //查询奖金扣项配置参数 0.8 - if (cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -230,76 +200,41 @@ public class CuBonusStatisController extends BaseController { csps.setDividendRatio(BigDecimal.ZERO); } startPage(); - cspsSum = iCuBonusStatisService.bonusSingleSum(csps); + CuBonusSinglePersonStatisVO cspsSum = iCuBonusStatisService.bonusSingleSum(csps); BigDecimal mainBonusRate; BigDecimal repurBonusRate; BigDecimal totalBonus; BigDecimal totalBonusRate; - //国外转为人民币 - if (cspsSum != null && !cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - //订单金额 + + if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setFirstPurchaseAll(cspsSum.getFirstPurchaseAll().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setMainBonusRate(mainBonusRate); + } else { + cspsSum.setMainBonusRate(new BigDecimal(0)); } if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurchaseAllAmount(cspsSum.getRepurchaseAllAmount().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setRepurBonusRate(repurBonusRate); + } else { + cspsSum.setRepurBonusRate(new BigDecimal(0)); } - if (cspsSum.getMainBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setMainBonus(cspsSum.getMainBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurBonus(cspsSum.getRepurBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); - } - } else { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - if (cspsSum.getShareBonus() == null) { - cspsSum.setShareBonus(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); + if (cspsSum.getShareBonus() == null) { + cspsSum.setShareBonus(new BigDecimal(0)); } + totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); + cspsSum.setTotalBonus(totalBonus); + totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); + cspsSum.setTotalBonusRate(totalBonusRate); + cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); } + return AjaxResult.success(cspsSum); } @PostMapping("/export-singlePersonList") @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_SINGLE_PERSON_LIST, method = EOperationMethod.EXPORT) public void exportSinglePersonList(HttpServletResponse response, CuBonusSinglePersonStatisVO csps) { - CuBonusSinglePersonStatisVO cspsSum; if (StringUtils.isEmpty(csps.getMemberCode()) || StringUtils.isEmpty(csps.getStartDate()) || StringUtils.isEmpty(csps.getEndDate())) { List cspsList = new ArrayList<>(); ExcelUtil util = new ExcelUtil<>(CuBonusSinglePersonStatisVO.class); @@ -313,12 +248,9 @@ public class CuBonusStatisController extends BaseController { } R currency = currencyServiceApi.getCurrency(cmex.getPkSettleCountry()); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - BigDecimal chRate = chCurrency.getData().getInExchangeRate() == null ? BigDecimal.ONE : chCurrency.getData().getInExchangeRate(); - csps.setRate(exchangeRate); - - csps.setPkMember(cmex.getPkId()); BigDecimal cent = new BigDecimal(100); + csps.setRate(exchangeRate); + csps.setPkMember(cmex.getPkId()); csps.setPkCountry(cmex.getPkSettleCountry()); //查询订单业绩,查询分红配置每月10号分红 @@ -326,16 +258,13 @@ public class CuBonusStatisController extends BaseController { CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); cuBonusStatisVO.setPkCountry(cmex.getPkSettleCountry()); //查询奖金扣项配置参数 0.8 - if (cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { @@ -348,70 +277,36 @@ public class CuBonusStatisController extends BaseController { } else { csps.setDividendRatio(BigDecimal.ZERO); } + startPage(); - cspsSum = iCuBonusStatisService.bonusSingleSum(csps); + CuBonusSinglePersonStatisVO cspsSum = iCuBonusStatisService.bonusSingleSum(csps); BigDecimal mainBonusRate; BigDecimal repurBonusRate; BigDecimal totalBonus; BigDecimal totalBonusRate; - //国外转为人民币 - if (cspsSum != null && !cmex.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - //订单金额 + if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setFirstPurchaseAll(cspsSum.getFirstPurchaseAll().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setMainBonusRate(mainBonusRate); + } else { + cspsSum.setMainBonusRate(new BigDecimal(0)); } if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurchaseAllAmount(cspsSum.getRepurchaseAllAmount().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); + repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); + cspsSum.setRepurBonusRate(repurBonusRate); + } else { + cspsSum.setRepurBonusRate(new BigDecimal(0)); } - if (cspsSum.getMainBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setMainBonus(cspsSum.getMainBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { - cspsSum.setRepurBonus(cspsSum.getRepurBonus().divide(exchangeRate, 2, RoundingMode.HALF_UP).multiply(chRate)); - } - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); - } - } else { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0 || cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - if (cspsSum.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - mainBonusRate = ((cspsSum.getMainBonus().add(cspsSum.getShareBonus())).divide(cspsSum.getFirstPurchaseAll(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setMainBonusRate(mainBonusRate); - } else { - cspsSum.setMainBonusRate(new BigDecimal(0)); - } - if (cspsSum.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - repurBonusRate = (cspsSum.getRepurBonus().divide(cspsSum.getRepurchaseAllAmount(), 2, RoundingMode.HALF_UP)).multiply(cent); - cspsSum.setRepurBonusRate(repurBonusRate); - } else { - cspsSum.setRepurBonusRate(new BigDecimal(0)); - } - if (cspsSum.getShareBonus() == null) { - cspsSum.setShareBonus(new BigDecimal(0)); - } - totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); - cspsSum.setTotalBonus(totalBonus); - totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); - cspsSum.setTotalBonusRate(totalBonusRate); - cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); + if (cspsSum.getShareBonus() == null) { + cspsSum.setShareBonus(new BigDecimal(0)); } + totalBonus = cspsSum.getMainBonus().add(cspsSum.getRepurBonus()).add(cspsSum.getShareBonus()); + cspsSum.setTotalBonus(totalBonus); + totalBonusRate = totalBonus.divide((cspsSum.getFirstPurchaseAll().add(cspsSum.getRepurchaseAllAmount())), 2, RoundingMode.HALF_UP).multiply(cent); + cspsSum.setTotalBonusRate(totalBonusRate); + cspsSum.setMainBonus(cspsSum.getMainBonus().add(cspsSum.getShareBonus())); } + List cspsList = Collections.singletonList(cspsSum); ExcelUtil util = new ExcelUtil<>(CuBonusSinglePersonStatisVO.class); util.exportExcel(response, cspsList, "个人拨比列表"); @@ -425,12 +320,10 @@ public class CuBonusStatisController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.SELECT) public AjaxResult subtotal(CuBonusStatisVO cuBonusStatisVO) { int pkCountry = SecurityUtils.getPkCountry(); - CuBonusStatisVO subtotal; R currency = currencyServiceApi.getCurrency(pkCountry); - BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - R chCurrency = currencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); - cuBonusStatisVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); + BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); + cuBonusStatisVO.setRate(exchangeRate); cuBonusStatisVO.setPerCent(exchangeRate.multiply(cent)); cuBonusStatisVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); @@ -461,15 +354,9 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - //查询体系订单分红业绩 - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); - cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); startPage(); - subtotal = iCuBonusStatisService.queryCuBonusSumStatis(cuBonusStatisVO); - if (subtotal != null && pkCountry == CountryConstants.CHINA_COUNTRY) { + CuBonusStatisVO subtotal = iCuBonusStatisService.queryCuBonusSumStatis(cuBonusStatisVO); + if (subtotal != null) { if (subtotal.getIntroduceBonusSum().compareTo(BigDecimal.ZERO) > 0) { subtotal.setIntroduceBonusSum(subtotal.getIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); } @@ -498,9 +385,6 @@ public class CuBonusStatisController extends BaseController { if (subtotal.getRepurOrgBonusSum().compareTo(BigDecimal.ZERO) > 0) { subtotal.setRepurOrgBonusSum(subtotal.getRepurOrgBonusSum().multiply(currency.getData().getInExchangeRate())); } - if (subtotal.getAgentIntroduceBonusSum().compareTo(BigDecimal.ZERO) > 0) { - subtotal.setAgentIntroduceBonusSum(subtotal.getAgentIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); - } subtotal.setMainBonusSum(subtotal.getMainBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurBonusSum(subtotal.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setTotalBonusSum(subtotal.getTotalBonusSum().multiply(currency.getData().getInExchangeRate())); @@ -508,7 +392,6 @@ public class CuBonusStatisController extends BaseController { return AjaxResult.success(subtotal); } - /** * 奖金拨比图表统计 **/ @@ -661,16 +544,13 @@ public class CuBonusStatisController extends BaseController { BigDecimal orderAchieve; BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + CuBonusStatisVO cuBonusStatisAchieve = new CuBonusStatisVO(); cuBonusStatisAchieve.setStartDate(chartVO.getStartDate()); cuBonusStatisAchieve.setEndDate(chartVO.getEndDate()); @@ -687,7 +567,6 @@ public class CuBonusStatisController extends BaseController { //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { - BigDecimal ratio = new BigDecimal("0.01"); for (CuBonusStatisVO cs : bdr) { dividendRatio = dividendRatio.add(cs.getDividendRatio()); @@ -700,7 +579,7 @@ public class CuBonusStatisController extends BaseController { chartVO.setOrderAchieve(orderAchieve.multiply(dividendRatio)); CuBonusStatisChartVO sumChart = iCuBonusStatisService.queryCuBonusSumStatisChart(chartVO); - if (sumChart != null && pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { + if (sumChart != null) { sumChart.setIntroduceBonusSum(sumChart.getIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setOrgBonusSum(sumChart.getOrgBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setLeaderBonusSum(sumChart.getLeaderBonusSum().multiply(currency.getData().getInExchangeRate())); @@ -713,35 +592,6 @@ public class CuBonusStatisController extends BaseController { sumChart.setRepurBonusSum(sumChart.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); sumChart.setTotalBonusSum(sumChart.getTotalBonusSum().multiply(currency.getData().getInExchangeRate())); } - if (sumChart != null && !pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - if (sumChart.getMainRegAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainRegAmount(sumChart.getMainRegAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getMainUpAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainUpAmount(sumChart.getMainUpAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentRegAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentRegAmount(sumChart.getAgentRegAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentUpAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentUpAmount(sumChart.getAgentUpAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setFirstPurchaseAll(sumChart.getFirstPurchaseAll().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentFirstAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentFirstAmount(sumChart.getAgentFirstAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getAgentRepurAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setAgentRepurAmount(sumChart.getAgentRepurAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getMainRepurAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setMainRepurAmount(sumChart.getMainRepurAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - if (sumChart.getRepurchaseAllAmount().compareTo(BigDecimal.ZERO) > 0) { - sumChart.setRepurchaseAllAmount(sumChart.getRepurchaseAllAmount().divide(currency.getData().getInExchangeRate(), 4, RoundingMode.HALF_UP)); - } - } return AjaxResult.success(sumChart); } @@ -782,20 +632,12 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisVO.setPkTeamCodeList(pkTeamCodeList); } //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusStatisVO.setOrderTypeList(orderTypeList); cuBonusStatisVO.setDividendRatio(BigDecimal.ZERO); startPage(); @@ -814,7 +656,6 @@ public class CuBonusStatisController extends BaseController { if (itm.getLeaderBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setLeaderBonus(itm.getLeaderBonus().multiply(currency.getData().getInExchangeRate())); } - String creationTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, itm.getCreationTime()); //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -835,18 +676,12 @@ public class CuBonusStatisController extends BaseController { if (itm.getServiceBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setServiceBonus(itm.getServiceBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getHiFunIncome().compareTo(BigDecimal.ZERO) > 0) { - itm.setHiFunIncome(itm.getHiFunIncome().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurRangeBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurRangeBonus(itm.getRepurRangeBonus().multiply(currency.getData().getInExchangeRate())); } if (itm.getRepurOrgBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurOrgBonus(itm.getRepurOrgBonus().multiply(currency.getData().getInExchangeRate())); } - if (itm.getAgentIntroduceBonus().compareTo(BigDecimal.ZERO) > 0) { - itm.setAgentIntroduceBonus(itm.getAgentIntroduceBonus().multiply(currency.getData().getInExchangeRate())); - } if (itm.getRepurBonus().compareTo(BigDecimal.ZERO) > 0) { itm.setRepurBonus(itm.getRepurBonus().multiply(chRate)); } @@ -867,17 +702,12 @@ public class CuBonusStatisController extends BaseController { subtotal.setServiceBonus(subtotal.getServiceBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurRangeBonus(subtotal.getRepurRangeBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurOrgBonus(subtotal.getRepurOrgBonusSum().multiply(currency.getData().getInExchangeRate())); - subtotal.setAgentIntroduceBonus(subtotal.getAgentIntroduceBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setMainBonus(subtotal.getMainBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setRepurBonus(subtotal.getRepurBonusSum().multiply(currency.getData().getInExchangeRate())); subtotal.setTotalBonus((subtotal.getTotalBonusSum()).multiply(currency.getData().getInExchangeRate())); subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); - subtotal.setAgentRegAmount(subtotal.getAgentRegAmountSum()); - subtotal.setAgentUpAmount(subtotal.getAgentUpAmountSum()); subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setAgentFirstAmount(subtotal.getAgentFirstAmountSum()); - subtotal.setAgentRepurAmount(subtotal.getAgentRepurAmountSum()); subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); subtotal.setRepurchaseAllAmount(subtotal.getRepurchaseAllAmountSum()); subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); @@ -921,16 +751,13 @@ public class CuBonusStatisController extends BaseController { BigDecimal orderAchieve; BigDecimal dividendRatio = BigDecimal.ZERO; //查询奖金扣项配置参数 0.8 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); - if (CollectionUtil.isNotEmpty(bonus)) { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); - } else { - cuBonusStatisVO.setBackRatio(BigDecimal.ONE); - } + List bonus = iCuBonusStatisService.bonusDeductlist(cuBonusStatisVO); + if (CollectionUtil.isNotEmpty(bonus)) { + cuBonusStatisVO.setBackRatio(BigDecimal.ONE.subtract(bonus.get(0).getBackRatio())); } else { cuBonusStatisVO.setBackRatio(BigDecimal.ONE); } + CuBonusStatisVO cuBonusStatisAchieve = new CuBonusStatisVO(); cuBonusStatisAchieve.setStartDate(cuBonusStatisVO.getStartDate()); cuBonusStatisAchieve.setEndDate(cuBonusStatisVO.getEndDate()); @@ -947,7 +774,6 @@ public class CuBonusStatisController extends BaseController { //查询分红比例配置 List bdr = iCuBonusStatisService.bonusDividendRatiolist(cuBonusStatisVO); if (CollectionUtil.isNotEmpty(bdr)) { - BigDecimal ratio = new BigDecimal("0.01"); for (CuBonusStatisVO cs : bdr) { dividendRatio = dividendRatio.add(cs.getDividendRatio()); @@ -1137,12 +963,10 @@ public class CuBonusStatisController extends BaseController { Date date = DateUtils.currentDate(); date = DateUtils.beforeDate(2, ChronoUnit.DAYS, date); Date endDate = DateUtils.beforeDate(5, ChronoUnit.DAYS, date); - if (StringUtils.isEmpty(endDateStr) || - StringUtils.isEmpty(startDateStr)) { + if (StringUtils.isEmpty(endDateStr) || StringUtils.isEmpty(startDateStr)) { endDateStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); startDateStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, endDate)); } - System.out.println(startDateStr + "--" + endDateStr); //删除前6天的数据 Boolean delstatis = iCuBonusStatisService.delStatis(startDateStr, endDateStr); if (delstatis) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java index 2c6707a6..b4768d87 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisController.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOperationBusiness; @@ -18,7 +17,6 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; import com.hzs.member.statis.service.ICuBonusVertexStatisService; import com.hzs.member.statis.vo.*; import com.hzs.system.base.ICurrencyServiceApi; @@ -40,9 +38,6 @@ import java.util.stream.Collectors; /** * 奖金拨比零线统计 前端控制器 - * - * @author hzs - * @since 2024-08-12 */ @Slf4j @RestController @@ -51,33 +46,21 @@ public class CuBonusVertexStatisController extends BaseController { @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; @DubboReference ICurrencyServiceApi currencyServiceApi; - /** - * @description: 查询所有顶点会员 - * @author: zhang jing - * @date: 2024/8/14 15:56 - * @param: [] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询所有顶点会员 **/ @GetMapping("/vertexList") - @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_LIST, method = EOperationMethod.SELECT) public TableDataInfo vertexList() { List vertexList = iCuBonusVertexStatisService.vertexList(null); return getDataTable(vertexList); } /** - * @description: 奖金拨比列表 - * @author: zhang jing - * @date: 2023/6/2 17:27 - * @param: [CuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 奖金拨比列表 **/ @AccessPermissions("TopPerformance") @GetMapping("/list") @@ -105,11 +88,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表(PV) - * @author: zhang jing - * @date: 2025/3/12 17:15 - * @param: [cuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 奖金拨比列表(PV) **/ @AccessPermissions("TopPerformance") @GetMapping("/list-pv") @@ -135,18 +114,12 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 导出奖金拨比列表 - * @author: zhang jing - * @date: 2023/8/16 20:07 - * @param: [response, cuBonusVertexStatisVO] - * @return: void + * 导出奖金拨比列表 **/ @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, CuBonusVertexStatisVO cuBonusVertexStatisVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusVertexStatisVO subtotal = null; R currency = currencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisVO.setRate(exchangeRate); @@ -155,44 +128,39 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { cuBonusVertexStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusVertexStatisService.queryCuBonusStatis(cuBonusVertexStatisVO); - //合计 - subtotal = iCuBonusVertexStatisService.queryCuBonusSumStatis(cuBonusVertexStatisVO); - subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); - subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); - subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); - subtotal.setRetailConsumeAmount(subtotal.getRetailConsumeAmountSum()); - subtotal.setTotalAmount(subtotal.getTotalAmountSum()); - subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); - subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); - subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); - subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); - subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); - subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); - subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); - subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); - subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); - subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); - subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); - subtotal.setTotalBonus(subtotal.getTotalBonusSum()); - subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); - } + List slList = iCuBonusVertexStatisService.queryCuBonusStatis(cuBonusVertexStatisVO); //合计 - if (subtotal == null) { - subtotal = new CuBonusVertexStatisVO(); - } + CuBonusVertexStatisVO subtotal = iCuBonusVertexStatisService.queryCuBonusSumStatis(cuBonusVertexStatisVO); + subtotal.setMainRegAmount(subtotal.getMainRegAmountSum()); + subtotal.setMainUpAmount(subtotal.getMainUpAmountSum()); + subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); + subtotal.setMainRepurAmount(subtotal.getMainRepurAmountSum()); + subtotal.setRetailConsumeAmount(subtotal.getRetailConsumeAmountSum()); + subtotal.setTotalAmount(subtotal.getTotalAmountSum()); + subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); + subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); + subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); + subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); + subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); + subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); + subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); + subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); + subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); + subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); + subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); + subtotal.setTotalBonus(subtotal.getTotalBonusSum()); + subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); + subtotal = new CuBonusVertexStatisVO(); subtotal.setMemberCode("合计"); slList.add(subtotal); ExcelUtil util = new ExcelUtil<>(CuBonusVertexStatisVO.class); @@ -200,18 +168,12 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 导出奖金拨比列表(PV) - * @author: zhang jing - * @date: 2025/3/12 17:23 - * @param: [response, cuBonusVertexStatisPvVO] - * @return: void + * 导出奖金拨比列表(PV) **/ @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_RATIO_LIST, method = EOperationMethod.EXPORT) @PostMapping("/export-pv") public void exportPv(HttpServletResponse response, CuBonusVertexStatisPvVO cuBonusVertexStatisPvVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList = null; - CuBonusVertexStatisPvVO subtotal = null; R currency = currencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisPvVO.setRate(exchangeRate); @@ -220,44 +182,38 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisPvVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { cuBonusVertexStatisPvVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisPvVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - slList = iCuBonusVertexStatisService.queryCuBonusPvStatis(cuBonusVertexStatisPvVO); - //合计 - subtotal = iCuBonusVertexStatisService.queryCuBonusPvSumStatis(cuBonusVertexStatisPvVO); - subtotal.setMainRegPv(subtotal.getMainRegPvSum()); - subtotal.setMainUpPv(subtotal.getMainUpPvSum()); - subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); - subtotal.setMainRepurPv(subtotal.getMainRepurPvSum()); - subtotal.setTotalAchieve(subtotal.getTotalAchieveSum()); - subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); - subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); - subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); - subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); - subtotal.setRetailConsumePv(subtotal.getRetailConsumePvSum()); - subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); - subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); - subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); - subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); - subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); - subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); - subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); - subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); - subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); - subtotal.setTotalBonus(subtotal.getTotalBonusSum()); - subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); - } - + List slList = iCuBonusVertexStatisService.queryCuBonusPvStatis(cuBonusVertexStatisPvVO); //合计 - if (subtotal == null) { - subtotal = new CuBonusVertexStatisPvVO(); - } + CuBonusVertexStatisPvVO subtotal = iCuBonusVertexStatisService.queryCuBonusPvSumStatis(cuBonusVertexStatisPvVO); + subtotal.setMainRegPv(subtotal.getMainRegPvSum()); + subtotal.setMainUpPv(subtotal.getMainUpPvSum()); + subtotal.setFirstPurchaseAll(subtotal.getFirstPurchaseAllSum()); + subtotal.setMainRepurPv(subtotal.getMainRepurPvSum()); + subtotal.setTotalAchieve(subtotal.getTotalAchieveSum()); + subtotal.setRetailRangeIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailSameLevelIncomeV1V4(subtotal.getRetailSameLevelIncomeV1V4Sum()); + subtotal.setRetailSameLevelIncomeV1V4Rate(subtotal.getSameLevelIncomeV1V4RateSum()); + subtotal.setRetailSameLevelIncomeV5(subtotal.getRetailSameLevelIncomeV5Sum()); + subtotal.setRetailSameLevelIncomeV5Rate(subtotal.getSameLevelIncomeV5RateSum()); + subtotal.setRetailConsumePv(subtotal.getRetailConsumePvSum()); + subtotal.setRetailRangeIncome(subtotal.getRetailRangeIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailRangeIncomeRateSum()); + subtotal.setRetailAreaIncome(subtotal.getRetailAreaIncomeSum()); + subtotal.setRetailAreaIncomeRate(subtotal.getRetailAreaIncomeRateSum()); + subtotal.setRetailBenefitAvgIncome(subtotal.getRetailBenefitAvgIncomeSum()); + subtotal.setRetailBenefitAvgIncomeRate(subtotal.getRetailBenefitAvgIncomeRateSum()); + subtotal.setRetailBenefitIncome(subtotal.getRetailBenefitIncomeSum()); + subtotal.setRetailBenefitIncomeRate(subtotal.getRetailBenefitIncomeRateSum()); + subtotal.setRetailBenefitRangeIncome(subtotal.getRetailBenefitRangeIncomeSum()); + subtotal.setRetailBenefitRangeIncomeRate(subtotal.getBenefitRangeIncomeRateSum()); + subtotal.setTotalBonus(subtotal.getTotalBonusSum()); + subtotal.setTotalBonusRate(subtotal.getTotalBonusRateSum()); + subtotal = new CuBonusVertexStatisPvVO(); subtotal.setMemberCode("合计"); slList.add(subtotal); ExcelUtil util = new ExcelUtil<>(CuBonusVertexStatisPvVO.class); @@ -265,11 +221,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表合计 - * @author: zhang jing - * @date: 2023/9/15 14:04 - * @param: [CuBonusVertexStatisVO] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 奖金拨比列表合计 **/ @AccessPermissions("TopPerformance") @GetMapping("/subtotal") @@ -285,8 +237,8 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisVO.getEndDate())) { cuBonusVertexStatisVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } @@ -297,11 +249,7 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 奖金拨比列表合计(PV) - * @author: zhang jing - * @date: 2025/3/12 17:20 - * @param: [cuBonusVertexStatisPvVO] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 奖金拨比列表合计(PV) **/ @AccessPermissions("TopPerformance") @GetMapping("/subtotal-pv") @@ -317,8 +265,8 @@ public class CuBonusVertexStatisController extends BaseController { cuBonusVertexStatisPvVO.setPkCountry(pkCountry); Date date = DateUtils.currentDate(); //默认查询当前日期的前一天 - if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisPvVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisPvVO.getEndDate())) { cuBonusVertexStatisPvVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisPvVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } @@ -329,19 +277,15 @@ public class CuBonusVertexStatisController extends BaseController { } /** - * @description: 统计历史奖金拨比数据, 手动统计某一天 - * @author: zhang jing - * @date: 2023/8/16 11:43 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 统计历史奖金拨比数据, 手动统计某一天 **/ @GetMapping("/statis-history") public AjaxResult statisHistoryBonus(String startDate, String endDate) { if (StringUtils.isEmpty(startDate) || StringUtils.isEmpty(endDate)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_DATE_NOT_NULL)); } - List vertexList = iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList = vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList()); + List vertexList = iCuBonusVertexStatisService.vertexList(null); + List pkVertexList = vertexList.stream().map(CuBonusVertexStatisVO::getPkVertex).collect(Collectors.toList()); //删除数据 if (CollectionUtil.isNotEmpty(pkVertexList)) { iCuBonusVertexStatisService.delStatis(startDate, endDate, pkVertexList); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java index bd9962d6..ca16b4cd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusVertexStatisTotalController.java @@ -8,7 +8,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; @@ -32,7 +31,6 @@ import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; -import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -46,8 +44,9 @@ public class CuBonusVertexStatisTotalController extends BaseController { @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; + @DubboReference - ICurrencyServiceApi currencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; /** * 奖金拨比列表 @@ -57,11 +56,11 @@ public class CuBonusVertexStatisTotalController extends BaseController { @Log(module = EOperationModule.BONUS_DIAL_RATIO, business = EOperationBusiness.BONUS_DIAL_VERTEX_RATIO_TOTAL, method = EOperationMethod.SELECT) public TableDataInfo list(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO) { Integer pkCountry = SecurityUtils.getPkCountry(); - List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); + R currency = iCurrencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); - cuBonusVertexStatisTotalVO.setRate(exchangeRate); + BigDecimal cent = new BigDecimal(100); + cuBonusVertexStatisTotalVO.setRate(exchangeRate); cuBonusVertexStatisTotalVO.setPerCent(exchangeRate.multiply(cent)); cuBonusVertexStatisTotalVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 @@ -71,10 +70,7 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisTotalVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisTotalVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusVertexStatisTotalVO.setOrderTypeList(orderTypeList); + //查询分红比例配置 cuBonusVertexStatisTotalVO.setDividendRatio(BigDecimal.ZERO); //查询顶点会员 @@ -83,27 +79,12 @@ public class CuBonusVertexStatisTotalController extends BaseController { CuBonusVertexStatisVO cvs = BeanUtil.copyProperties(cuBonusVertexStatisTotalVO, CuBonusVertexStatisVO.class); for (CuBonusVertexStatisTotalVO ve : vertexList) { cvs.setPkVertex(ve.getPkVertex()); - -// CuBonusVertexStatisTotalVO energyChamberAmountSum = iCuBonusVertexStatisService.queryEnergyChamberOrderTotal(cvs); -// //查询顶点拓展封顶人数 -// CuBonusVertexStatisTotalVO orgTopNumber = iCuBonusVertexStatisService.queryOrgTopNumber(cvs); -// if (orgTopNumber != null) { -// energyChamberAmountSum.setOrgTopNumber(orgTopNumber.getOrgTopNumber()); -// } -// //查询顶点拓展平均碰次和拓展最高碰次 -// CuBonusVertexStatisTotalVO touch = iCuBonusVertexStatisService.queryTouch(cvs); -// if (touch != null) { -// energyChamberAmountSum.setOrgAvTouch(touch.getOrgAvTouch()); -// energyChamberAmountSum.setOrgMaxTouch(touch.getOrgMaxTouch()); -// } - } startPage(); //查询顶点奖金拨比汇总 - slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); + List slList = iCuBonusVertexStatisService.queryCuBonusStatisTotal(cuBonusVertexStatisTotalVO); if (CollectionUtil.isNotEmpty(slList)) { slList.forEach(itm -> { - //重新算首购拨比 if (itm.getFirstPurchaseAll().compareTo(BigDecimal.ZERO) > 0) { BigDecimal mainBonusRate = cent.multiply((itm.getMainBonus()).multiply(currency.getData().getInExchangeRate())); @@ -145,7 +126,7 @@ public class CuBonusVertexStatisTotalController extends BaseController { public void export(HttpServletResponse response, CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO) { Integer pkCountry = SecurityUtils.getPkCountry(); List slList; - R currency = currencyServiceApi.getCurrency(pkCountry); + R currency = iCurrencyServiceApi.getCurrency(pkCountry); BigDecimal exchangeRate = currency.getData().getInExchangeRate() == null ? BigDecimal.ONE : currency.getData().getInExchangeRate(); cuBonusVertexStatisTotalVO.setRate(exchangeRate); BigDecimal cent = new BigDecimal(100); @@ -153,15 +134,11 @@ public class CuBonusVertexStatisTotalController extends BaseController { cuBonusVertexStatisTotalVO.setPkCountry(pkCountry); //默认查询当前日期的前一天 Date date = DateUtils.currentDate(); - if (StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getStartDate()) || - StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getEndDate())) { + if (StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getStartDate()) + || StringUtils.isEmpty(cuBonusVertexStatisTotalVO.getEndDate())) { cuBonusVertexStatisTotalVO.setStartDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); cuBonusVertexStatisTotalVO.setEndDate(DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, date)); } - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - cuBonusVertexStatisTotalVO.setOrderTypeList(orderTypeList); //查询分红比例配置 cuBonusVertexStatisTotalVO.setDividendRatio(BigDecimal.ZERO); //查询顶点会员 @@ -170,20 +147,6 @@ public class CuBonusVertexStatisTotalController extends BaseController { CuBonusVertexStatisVO cvs = BeanUtil.copyProperties(cuBonusVertexStatisTotalVO, CuBonusVertexStatisVO.class); for (CuBonusVertexStatisTotalVO ve : vertexList) { cvs.setPkVertex(ve.getPkVertex()); - - CuBonusVertexStatisTotalVO tmpTotal = new CuBonusVertexStatisTotalVO(); - tmpTotal.setPkVertex(ve.getPkVertex()); - //查询顶点拓展封顶人数 - CuBonusVertexStatisTotalVO orgTopNumber = iCuBonusVertexStatisService.queryOrgTopNumber(cvs); - if (orgTopNumber != null) { - tmpTotal.setOrgTopNumber(orgTopNumber.getOrgTopNumber()); - } - //查询顶点拓展平均碰次和拓展最高碰次 - CuBonusVertexStatisTotalVO touch = iCuBonusVertexStatisService.queryTouch(cvs); - if (touch != null) { - tmpTotal.setOrgAvTouch(touch.getOrgAvTouch()); - tmpTotal.setOrgMaxTouch(touch.getOrgMaxTouch()); - } } startPage(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java deleted file mode 100644 index 05d5ebc3..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusLenjoyStatisMapper.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.hzs.member.statis.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 奖金拨比零线统计 Mapper 接口 - */ -public interface CuBonusLenjoyStatisMapper extends BaseMapper { - - /** - * 奖金拨比列表 - **/ - List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 奖金拨比列表统计小计(最后一行) - **/ - CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 7天重算查询订单 - **/ - List queryAnewSaOrderByLessDay(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 删除奖金拨比统计表数据 - **/ - Boolean delStatis(@Param("startDate") String startDate, - @Param("endDate") String endDate, - @Param("pkVertexList") List pkVertexList); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询7天重算奖金查询 - **/ - List queryVertexChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询有效顶点 - **/ - List vertexList(@Param("pkVertex") Integer pkVertex); - - /** - * 查询当天团队统计数据 - **/ - List getCuBonusStatis(CuBonusVertexStatis CuBonusVertexStatis); - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java index dffe672a..625b9321 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusStatisMapper.java @@ -22,16 +22,6 @@ public interface CuBonusStatisMapper extends BaseMapper { **/ List queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金拨比 - **/ - List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询国外奖金拨比合计 - **/ - CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO); - /** * 查询体系合计的订单业绩 **/ @@ -87,21 +77,11 @@ public interface CuBonusStatisMapper extends BaseMapper { **/ List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金 - **/ - List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO); - /** * 查询中国奖金 **/ List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询生效国外国家列表 - **/ - List countrylist(CuBonusStatisVO cuBonusStatisVO); - /** * 查询有效体系 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java index 282d1947..1b96cc07 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/mapper/CuBonusVertexStatisMapper.java @@ -37,16 +37,6 @@ public interface CuBonusVertexStatisMapper extends BaseMapper queryCuBonusVertex(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO); - /** - * 查询顶点拓展封顶人数 - **/ - CuBonusVertexStatisTotalVO queryOrgTopNumber(CuBonusVertexStatisVO cuBonusVertexStatisVO); - - /** - * 查询顶点拓展平均碰次和拓展最高碰次 - **/ - CuBonusVertexStatisTotalVO queryTouch(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 奖金拨比列表统计小计(最后一行) **/ @@ -69,11 +59,6 @@ public interface CuBonusVertexStatisMapper extends BaseMapper pkVertexList); - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusVertexStatisVO CuBonusVertexStatisVO); - /** * 查询7天重算奖金查询 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java index 7111fd87..3ff00de0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusStatisServiceProvider.java @@ -1,53 +1,29 @@ package com.hzs.member.statis.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.achieve.CuMemberAchieve; -import com.hzs.common.domain.member.bonus.CuMemberBonus; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.statis.ICuBonusStatisServiceApi; import com.hzs.member.statis.service.ICuBonusStatisService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; - - /** - * @description: 奖金拨比统计Dubbo 服务 - * @author: zhang jing - * @date: 2023/6/1 17:25 - * @param: - * @return: + * 奖金拨比统计Dubbo 服务 **/ @Slf4j @DubboService public class ICuBonusStatisServiceProvider implements ICuBonusStatisServiceApi { @Autowired - ICuBonusStatisService iCuBonusStatisService; + private ICuBonusStatisService iCuBonusStatisService; - /** - * @description: 统计历史奖金拨比 - * @author: zhang jing - * @date: 2023/10/19 9:29 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R statisHistoryBonus(String startDate, String endDate) { + public R statisHistoryBonus(String startDate, String endDate) { return R.ok(iCuBonusStatisService.statisHistoryBonus(startDate, endDate)); } - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R delStatis(String startDate, String endDate) { + public R delStatis(String startDate, String endDate) { return R.ok(iCuBonusStatisService.delStatis(startDate, endDate)); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java index 9e88c69b..c4ab6cb9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/provider/ICuBonusVertexStatisServiceProvider.java @@ -3,24 +3,17 @@ package com.hzs.member.statis.provider; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.domain.R; import com.hzs.member.statis.ICuBonusVertexStatisServiceApi; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; import com.hzs.member.statis.service.ICuBonusVertexStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; +import com.hzs.member.statis.vo.CuBonusVertexStatisVO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; - /** - * @description: 顶点奖金拨比统计Dubbo 服务 - * @author: zhang jing - * @date: 2023/6/1 17:25 - * @param: - * @return: + * 顶点奖金拨比统计Dubbo 服务 **/ @Slf4j @DubboService @@ -28,46 +21,22 @@ public class ICuBonusVertexStatisServiceProvider implements ICuBonusVertexStatis @Autowired private ICuBonusVertexStatisService iCuBonusVertexStatisService; - @Autowired - private ICuBonusLenjoyStatisService iCuBonusLenjoyStatisService; - - - - - /** - * @description: 7天重算顶点奖金拨比统计 - * @author: zhang jing - * @date: 2024/8/15 9:58 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R anewStatisHistoryBonus(String startDate,String endDate) { - return R.ok(iCuBonusVertexStatisService.anewStatisHistoryBonus( startDate, endDate)); + public R anewStatisHistoryBonus(String startDate, String endDate) { + return R.ok(iCuBonusVertexStatisService.anewStatisHistoryBonus(startDate, endDate)); } - - /** - * @description: 删除奖金拨比统计数据 - * @author: zhang jing - * @date: 2023/12/11 10:56 - * @param: [startDate, endDate] - * @return: com.hzs.common.core.domain.R - **/ @Override - public R delStatis(String startDate,String endDate) { - List vertexList=iCuBonusLenjoyStatisService.vertexList(null); - List pkVertexList= new ArrayList<>(); - pkVertexList.addAll(vertexList.stream().map(CuBonusLenjoyStatisVO::getPkVertex).collect(Collectors.toList())); - if(CollectionUtil.isNotEmpty(pkVertexList)){ - iCuBonusVertexStatisService.delStatis(startDate, endDate,pkVertexList); + public R delStatis(String startDate, String endDate) { + List vertexList = iCuBonusVertexStatisService.vertexList(null); + if (CollectionUtil.isNotEmpty(vertexList)) { + List pkVertexList = vertexList.stream().map(CuBonusVertexStatisVO::getPkVertex).collect(Collectors.toList()); + if (CollectionUtil.isNotEmpty(pkVertexList)) { + iCuBonusVertexStatisService.delStatis(startDate, endDate, pkVertexList); + } } return R.ok(); } - - - - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java deleted file mode 100644 index f28ca5a8..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusLenjoyStatisService.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.member.statis.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; - -import java.util.List; - -/** - * 奖金拨比零线统计 服务类 - */ -public interface ICuBonusLenjoyStatisService extends IService { - - /** - * 奖金拨比列表 - **/ - List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 奖金拨比列表统计小计(最后一行) - **/ - CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 7天重算顶点奖金拨比统计 - **/ - Boolean anewStatisHistoryBonus(String startDate, String endDate); - - /** - * 删除奖金拨比统计表数据 - **/ - Boolean delStatis(String startDate, String endDate, List pkVertexList); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO); - - /** - * 查询所有体系 - **/ - List vertexList(Integer pkVertex); - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java index 92554636..36f38a17 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusStatisService.java @@ -16,16 +16,6 @@ public interface ICuBonusStatisService extends IService { **/ List queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金拨比 - **/ - List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询国外奖金拨比合计 - **/ - CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO); - /** * 查询体系合计的订单业绩 **/ @@ -86,21 +76,6 @@ public interface ICuBonusStatisService extends IService { **/ List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO); - /** - * 查询国外奖金 - **/ - List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO); - - /** - * 查询生效国外国家列表 - **/ - List countrylist(CuBonusStatisVO cuBonusStatisVO); - /** * 查询所有体系 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java index 867526a6..1228dff0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/ICuBonusVertexStatisService.java @@ -38,16 +38,6 @@ public interface ICuBonusVertexStatisService extends IService queryCuBonusVertex(CuBonusVertexStatisTotalVO cuBonusVertexStatisTotalVO); - /** - * 查询顶点拓展封顶人数 - **/ - CuBonusVertexStatisTotalVO queryOrgTopNumber(CuBonusVertexStatisVO cuBonusVertexStatisVO); - - /** - * 查询顶点拓展平均碰次和拓展最高碰次 - **/ - CuBonusVertexStatisTotalVO queryTouch(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 奖金拨比列表统计小计(最后一行) **/ @@ -68,11 +58,6 @@ public interface ICuBonusVertexStatisService extends IService pkVertexList); - /** - * 查询中国奖金 - **/ - List queryChinaCountryBonus(CuBonusVertexStatisVO cuBonusVertexStatisVO); - /** * 查询生效国外国家列表 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java deleted file mode 100644 index 950e0a25..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusLenjoyStatisServiceImpl.java +++ /dev/null @@ -1,258 +0,0 @@ -package com.hzs.member.statis.service.impl; - -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.EOrderStatus; -import com.hzs.common.domain.member.statis.CuBonusVertexStatis; -import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.statis.mapper.CuBonusLenjoyStatisMapper; -import com.hzs.member.statis.service.ICuBonusLenjoyStatisService; -import com.hzs.member.statis.vo.CuBonusLenjoyStatisVO; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -/** - * 奖金拨比零线统计 服务实现类 - */ -@Service -public class CuBonusLenjoyStatisServiceImpl extends ServiceImpl implements ICuBonusLenjoyStatisService { - - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired - private ICuMemberService iCuMemberService; - - /** - * 通过日期范围,返回范围内每天的日期 - **/ - public static List getDatesInRange(String startDate, String endDate) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - LocalDate start = LocalDate.parse(startDate, formatter); - LocalDate end = LocalDate.parse(endDate, formatter); - List dates = new ArrayList<>(); - LocalDate current = start; - while (!current.isAfter(end)) { - dates.add(current.format(formatter)); - current = current.plusDays(1); - } - return dates; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean anewStatisHistoryBonus(String startDate, String endDate) { - //查询顶点会员 - List vertexList = vertexList(null); - //会员订单信息 - List orachListAll = new ArrayList<>(); - //查询新增订单 - CuBonusLenjoyStatisVO cbs = new CuBonusLenjoyStatisVO(); - //日期集合 - List dates = getDatesInRange(startDate, endDate); - for (String date : dates) { - int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(date).getPkId(); - String settleTableName = TableNameConstants.CU_MEMBER_RANGE + period; - Integer count = iCuMemberService.selectExistTable(settleTableName); - if (count == 0) { - continue; - } - //累加好的数据存入soAll - List soAll = new ArrayList<>(); - cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cbs.setOrderStatus(EOrderStatus.PAY.getValue()); - cbs.setStartDate(date); - cbs.setEndDate(date); - cbs.setPeriod(period); - cbs.setSettleTableName(settleTableName); - cbs.setPkCountry(CountryConstants.CHINA_COUNTRY); - //先查订单 - for (CuBonusLenjoyStatisVO ve : vertexList) { - cbs.setPkVertex(ve.getPkVertex()); - List orachList = baseMapper.queryAnewSaOrderByLessDay(cbs); - orachListAll.addAll(orachList); - } - Map> orachListMap = orachListAll.stream() - .collect(Collectors.groupingBy(CuBonusLenjoyStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(orachListAll)) { - if (CollectionUtil.isNotEmpty(vertexList)) { - for (Map.Entry> entry : orachListMap.entrySet()) { - for (CuBonusLenjoyStatisVO ve : vertexList) { - CuBonusLenjoyStatisVO oldSo = new CuBonusLenjoyStatisVO(); - oldSo = addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); - if (oldSo.getPkCountry() != null) { - soAll.add(oldSo); - } - } - } - } - } - //累加好的数据存入acAll - List acAll = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(vertexList)) { - for (CuBonusLenjoyStatisVO ve : vertexList) { - cbs.setPkVertex(ve.getPkVertex()); - //查询中国统计奖金 - List listCn = baseMapper.queryVertexChinaCountryBonus(cbs); - Map> listCnMap = listCn.stream() - .collect(Collectors.groupingBy(CuBonusLenjoyStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(listCn)) { - for (Map.Entry> entry : listCnMap.entrySet()) { - CuBonusLenjoyStatisVO oldSo = new CuBonusLenjoyStatisVO(); - for (CuBonusLenjoyStatisVO cb : entry.getValue()) { - if (ve.getPkVertex().equals(cb.getPkVertex())) { - oldSo = addChAchieve(oldSo, cb); - } - } - if (oldSo.getPkCountry() != null) { - acAll.add(oldSo); - } - } - } - } - } - //存入订单信息 - saveBonusStatis(soAll); - //存入国内奖金信息 - saveBonusStatisAchieve(acAll); - } - return true; - } - - @Override - public Boolean delStatis(String startDate, String endDate, List pkVertexList) { - return baseMapper.delStatis(startDate, endDate, pkVertexList); - } - - @Override - public List queryCuBonusStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryCuBonusStatis(CuBonusLenjoyStatisVO); - } - - @Override - public CuBonusLenjoyStatisVO queryCuBonusSumStatis(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryCuBonusSumStatis(CuBonusLenjoyStatisVO); - } - - //累计中国奖金 - private CuBonusLenjoyStatisVO addChAchieve(CuBonusLenjoyStatisVO oldBon, CuBonusLenjoyStatisVO newBon) { - oldBon.setPkCountry(newBon.getPkCountry()); - oldBon.setCreationTime(newBon.getCreationTime()); - oldBon.setPkVertex(newBon.getPkVertex()); - oldBon.setCloudRealSubtotal(addOrInitializeAmount(oldBon.getCloudRealSubtotal(), newBon.getRealIncome(), 2)); - return oldBon; - } - - @Override - public List vertexList(Integer pkVertex) { - return baseMapper.vertexList(pkVertex); - } - - - /** - * 累加订单金额 - **/ - private CuBonusLenjoyStatisVO addOrderAmount(CuBonusLenjoyStatisVO oldSo, Integer pkCountry, Integer pkVertex, List orachList, int type) { - for (CuBonusLenjoyStatisVO newSo : orachList) { - // 修改统计数据 - if ((pkCountry == null && pkVertex != null && pkVertex.equals(newSo.getPkVertex())) || - (pkCountry != null && pkVertex == null && pkCountry.equals(newSo.getPkCountry()))) { - oldSo.setPkCountry(newSo.getPkCountry()); - oldSo.setCreationTime(newSo.getCreationTime()); - if (newSo.getPkVertex() != null) { - oldSo.setPkVertex(newSo.getPkVertex()); - } - } - } - return oldSo; - } - - private void saveBonusStatisAchieve(List cblist) { - for (CuBonusLenjoyStatisVO cb : cblist) { - if (cb.getPkCountry() == null) { - continue; - } - //查询体系是否添加 - CuBonusVertexStatis bs = new CuBonusVertexStatis(); - bs.setPkBdVertex(cb.getPkVertex()); - bs.setCreationTime(cb.getCreationTime()); - bs.setPkCountry(cb.getPkCountry()); - bs.setCloudRealSubtotal(cb.getCloudRealSubtotal()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - } - - /** - * 保存奖金拨比订单数据 - **/ - private void saveBonusStatis(List soList) { - for (CuBonusLenjoyStatisVO so : soList) { - if (so.getPkCountry() == null) { - continue; - } - CuBonusVertexStatis bs = new CuBonusVertexStatis(); - bs.setPkBdVertex(so.getPkVertex()); - bs.setCreationTime(so.getCreationTime()); - bs.setPkCountry(so.getPkCountry()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - - } - - @Override - public List queryChinaCountryBonus(CuBonusLenjoyStatisVO CuBonusLenjoyStatisVO) { - return baseMapper.queryChinaCountryBonus(CuBonusLenjoyStatisVO); - } - - // 获取或初始化金额 - private BigDecimal addOrInitializeAmount(BigDecimal currentAmount, BigDecimal newAmount, int type) { - if (type == 1) { - if (currentAmount != null) { - return currentAmount.subtract(newAmount); - } else { - return newAmount; - } - } else { - if (currentAmount != null) { - return currentAmount.add(newAmount); - } else { - return newAmount; - } - } - } - - /** - * 查询当天顶点统计数据 - **/ - public List getCuBonusStatis(CuBonusVertexStatis CuBonusVertexStatis) { - return baseMapper.getCuBonusStatis(CuBonusVertexStatis); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java index c222904f..f92fd106 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java @@ -8,12 +8,10 @@ import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.statis.CuBonusStatis; -import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.statis.mapper.CuBonusStatisMapper; import com.hzs.member.statis.service.ICuBonusStatisService; import com.hzs.member.statis.vo.*; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -29,9 +27,6 @@ import java.util.stream.Collectors; @Slf4j public class CuBonusStatisServiceImpl extends ServiceImpl implements ICuBonusStatisService { - @Autowired - ICuMemberSettlePeriodService cuMemberSettlePeriodService; - /** * 保存奖金拨比订单数据 **/ @@ -47,17 +42,9 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cblist) { for (CuBonusStatisVO cb : cblist) { @@ -260,13 +172,8 @@ public class CuBonusStatisServiceImpl extends ServiceImpl existingRecord = getCuBonusStatis(bs); @@ -279,37 +186,6 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cblist) { - for (CuBonusStatisVO cb : cblist) { - if (cb.getPkCountry() == null) { - continue; - } - //查询体系是否添加 - CuBonusStatis bs = new CuBonusStatis(); - bs.setCreationTime(cb.getCreationTime()); - bs.setPkCountry(cb.getPkCountry()); - bs.setIntroduceBonus(cb.getIntroduceBonus()); - bs.setOrgBonus(cb.getOrgBonus()); - bs.setLeaderBonus(cb.getLeaderBonus()); - bs.setShareBonus(cb.getShareBonus()); - bs.setServiceBonus(cb.getServiceBonus()); - bs.setRepurRangeBonus(cb.getRepurRangeBonus()); - bs.setRepurOrgBonus(cb.getRepurOrgBonus()); - bs.setRepurPushIncome(cb.getRepurPushIncome()); - // 查询数据库判断记录是否存在 - List existingRecord = getCuBonusStatis(bs); - if (CollectionUtil.isEmpty(existingRecord)) { - baseMapper.insert(bs); // 不存在则插入新记录 - } else { - bs.setPkId(existingRecord.get(0).getPkId()); // 设置主键ID - baseMapper.updateById(bs); // 存在则更新记录 - } - } - } - // 获取或初始化金额 private BigDecimal addOrInitializeAmount(BigDecimal currentAmount, BigDecimal newAmount, int type) { if (type == 1) { @@ -327,73 +203,36 @@ public class CuBonusStatisServiceImpl extends ServiceImpl queryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryCuBonusStatis(cuBonusStatisVO); } - /** - * 查询国外奖金拨比 - **/ - @Override - public List queryForeignCountryCuBonusStatis(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryCuBonusStatis(cuBonusStatisVO); - } - - /** - * 查询国外奖金拨比合计 - **/ - @Override - public CuBonusStatisVO queryForeignCountryCuBonusStatisSum(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryCuBonusStatisSum(cuBonusStatisVO); - } - - /** - * 查询体系合计的订单业绩 - **/ @Override public CuBonusStatisVO queryOrderAchieveSum(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryOrderAchieveSum(cuBonusStatisVO); } - /** - * 奖金拨比列表统计小计(最后一行) - **/ @Override public CuBonusStatisVO queryCuBonusSumStatis(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.queryCuBonusSumStatis(cuBonusStatisVO); } - /** - * 查询个人奖金拨比 - **/ @Override public CuBonusSinglePersonStatisVO bonusSingleSum(CuBonusSinglePersonStatisVO csps) { return baseMapper.bonusSingleSum(csps); } - /** - * 奖金拨比图表 - **/ @Override public List queryCuBonusStatisChart(CuBonusStatisChartVO chartVO) { return baseMapper.queryCuBonusStatisChart(chartVO); } - /** - * 奖金拨比图表合计 - **/ @Override public CuBonusStatisChartVO queryCuBonusSumStatisChart(CuBonusStatisChartVO chartVO) { return baseMapper.queryCuBonusSumStatisChart(chartVO); } - /** - * 查询奖金拨比图形数据-柱形图 - **/ @Override public CuBonusStatisColumnarVO pillarRatio(CuBonusStatisColumnarVO columnarVO) { // 查询当年的数据 @@ -420,18 +259,12 @@ public class CuBonusStatisServiceImpl extends ServiceImpl opt = Optional.ofNullable(baseMapper.queryYearData(columnarVO)); return opt.orElse(null); } - /** - * 查询奖金拨比(饼状图) - **/ @Override public CuBonusStatisRoundVO queryDiallingRatio(CuBonusStatisRoundVO roundVO) { return baseMapper.queryDiallingRatio(roundVO); @@ -450,27 +283,30 @@ public class CuBonusStatisServiceImpl extends ServiceImpl vertexlist = vertexList(); + //查询新增订单 CuBonusStatisVO cbs = new CuBonusStatisVO(); - //累加好的数据存入soAll - List soAll = new ArrayList<>(); cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); cbs.setOrderStatus(EOrderStatus.PAY.getValue()); cbs.setStartDate(startDate); cbs.setEndDate(endDate); cbs.setPkCountry(CountryConstants.CHINA_COUNTRY); -// //先查中国订单 + + //累加好的数据存入soAll + List soAll = new ArrayList<>(); + // 查中国订单 List orachList = baseMapper.querySaOrderByLessDay(cbs); - Map> orachListMap = orachList.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - //查询所有体系 - List vertexlist = vertexList(); if (CollectionUtil.isNotEmpty(orachList)) { + // 按支付时间(年月日)把订单进行分组(key:支付时间(年月日),value:订单统计数据列表) + Map> orachListMap = orachList.stream().collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + if (CollectionUtil.isNotEmpty(vertexlist)) { for (Map.Entry> entry : orachListMap.entrySet()) { for (CuBonusStatisVO ve : entry.getValue()) { CuBonusStatisVO oldSo = new CuBonusStatisVO(); - oldSo = addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); + addOrderAmount(oldSo, null, ve.getPkVertex(), entry.getValue(), 2); if (oldSo.getPkCountry() != null) { soAll.add(oldSo); } @@ -478,153 +314,58 @@ public class CuBonusStatisServiceImpl extends ServiceImpl> soAllMap = soAll.stream() -// .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + //累加好的数据存入acAll List acAll = new ArrayList<>(); //查询中国统计奖金 -// List listCn = cuMemberBonusService.queryMemberBonusByPeriod(null, startDate, endDate, CountryConstants.CHINA_COUNTRY); - List listCn = queryChinaCountryBonus(cbs); - Map> listCnMap = listCn.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + List listCn = baseMapper.queryChinaCountryBonus(cbs); if (CollectionUtil.isNotEmpty(listCn)) { + // 按支付时间(年月日)把订单进行分组(key:支付时间(年月日),value:订单统计数据列表) + Map> listCnMap = listCn.stream() + .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); + if (CollectionUtil.isNotEmpty(vertexlist)) { for (CuBonusStatisVO ve : vertexlist) { for (Map.Entry> entry : listCnMap.entrySet()) { CuBonusStatisVO oldSo = new CuBonusStatisVO(); for (CuBonusStatisVO cb : entry.getValue()) { if (ve.getPkVertex().equals(cb.getPkVertex())) { - oldSo = addChAchieve(oldSo, cb); + addChAchieve(oldSo, cb); if (oldSo.getPkCountry() != null) { acAll.add(oldSo); } } } - } } } } - //查询国外国家列表 查询国外统计奖金 - //累加好的数据存入fcAll - List fcAll = new ArrayList<>(); - List countrylist = countrylist(cbs); - if (CollectionUtil.isNotEmpty(countrylist)) { - for (CuBonusStatisVO con : countrylist) { - cbs.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cbs.setOrderStatus(EOrderStatus.PAY.getValue()); - cbs.setStartDate(startDate); - cbs.setEndDate(endDate); - cbs.setPkCountry(con.getPkCountry()); - //查询国外订单 - List orach = baseMapper.querySaOrderByLessDay(cbs); - Map> orachMap = orach.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(orach)) { - for (Map.Entry> entry : orachMap.entrySet()) { - CuBonusStatisVO oldSo = new CuBonusStatisVO(); - oldSo = addOrderAmount(oldSo, con.getPkCountry(), null, entry.getValue(), 2); - if (oldSo.getPkCountry() != null) { - soAll.add(oldSo); - } - } - } - - //查询国外统计奖金 - //累加好的数据存入fcAll - CuBonusStatisVO cuBonusStatisVO = new CuBonusStatisVO(); - cuBonusStatisVO.setStartDate(startDate); - cuBonusStatisVO.setEndDate(endDate); - cuBonusStatisVO.setPkCountry(con.getPkCountry()); - //查询国外奖金 - List bsList = queryForeignCountryBonus(cuBonusStatisVO); - Map> bsListMap = bsList.stream() - .collect(Collectors.groupingBy(CuBonusStatisVO::getCreationTime)); - if (CollectionUtil.isNotEmpty(bsList)) { - for (Map.Entry> entry : bsListMap.entrySet()) { - CuBonusStatisVO oldSo1 = new CuBonusStatisVO(); - for (CuBonusStatisVO cb : entry.getValue()) { - if (con.getPkCountry().equals(cb.getPkCountry())) { - oldSo1 = addFcAchieve(oldSo1, cb); - } - } - if (oldSo1.getPkCountry() != null) { - fcAll.add(oldSo1); - } - } - - } - } - } - - //存入订单信息 saveBonusStatis(soAll); //存入国内奖金信息 saveBonusStatisAchieve(acAll); - //存入国外奖金信息 - saveForeignCountryBonus(fcAll); return true; } - /** - * 删除奖金拨比统计表数据 - **/ @Override public Boolean delStatis(String startDate, String endDate) { return baseMapper.delStatis(startDate, endDate); } - /** - * 查询奖金扣项配置参数 - **/ @Override public List bonusDeductlist(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.bonusDeductlist(cuBonusStatisVO); } - - /** - * 查询分红比例配置 - **/ @Override public List bonusDividendRatiolist(CuBonusStatisVO cuBonusStatisVO) { return baseMapper.bonusDividendRatiolist(cuBonusStatisVO); } - /** - * 查询国外奖金 - **/ - @Override - public List queryForeignCountryBonus(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryForeignCountryBonus(cuBonusStatisVO); - } - - /** - * 查询中国奖金 - **/ - @Override - public List queryChinaCountryBonus(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.queryChinaCountryBonus(cuBonusStatisVO); - } - - - /** - * 查询生效国外国家列表 - **/ - @Override - public List countrylist(CuBonusStatisVO cuBonusStatisVO) { - return baseMapper.countrylist(cuBonusStatisVO); - } - - /** - * 查询有效体系 - **/ @Override public List vertexList() { return baseMapper.vertexList(); } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java index 767af1de..0b66ac0b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusVertexStatisServiceImpl.java @@ -3,7 +3,6 @@ package com.hzs.member.statis.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EOrderStatus; @@ -83,8 +82,7 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl> orachListMap = orachListAll.stream() - .collect(Collectors.groupingBy(CuBonusVertexStatisVO::getCreationTime)); + Map> orachListMap = orachListAll.stream().collect(Collectors.groupingBy(CuBonusVertexStatisVO::getCreationTime)); //查询所有体系 if (CollectionUtil.isNotEmpty(orachListAll)) { if (CollectionUtil.isNotEmpty(vertexList)) { @@ -161,16 +159,6 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl vertexList(Integer pkVertex) { List list = new ArrayList<>(); - List memberList = iCuMemberService.listRetailMemberByCode(Arrays.asList(SysConstants.RETAIL_TOP_CODE)); + List memberList = iCuMemberService.vertexList(); if (CollectionUtil.isNotEmpty(memberList)) { for (CuMemberExt cuMemberExt : memberList) { list.add(CuBonusVertexStatisVO.builder() - .pkVertex(cuMemberExt.getPkId().intValue()) + .pkVertex(cuMemberExt.getPkVertex().intValue()) .memberCode(cuMemberExt.getMemberCode()) .memberName(cuMemberExt.getMemberName()) .build()); @@ -238,16 +226,16 @@ public class CuBonusVertexStatisServiceImpl extends ServiceImpl queryChinaCountryBonus(CuBonusVertexStatisVO cuBonusVertexStatisVO) { - return baseMapper.queryChinaCountryBonus(cuBonusVertexStatisVO); } // 获取或初始化金额 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java deleted file mode 100644 index 53afd852..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusLenjoyStatisVO.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.hzs.member.statis.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.BigDecimalFormat; -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - * 乐享奖金拨比统计 - * 每个团队,每天一条数据 - * 数据来自 订单表奖金明细表 会员奖金-会员奖金汇总表 - */ -@Data -public class CuBonusLenjoyStatisVO { - - private static final long serialVersionUID = 1L; - - private Long pkId; - - /** - * 日,月,年,全 - */ - private String statisType; - - /** - * 顶点编号 - */ - @Excel(name = "顶点编号") - private String memberCode; - /** - * 顶点名称 - */ - @Excel(name = "顶点名称") - private String memberName; - /** - * 创建时间 - */ - @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 乐享极差 - */ - @Excel(name = "乐享极差(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal cloudRealSubtotal = BigDecimal.ZERO; - - private BigDecimal realIncome; - - /** - * 首购相关奖金拨比(%)=首购总奖金(推荐奖净值+拓展奖净值+领导奖净值+服务费净值+分红奖净值)/首购总金额 - */ - @Excel(name = "乐享拨出比例(%)", scale = 2) - @BigDecimalFormat - private BigDecimal lenjoyRate = BigDecimal.ZERO; - - - /** - * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 - */ - private Integer pkVertex; - - /** - * 国家 - */ - private Integer pkCountry; - /** - * 币种展示 当地币 本币 - */ - private Integer currency; - - /** - * 体系集合 - */ - private List pkBdVertexList; - - /** - * 开始时间 - */ - private String startDate; - /** - * 结束时间 - */ - private String endDate; - /** - * 汇率 *100 - */ - private BigDecimal perCent = BigDecimal.ZERO; - - /** - * 汇率 - */ - private BigDecimal rate = BigDecimal.ZERO; - - private Integer orderStatus; - private Integer delFlag; - private Long pkMember; - private Integer orderType; - - /** - * 订单PV - */ - private BigDecimal orderAchieve = BigDecimal.ZERO; - /** - * 订单金额 - */ - private BigDecimal orderAmount = BigDecimal.ZERO; - private List orderAchieveList; - List orderTypeList; - /** - * 本月会员网体表 - */ - private String settleTableName; - /** - * 期数 - */ - private int period; - - /** - * 系统类型 - */ - private int systemType; - - private String payTimeStr; - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java index ca49ec2f..9b8fdd60 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisChartVO.java @@ -10,14 +10,9 @@ import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计(波比图表) * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisChartVO { @@ -38,7 +33,7 @@ public class CuBonusStatisChartVO { /** * 创建时间 */ - @Excel(name = "业绩时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; /** @@ -51,15 +46,15 @@ public class CuBonusStatisChartVO { * 注册新增金额(¥) */ @BigDecimalFormat - @Excel(name = "注册专区(¥)",scale = 2) - private BigDecimal mainRegAmount=BigDecimal.ZERO; + @Excel(name = "注册专区(¥)", scale = 2) + private BigDecimal mainRegAmount = BigDecimal.ZERO; /** * 升级新增金额(¥) */ @BigDecimalFormat - @Excel(name = "升级专区(¥)",scale = 2) - private BigDecimal mainUpAmount=BigDecimal.ZERO; + @Excel(name = "升级专区(¥)", scale = 2) + private BigDecimal mainUpAmount = BigDecimal.ZERO; /** * 特殊注册 @@ -74,171 +69,171 @@ public class CuBonusStatisChartVO { * 云代注册金额 */ @BigDecimalFormat - @Excel(name = "云代注册(¥)",scale = 2) - private BigDecimal agentRegAmount=BigDecimal.ZERO; + @Excel(name = "云代注册(¥)", scale = 2) + private BigDecimal agentRegAmount = BigDecimal.ZERO; /** * 云代升级新增金额 */ @BigDecimalFormat - @Excel(name = "云代升级(¥)",scale = 2) - private BigDecimal agentUpAmount=BigDecimal.ZERO; + @Excel(name = "云代升级(¥)", scale = 2) + private BigDecimal agentUpAmount = BigDecimal.ZERO; /** * 首购总金额(¥) 注册金额+升级金额+特殊注册+特殊升级(1万礼包) */ @BigDecimalFormat - @Excel(name = "首购金额(¥)",scale = 2) - private BigDecimal firstPurchaseAll=BigDecimal.ZERO; + @Excel(name = "首购金额(¥)", scale = 2) + private BigDecimal firstPurchaseAll = BigDecimal.ZERO; /** * 直推收益(¥) */ @BigDecimalFormat - @Excel(name = "直推收益(¥)",scale = 2) - private BigDecimal introduceBonus=BigDecimal.ZERO; + @Excel(name = "直推收益(¥)", scale = 2) + private BigDecimal introduceBonus = BigDecimal.ZERO; /** * 直推收益拨比(%) 直推收益/首购金额 */ @BigDecimalFormat - @Excel(name = "直推收益拨比(%)",scale = 2) - private BigDecimal introduceBonusRate=BigDecimal.ZERO; + @Excel(name = "直推收益拨比(%)", scale = 2) + private BigDecimal introduceBonusRate = BigDecimal.ZERO; /** * 直推收益拨比小计(%) 直推收益/首购金额 */ @BigDecimalFormat - private BigDecimal introduceBonusRateSum=BigDecimal.ZERO; + private BigDecimal introduceBonusRateSum = BigDecimal.ZERO; /** * 拓展收益(¥) */ @BigDecimalFormat - @Excel(name = "拓展收益(¥)",scale = 2) - private BigDecimal orgBonus=BigDecimal.ZERO; + @Excel(name = "拓展收益(¥)", scale = 2) + private BigDecimal orgBonus = BigDecimal.ZERO; /** * 拓展收益拨比(%) */ @BigDecimalFormat - @Excel(name = "拓展收益拨比(%)",scale = 2) - private BigDecimal orgBonusRate=BigDecimal.ZERO; + @Excel(name = "拓展收益拨比(%)", scale = 2) + private BigDecimal orgBonusRate = BigDecimal.ZERO; /** * 拓展收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal orgBonusRateSum=BigDecimal.ZERO; + private BigDecimal orgBonusRateSum = BigDecimal.ZERO; /** * 辅导收益(¥) */ @BigDecimalFormat - @Excel(name = "辅导收益(¥)",scale = 2) - private BigDecimal leaderBonus=BigDecimal.ZERO; + @Excel(name = "辅导收益(¥)", scale = 2) + private BigDecimal leaderBonus = BigDecimal.ZERO; /** * 辅导收益拨比(%) */ @BigDecimalFormat - @Excel(name = "辅导收益(%)",scale = 2) - private BigDecimal leaderBonusRate=BigDecimal.ZERO; + @Excel(name = "辅导收益(%)", scale = 2) + private BigDecimal leaderBonusRate = BigDecimal.ZERO; /** * 辅导收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal leaderBonusRateSum=BigDecimal.ZERO; + private BigDecimal leaderBonusRateSum = BigDecimal.ZERO; /** * 分红收益(¥) */ @BigDecimalFormat - @Excel(name = "分红收益(¥)",scale = 2) - private BigDecimal shareBonus=BigDecimal.ZERO; + @Excel(name = "分红收益(¥)", scale = 2) + private BigDecimal shareBonus = BigDecimal.ZERO; /** * 分红收益拨比(%) */ @BigDecimalFormat - @Excel(name = "分红收益拨比(%)",scale = 2) - private BigDecimal shareBonusRate=BigDecimal.ZERO; + @Excel(name = "分红收益拨比(%)", scale = 2) + private BigDecimal shareBonusRate = BigDecimal.ZERO; /** * 分红收益拨比小计(%) */ @BigDecimalFormat - private BigDecimal shareBonusRateSum=BigDecimal.ZERO; + private BigDecimal shareBonusRateSum = BigDecimal.ZERO; /** * 服务补贴(¥) */ @BigDecimalFormat - @Excel(name = "服务补贴(¥)",scale = 2) - private BigDecimal serviceBonus=BigDecimal.ZERO; + @Excel(name = "服务补贴(¥)", scale = 2) + private BigDecimal serviceBonus = BigDecimal.ZERO; /** * 服务补贴拨比(%) */ @BigDecimalFormat - @Excel(name = "服务补贴拨比(%)",scale = 2) - private BigDecimal serviceBonusRate=BigDecimal.ZERO; + @Excel(name = "服务补贴拨比(%)", scale = 2) + private BigDecimal serviceBonusRate = BigDecimal.ZERO; /** * 服务补贴拨比小计(%) */ @BigDecimalFormat - private BigDecimal serviceBonusRateSum=BigDecimal.ZERO; + private BigDecimal serviceBonusRateSum = BigDecimal.ZERO; /** * 云代直推收益(¥) */ @BigDecimalFormat - @Excel(name = "云代直推",scale = 2) - private BigDecimal agentIntroduceBonus=BigDecimal.ZERO; + @Excel(name = "云代直推", scale = 2) + private BigDecimal agentIntroduceBonus = BigDecimal.ZERO; /** * 云代直推收益拨比 */ @BigDecimalFormat - @Excel(name = "云代直推拨比(%)",scale = 2) - private BigDecimal agentIntroduceBonusRate=BigDecimal.ZERO; + @Excel(name = "云代直推拨比(%)", scale = 2) + private BigDecimal agentIntroduceBonusRate = BigDecimal.ZERO; /** * 云代直推拨比小计 */ @BigDecimalFormat - private BigDecimal agentIntroduceBonusRateSum=BigDecimal.ZERO; + private BigDecimal agentIntroduceBonusRateSum = BigDecimal.ZERO; /** * 云代首购 = 云代注册+云代升级 */ @BigDecimalFormat - @Excel(name = "云代首购(¥)",scale = 2) - private BigDecimal agentFirstAmount=BigDecimal.ZERO; + @Excel(name = "云代首购(¥)", scale = 2) + private BigDecimal agentFirstAmount = BigDecimal.ZERO; /** * 云代首购 = 云代注册+云代升级 * 云代直推/云代首购 */ @BigDecimalFormat - @Excel(name = "云代首购拨比(%)",scale = 2) - private BigDecimal agentFirstAmountRate=BigDecimal.ZERO; + @Excel(name = "云代首购拨比(%)", scale = 2) + private BigDecimal agentFirstAmountRate = BigDecimal.ZERO; /** * 云代首购拨比小计 */ @BigDecimalFormat - private BigDecimal agentFirstAmountRateSum=BigDecimal.ZERO; + private BigDecimal agentFirstAmountRateSum = BigDecimal.ZERO; /** * 云代复购新增 */ @BigDecimalFormat - @Excel(name = "云代复购(¥)",scale = 2) - private BigDecimal agentRepurAmount=BigDecimal.ZERO; + @Excel(name = "云代复购(¥)", scale = 2) + private BigDecimal agentRepurAmount = BigDecimal.ZERO; /** * 云代复购/(云代注册+升级+复购) */ @BigDecimalFormat - @Excel(name = "云代复购拨比(%)",scale = 2) - private BigDecimal agentRepurAmountRate=BigDecimal.ZERO; + @Excel(name = "云代复购拨比(%)", scale = 2) + private BigDecimal agentRepurAmountRate = BigDecimal.ZERO; /** * 云代复购拨比小计 (%) */ @BigDecimalFormat - private BigDecimal agentRepurAmountRateSum=BigDecimal.ZERO; + private BigDecimal agentRepurAmountRateSum = BigDecimal.ZERO; /** * 复购新增金额(¥)(复购专区) */ @BigDecimalFormat - @Excel(name = "复购专区(¥)",scale = 2) - private BigDecimal mainRepurAmount=BigDecimal.ZERO; + @Excel(name = "复购专区(¥)", scale = 2) + private BigDecimal mainRepurAmount = BigDecimal.ZERO; /** * 直播订单 @@ -259,81 +254,83 @@ public class CuBonusStatisChartVO { * 复购总金额 复购订单+直播订单+合作订单+特殊复购订单 */ @BigDecimalFormat - @Excel(name = "复购金额(¥)",scale = 2) - private BigDecimal repurchaseAllAmount=BigDecimal.ZERO; + @Excel(name = "复购金额(¥)", scale = 2) + private BigDecimal repurchaseAllAmount = BigDecimal.ZERO; /** * 复购级差收益(¥) */ @BigDecimalFormat - @Excel(name = "复购级差收益(¥)",scale = 2) - private BigDecimal repurRangeBonus=BigDecimal.ZERO; + @Excel(name = "复购级差收益(¥)", scale = 2) + private BigDecimal repurRangeBonus = BigDecimal.ZERO; /** * 复购级差拨比(¥)/ 复购金额 */ @BigDecimalFormat - @Excel(name = "复购级差拨比(%)",scale = 2) - private BigDecimal repurRangeBonusRate=BigDecimal.ZERO; + @Excel(name = "复购级差拨比(%)", scale = 2) + private BigDecimal repurRangeBonusRate = BigDecimal.ZERO; /** * 复购级差拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurRangeBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurRangeBonusRateSum = BigDecimal.ZERO; /** * 复购拓展收益(¥) */ @BigDecimalFormat - @Excel(name = "复购拓展收益(¥)",scale = 2) - private BigDecimal repurOrgBonus=BigDecimal.ZERO; + @Excel(name = "复购拓展收益(¥)", scale = 2) + private BigDecimal repurOrgBonus = BigDecimal.ZERO; /** * 复购拓展拨比(¥) / 复购金额 */ @BigDecimalFormat - @Excel(name = "复购拓展拨比(%)",scale = 2) - private BigDecimal repurOrgBonusRate=BigDecimal.ZERO; + @Excel(name = "复购拓展拨比(%)", scale = 2) + private BigDecimal repurOrgBonusRate = BigDecimal.ZERO; /** * 复购拓展拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurOrgBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurOrgBonusRateSum = BigDecimal.ZERO; /** * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*0.8=实际拨出之和。 */ @BigDecimalFormat - @Excel(name = "首购拨出金额(¥)",scale = 2) - private BigDecimal mainBonus=BigDecimal.ZERO; + @Excel(name = "首购拨出金额(¥)", scale = 2) + private BigDecimal mainBonus = BigDecimal.ZERO; /** * 首购拨出金额 小计 */ @BigDecimalFormat - private BigDecimal mainBonusSum=BigDecimal.ZERO; + private BigDecimal mainBonusSum = BigDecimal.ZERO; /** * 首购相关奖金拨比(%)=首购总奖金(推荐奖净值+拓展奖净值+领导奖净值+服务费净值+分红奖净值)/首购总金额 */ @BigDecimalFormat - @Excel(name = "首购拨出比例(%)",scale = 2) - private BigDecimal mainBonusRate=BigDecimal.ZERO; + @Excel(name = "首购拨出比例(%)", scale = 2) + private BigDecimal mainBonusRate = BigDecimal.ZERO; - /** 复购拨出金额 + /** + * 复购拨出金额 * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 * (复购级差+复购拓展 ) *0.8 +海粉直推 */ @BigDecimalFormat - @Excel(name = "复购拨出金额(¥)",scale = 2) - private BigDecimal repurBonus=BigDecimal.ZERO; + @Excel(name = "复购拨出金额(¥)", scale = 2) + private BigDecimal repurBonus = BigDecimal.ZERO; - /** (复购级差+复购拓展 ) *0.8 +海粉直推 + /** + * (复购级差+复购拓展 ) *0.8 +海粉直推 * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) */ @BigDecimalFormat - @Excel(name = "复购拨出比例(%)",scale = 2) - private BigDecimal repurBonusRate=BigDecimal.ZERO; + @Excel(name = "复购拨出比例(%)", scale = 2) + private BigDecimal repurBonusRate = BigDecimal.ZERO; /** * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 */ @BigDecimalFormat - @Excel(name = "总拨出金额(¥)",scale = 2) - private BigDecimal totalBonus=BigDecimal.ZERO; + @Excel(name = "总拨出金额(¥)", scale = 2) + private BigDecimal totalBonus = BigDecimal.ZERO; /** * 综合(拨出)实发拨比(%)=(直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*80% @@ -341,8 +338,8 @@ public class CuBonusStatisChartVO { * (复购直推收益+复购级差收益+复购拓展收益)*80%=X+海粉直推=实际大盘拨出金额/(总金额)(注册+升级+复购+海粉+礼包)订单 */ @BigDecimalFormat - @Excel(name = "总拨出比例(%)",scale = 2) - private BigDecimal totalBonusRate=BigDecimal.ZERO; + @Excel(name = "总拨出比例(%)", scale = 2) + private BigDecimal totalBonusRate = BigDecimal.ZERO; /** * 首购实发小计 @@ -372,136 +369,136 @@ public class CuBonusStatisChartVO { * 注册新增金额(¥)小计 */ @BigDecimalFormat - private BigDecimal mainRegAmountSum=BigDecimal.ZERO; + private BigDecimal mainRegAmountSum = BigDecimal.ZERO; /** * 升级新增金额(¥)小计 */ @BigDecimalFormat - private BigDecimal mainUpAmountSum=BigDecimal.ZERO; + private BigDecimal mainUpAmountSum = BigDecimal.ZERO; /** * 云代注册金额小计 */ @BigDecimalFormat - private BigDecimal agentRegAmountSum=BigDecimal.ZERO; + private BigDecimal agentRegAmountSum = BigDecimal.ZERO; /** * 云代升级新增金额小计 */ @BigDecimalFormat - private BigDecimal agentUpAmountSum=BigDecimal.ZERO; + private BigDecimal agentUpAmountSum = BigDecimal.ZERO; /** * 首购总金额(¥)小计 注册金额+升级金额+礼包订单(1万礼包) */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 直推收益(¥)小计 */ @BigDecimalFormat - private BigDecimal introduceBonusSum=BigDecimal.ZERO; + private BigDecimal introduceBonusSum = BigDecimal.ZERO; /** * 拓展收益(¥)小计 */ @BigDecimalFormat - private BigDecimal orgBonusSum=BigDecimal.ZERO; + private BigDecimal orgBonusSum = BigDecimal.ZERO; /** * 辅导收益(¥)小计 */ @BigDecimalFormat - private BigDecimal leaderBonusSum=BigDecimal.ZERO; + private BigDecimal leaderBonusSum = BigDecimal.ZERO; /** * 分红收益(¥)小计 */ @BigDecimalFormat - private BigDecimal shareBonusSum=BigDecimal.ZERO; + private BigDecimal shareBonusSum = BigDecimal.ZERO; /** * 服务补贴(¥)小计 */ @BigDecimalFormat - private BigDecimal serviceBonusSum=BigDecimal.ZERO; + private BigDecimal serviceBonusSum = BigDecimal.ZERO; /** * 云代直推收益(¥)小计 */ @BigDecimalFormat - private BigDecimal agentIntroduceBonusSum=BigDecimal.ZERO; + private BigDecimal agentIntroduceBonusSum = BigDecimal.ZERO; /** * 首购奖金拨比小计(%) */ @BigDecimalFormat - private BigDecimal mainBonusRateSum=BigDecimal.ZERO; + private BigDecimal mainBonusRateSum = BigDecimal.ZERO; /** * 云代首购小计 = 云代注册+云代升级 */ @BigDecimalFormat - private BigDecimal agentFirstAmountSum=BigDecimal.ZERO; + private BigDecimal agentFirstAmountSum = BigDecimal.ZERO; /** * 云代复购小计 */ @BigDecimalFormat - private BigDecimal agentRepurAmountSum=BigDecimal.ZERO; + private BigDecimal agentRepurAmountSum = BigDecimal.ZERO; /** * 复购总金额小计 复购订单+海粉订单+海粉复购订单 */ @BigDecimalFormat - private BigDecimal repurchaseAllAmountSum=BigDecimal.ZERO; + private BigDecimal repurchaseAllAmountSum = BigDecimal.ZERO; /** * 复购级差收益(¥)小计 */ @BigDecimalFormat - private BigDecimal repurRangeBonusSum=BigDecimal.ZERO; + private BigDecimal repurRangeBonusSum = BigDecimal.ZERO; /** * 复购拓展收益(¥)小计 */ @BigDecimalFormat - private BigDecimal repurOrgBonusSum=BigDecimal.ZERO; + private BigDecimal repurOrgBonusSum = BigDecimal.ZERO; /** * 复购专区小计(¥) */ @BigDecimalFormat - private BigDecimal mainRepurAmountSum=BigDecimal.ZERO; + private BigDecimal mainRepurAmountSum = BigDecimal.ZERO; /** * 海粉专区小计(¥)(海粉注册) */ @BigDecimalFormat - private BigDecimal hifansRegAmountSum=BigDecimal.ZERO; + private BigDecimal hifansRegAmountSum = BigDecimal.ZERO; /** * 复购拨出金额小计 */ @BigDecimalFormat - private BigDecimal repurBonusSum=BigDecimal.ZERO; + private BigDecimal repurBonusSum = BigDecimal.ZERO; /** * 复购拨比小计(%) */ @BigDecimalFormat - private BigDecimal repurBonusRateSum=BigDecimal.ZERO; + private BigDecimal repurBonusRateSum = BigDecimal.ZERO; /** * 总拨出金额小计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例小计(%) */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** * 海粉直推收益(海粉推荐收益)(%) */ - private BigDecimal hiFunIncome=BigDecimal.ZERO; + private BigDecimal hiFunIncome = BigDecimal.ZERO; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkVertex; /** @@ -510,7 +507,6 @@ public class CuBonusStatisChartVO { private Long pkTeamCode; - /** * 国家 */ @@ -563,11 +559,11 @@ public class CuBonusStatisChartVO { private Integer delFlag; private Long pkMember; private Integer orderType; - private BigDecimal orderAchieve=BigDecimal.ONE; + private BigDecimal orderAchieve = BigDecimal.ONE; /** * 分红比例% */ - private BigDecimal dividendRatio=BigDecimal.ZERO; + private BigDecimal dividendRatio = BigDecimal.ZERO; /** * 重复消费% */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java index eb0bbf83..77bb20f0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisColumnarVO.java @@ -1,22 +1,15 @@ package com.hzs.member.statis.vo; -import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; import lombok.Data; import java.math.BigDecimal; -import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计 柱状图 * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisColumnarVO { @@ -74,7 +67,7 @@ public class CuBonusStatisColumnarVO { private BigDecimal lastHifansRegAmount; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkBdVertex; /** @@ -106,5 +99,4 @@ public class CuBonusStatisColumnarVO { private String endDate; - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java index 74802aa6..1dd578df 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisRoundVO.java @@ -9,14 +9,9 @@ import java.util.Date; import java.util.List; /** - *

* 奖金拨比统计 圆型图 * 每个团队,每天一条数据 * 数据来自 订单表和 CU_MEMBER_BONUS 会员奖金-会员奖金汇总表 - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusStatisRoundVO { @@ -138,7 +133,7 @@ public class CuBonusStatisRoundVO { private BigDecimal totalBonusRate; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkBdVertex; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java index 045d5ec4..c3f1a0a2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusStatisVO.java @@ -75,36 +75,12 @@ public class CuBonusStatisVO { @Excel(name = "升级专区(¥)", scale = 2) private BigDecimal mainUpAmount = BigDecimal.ZERO; - /** - * 特殊注册 - */ - @BigDecimalFormat - private BigDecimal specialRegisterAmount = BigDecimal.ZERO; - /** - * 特殊升级 - */ - @BigDecimalFormat - private BigDecimal specialUpgradeAmount = BigDecimal.ZERO; /** * 虚拟订单金额(¥) */ @BigDecimalFormat private BigDecimal fictitiousAmount = BigDecimal.ZERO; - /** - * 云代理注册金额 - */ - @Excel(name = "云代注册(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentRegAmount = BigDecimal.ZERO; - - /** - * 云代理升级新增金额 - */ - @Excel(name = "云代升级(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentUpAmount = BigDecimal.ZERO; - /** * 首购总金额(¥) 注册金额+升级金额+礼包订单(1万礼包) */ @@ -142,24 +118,6 @@ public class CuBonusStatisVO { @Excel(name = "服务补贴(¥)", scale = 2) @BigDecimalFormat private BigDecimal serviceBonus = BigDecimal.ZERO; - /** - * 云代理直推收益(¥) - */ - @Excel(name = "云代直推(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentIntroduceBonus = BigDecimal.ZERO; - /** - * 云代理首购 = 云代注册+云代升级 - */ - @Excel(name = "云代首购(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentFirstAmount = BigDecimal.ZERO; - /** - * 云代理复购新增 - */ - @Excel(name = "云代复购(¥)", scale = 2) - @BigDecimalFormat - private BigDecimal agentRepurAmount = BigDecimal.ZERO; /** * 复购新增金额(¥)(复购专区) */ @@ -185,21 +143,14 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal cooperateAmount = BigDecimal.ZERO; - /** - * 特殊复购 - */ - @BigDecimalFormat - private BigDecimal specialRepurchaseAmount = BigDecimal.ZERO; - /** * 福利订单 */ @BigDecimalFormat private BigDecimal welfareOrder = BigDecimal.ZERO; - /** - * 复购总金额 复购订单+海粉订单+海粉复购订单 + * 复购总金额 复购订单 */ @Excel(name = "复购金额(¥)", scale = 2) @BigDecimalFormat @@ -232,23 +183,23 @@ public class CuBonusStatisVO { /** - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @Excel(name = "复购拨出金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurBonus = BigDecimal.ZERO; /** - * (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @Excel(name = "复购拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal repurBonusRate = BigDecimal.ZERO; /** - * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 + * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8 */ @Excel(name = "总拨出金额(¥)", scale = 2) @BigDecimalFormat @@ -257,18 +208,12 @@ public class CuBonusStatisVO { /** * 综合(拨出)实发拨比(%)=(直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴))*80% * =首购拨出之和+ - * (复购直推收益+复购级差收益+复购拓展收益)*80%=X+海粉直推=实际大盘拨出金额/(总金额)(注册+升级+复购+海粉+礼包)订单 + * (复购直推收益+复购级差收益+复购拓展收益)*80%=实际大盘拨出金额/(总金额)(注册+升级+复购)订单 */ @Excel(name = "总拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal totalBonusRate = BigDecimal.ZERO; - /** - * 三方订单业绩(¥)(礼包订单) - */ - @BigDecimalFormat - private BigDecimal thirdOrder = BigDecimal.ZERO; - /** * 首购实发小计 */ @@ -281,22 +226,6 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal repurRealSubtotal = BigDecimal.ZERO; - /** - * 云代实发小计 - */ - @BigDecimalFormat - private BigDecimal cloudRealSubtotal = BigDecimal.ZERO; - - /** - * 云代首购收益 - */ - @BigDecimalFormat - private BigDecimal cloudAgentFirstPurchase = BigDecimal.ZERO; - /** - * 云代复购收益 - */ - @BigDecimalFormat - private BigDecimal cloudAgentRepurchase = BigDecimal.ZERO; /** * 复购券收益小计 */ @@ -320,18 +249,6 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal mainUpAmountSum = BigDecimal.ZERO; - /** - * 云代理注册金额小计 - */ - @BigDecimalFormat - private BigDecimal agentRegAmountSum = BigDecimal.ZERO; - - /** - * 云代理升级新增金额小计 - */ - @BigDecimalFormat - private BigDecimal agentUpAmountSum = BigDecimal.ZERO; - /** * 首购总金额(¥)小计 注册金额+升级金额+礼包订单(1万礼包) */ @@ -363,21 +280,6 @@ public class CuBonusStatisVO { */ @BigDecimalFormat private BigDecimal serviceBonusSum = BigDecimal.ZERO; - /** - * 云代理直推收益(¥)小计 - */ - @BigDecimalFormat - private BigDecimal agentIntroduceBonusSum = BigDecimal.ZERO; - /** - * 云代理首购小计 = 云代注册+云代升级 - */ - @BigDecimalFormat - private BigDecimal agentFirstAmountSum = BigDecimal.ZERO; - /** - * 云代理复购新增小计 - */ - @BigDecimalFormat - private BigDecimal agentRepurAmountSum = BigDecimal.ZERO; /** * 复购新增金额小计(¥)(复购专区) */ @@ -389,7 +291,7 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal hifansRegAmountSum = BigDecimal.ZERO; /** - * 复购总金额小计 复购订单+海粉订单+海粉复购订单 + * 复购总金额小计 复购订单 */ @BigDecimalFormat private BigDecimal repurchaseAllAmountSum = BigDecimal.ZERO; @@ -424,27 +326,27 @@ public class CuBonusStatisVO { /** * 小计 - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @BigDecimalFormat private BigDecimal repurBonusSum = BigDecimal.ZERO; /** - * 小计 (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * 小计 (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @BigDecimalFormat private BigDecimal repurBonusRateSum = BigDecimal.ZERO; /** - * 小计 (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购PV拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * 小计 (复购级差+复购拓展 ) *0.8 + * 复购PV拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @BigDecimalFormat private BigDecimal repurBonusPvRateSum = BigDecimal.ZERO; /** * 小计 - * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8+海粉直推 + * (直推收益+拓展收益+辅导收益+分红收益+报单服务费(服务补贴)+复购直推收益+复购级差收益+复购拓展收益)*0.8 */ @BigDecimalFormat private BigDecimal totalBonusSum = BigDecimal.ZERO; @@ -457,7 +359,7 @@ public class CuBonusStatisVO { /** * 小计 - * 总拨出金额(¥)/(复购订单+海粉订单+海粉复购订单+注册+升级+1万礼包(礼包订单)=总金额) + * 总拨出金额(¥)/(复购订单+注册+升级+1万礼包(礼包订单)=总金额) */ @BigDecimalFormat private BigDecimal totalBonusRateSum = BigDecimal.ZERO; @@ -492,48 +394,12 @@ public class CuBonusStatisVO { @BigDecimalFormat private BigDecimal serviceBonusRate = BigDecimal.ZERO; - /** - * 三方订单金额(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderMoney = BigDecimal.ZERO; - /** - * 三方拨出金额(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderBonus = BigDecimal.ZERO; - /** - * 三方利润(直供平台) - */ - @BigDecimalFormat - private BigDecimal thirdOrderProfit = BigDecimal.ZERO; - - /** - * 海粉直推收益(海粉推荐收益)(%) - */ - @BigDecimalFormat - private BigDecimal hiFunIncome = BigDecimal.ZERO; - - /** * 消费拓展收益拨比(%) */ @BigDecimalFormat private BigDecimal repurOrgBonusRate = BigDecimal.ZERO; - - /** - * 云代理直推收益拨比 - */ - @BigDecimalFormat - private BigDecimal agentIntroduceBonusRate = BigDecimal.ZERO; - - /** - * 礼包金额(¥)(礼包订单) - */ - @BigDecimalFormat - private BigDecimal giftOrder = BigDecimal.ZERO; - /** * 实际综合实发金额(¥) */ @@ -558,14 +424,6 @@ public class CuBonusStatisVO { * 升级新增PV MAIN_UP_PV */ private BigDecimal mainUpPv; - /** - * 特殊注册PV SPECIAL_REGISTER_PV - */ - private BigDecimal specialRegisterPv; - /** - * 特殊升级PV SPECIAL_UPGRADE_PV - */ - private BigDecimal specialUpgradePv; /** * 虚拟订单PV FICTITIOUS_PV */ @@ -577,19 +435,6 @@ public class CuBonusStatisVO { */ private BigDecimal mainRepurPv; - /** - * 特殊复购PV SPECIAL_REPURCHASE_PV - */ - private BigDecimal specialRepurchasePv; - - /** - * 嗨粉注册PV HIFANS_REG_PV - */ - private BigDecimal hifansRegPv; - /** - * 海粉升级PV HAI_FUN_UPGRADE_PV - */ - private BigDecimal haiFunUpgradePv; /** * 直播订单PV MALL_PV */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java index 8ec5b0a3..c23fc5fa 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisPvVO.java @@ -13,11 +13,7 @@ import java.util.Date; import java.util.List; /** - * @description: 奖金拨比统计(PV) - * @author: zhang jing - * @date: 2025/3/12 15:05 - * @param: - * @return: + * 奖金拨比统计(PV) **/ @Builder @AllArgsConstructor @@ -47,7 +43,7 @@ public class CuBonusVertexStatisPvVO { /** * 创建时间 */ - @Excel(name = "业绩时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "业绩时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; @@ -55,62 +51,62 @@ public class CuBonusVertexStatisPvVO { * 注册新增业绩(¥) */ @BigDecimalFormat - @Excel(name = "注册专区(¥)",scale = 2) - private BigDecimal mainRegPv=BigDecimal.ZERO; + @Excel(name = "注册专区(¥)", scale = 2) + private BigDecimal mainRegPv = BigDecimal.ZERO; /** * 升级新增业绩(¥) */ @BigDecimalFormat - @Excel(name = "升级专区(¥)",scale = 2) - private BigDecimal mainUpPv=BigDecimal.ZERO; + @Excel(name = "升级专区(¥)", scale = 2) + private BigDecimal mainUpPv = BigDecimal.ZERO; /** * 首购总业绩(¥) 注册业绩+升级业绩 */ - @Excel(name = "首购业绩(¥)",scale = 2) + @Excel(name = "首购业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal firstPurchaseAll=BigDecimal.ZERO; + private BigDecimal firstPurchaseAll = BigDecimal.ZERO; /** * 复购总业绩 */ - @Excel(name = "复购业绩(¥)",scale = 2) + @Excel(name = "复购业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal mainRepurPv=BigDecimal.ZERO; + private BigDecimal mainRepurPv = BigDecimal.ZERO; /** * 重消业绩 */ - @Excel(name = "重消业绩(¥)",scale = 2) + @Excel(name = "重消业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal retailConsumePv=BigDecimal.ZERO; + private BigDecimal retailConsumePv = BigDecimal.ZERO; /** * 合计业绩 */ - @Excel(name = "合计业绩(¥)",scale = 2) + @Excel(name = "合计业绩(¥)", scale = 2) @BigDecimalFormat - private BigDecimal totalAchieve=BigDecimal.ZERO; + private BigDecimal totalAchieve = BigDecimal.ZERO; /** * 新零售极差收益 */ @BigDecimalFormat - @Excel(name = "极差收益(¥)",scale = 2) + @Excel(name = "极差收益(¥)", scale = 2) private BigDecimal retailRangeIncome; /** * 极差收益拨比 */ @BigDecimalFormat - @Excel(name = "极差收益拨比(%)",scale = 2) + @Excel(name = "极差收益拨比(%)", scale = 2) private BigDecimal retailRangeIncomeRate; /** * 新零售平级收益 */ @BigDecimalFormat - @Excel(name = "平级收益V1-V4(¥)",scale = 2) - private BigDecimal retailSameLevelIncomeV1V4=BigDecimal.ZERO; + @Excel(name = "平级收益V1-V4(¥)", scale = 2) + private BigDecimal retailSameLevelIncomeV1V4 = BigDecimal.ZERO; @BigDecimalFormat - @Excel(name = "平级收益V1-V4拨比(%)",scale = 2) + @Excel(name = "平级收益V1-V4拨比(%)", scale = 2) private BigDecimal retailSameLevelIncomeV1V4Rate; @@ -118,241 +114,240 @@ public class CuBonusVertexStatisPvVO { * 平级收益V5 */ @BigDecimalFormat - @Excel(name = "平级收益V5(¥)",scale = 2) - private BigDecimal retailSameLevelIncomeV5=BigDecimal.ZERO; + @Excel(name = "平级收益V5(¥)", scale = 2) + private BigDecimal retailSameLevelIncomeV5 = BigDecimal.ZERO; /** * 平级收益V5 */ @BigDecimalFormat - @Excel(name = "平级收益V5拨比(%)",scale = 2) + @Excel(name = "平级收益V5拨比(%)", scale = 2) private BigDecimal retailSameLevelIncomeV5Rate; /** * 新零售区域收益 */ @BigDecimalFormat - @Excel(name = "区域收益(¥)",scale = 2) + @Excel(name = "区域收益(¥)", scale = 2) private BigDecimal retailAreaIncome; /** * 区域收益拨比 */ @BigDecimalFormat - @Excel(name = "区域收益拨比(%)",scale = 2) + @Excel(name = "区域收益拨比(%)", scale = 2) private BigDecimal retailAreaIncomeRate; /** * 新零售福利极差收益 */ @BigDecimalFormat - @Excel(name = "福利极差收益(¥)",scale = 2) + @Excel(name = "福利极差收益(¥)", scale = 2) private BigDecimal retailBenefitRangeIncome; /** * 福利极差收益拨比 */ @BigDecimalFormat - @Excel(name = "福利极差收益拨比(%)",scale = 2) + @Excel(name = "福利极差收益拨比(%)", scale = 2) private BigDecimal retailBenefitRangeIncomeRate; /** * 新零售福利平均收益 */ @BigDecimalFormat - @Excel(name = "福利平均收益(¥)",scale = 2) + @Excel(name = "福利平均收益(¥)", scale = 2) private BigDecimal retailBenefitAvgIncome; /** * 福利平均收益拨比 */ @BigDecimalFormat - @Excel(name = "福利平均收益拨比(%)",scale = 2) + @Excel(name = "福利平均收益拨比(%)", scale = 2) private BigDecimal retailBenefitAvgIncomeRate; /** * 新零售福利加权收益 */ @BigDecimalFormat - @Excel(name = "福利加权收益(¥)",scale = 2) + @Excel(name = "福利加权收益(¥)", scale = 2) private BigDecimal retailBenefitIncome; /** * 福利加权收益拨比 */ @BigDecimalFormat - @Excel(name = "福利加权收益拨比(%)",scale = 2) + @Excel(name = "福利加权收益拨比(%)", scale = 2) private BigDecimal retailBenefitIncomeRate; /** * 商城重消 */ @BigDecimalFormat - @Excel(name = "商城重消(¥)",scale = 2) - private BigDecimal backPoints=BigDecimal.ZERO; + @Excel(name = "商城重消(¥)", scale = 2) + private BigDecimal backPoints = BigDecimal.ZERO; /** * 商城重消拨比 */ @BigDecimalFormat - @Excel(name = "商城重消拨比(%)",scale = 2) - private BigDecimal backPointsRate=BigDecimal.ZERO; + @Excel(name = "商城重消拨比(%)", scale = 2) + private BigDecimal backPointsRate = BigDecimal.ZERO; /** * 总拨出金额 */ @BigDecimalFormat - private BigDecimal realIncomeTotal=BigDecimal.ZERO; + private BigDecimal realIncomeTotal = BigDecimal.ZERO; /** * 总拨出金额 */ - @Excel(name = "总拨出金额(¥)",scale = 2) + @Excel(name = "总拨出金额(¥)", scale = 2) @BigDecimalFormat - private BigDecimal totalBonus=BigDecimal.ZERO; + private BigDecimal totalBonus = BigDecimal.ZERO; /** * 综合(拨出)实发拨比(%) */ - @Excel(name = "总拨出比例(%)",scale = 2) + @Excel(name = "总拨出比例(%)", scale = 2) @BigDecimalFormat - private BigDecimal totalBonusRate=BigDecimal.ZERO; - + private BigDecimal totalBonusRate = BigDecimal.ZERO; /** * 注册新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegPvSum=BigDecimal.ZERO; + private BigDecimal mainRegPvSum = BigDecimal.ZERO; /** * 升级新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpPvSum=BigDecimal.ZERO; + private BigDecimal mainUpPvSum = BigDecimal.ZERO; /** * 首购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 全部业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAchieveSum=BigDecimal.ZERO; + private BigDecimal totalAchieveSum = BigDecimal.ZERO; /** * 复购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurPvSum=BigDecimal.ZERO; + private BigDecimal mainRepurPvSum = BigDecimal.ZERO; /** * 重消新增业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumePvSum=BigDecimal.ZERO; + private BigDecimal retailConsumePvSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 平级收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeSum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 总拨出业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** - *体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 */ private Integer pkVertex; /** @@ -389,12 +384,12 @@ public class CuBonusVertexStatisPvVO { /** * 汇率 *100 */ - private BigDecimal perCent=BigDecimal.ZERO; + private BigDecimal perCent = BigDecimal.ZERO; /** * 汇率 */ - private BigDecimal rate=BigDecimal.ZERO; + private BigDecimal rate = BigDecimal.ZERO; private Date payTime; @@ -406,32 +401,32 @@ public class CuBonusVertexStatisPvVO { private Long pkMember; private Integer orderType; /** - *奖金类型 + * 奖金类型 */ private Integer bonusType; /** * 订单PV */ - private BigDecimal orderAchieve=BigDecimal.ZERO; + private BigDecimal orderAchieve = BigDecimal.ZERO; /** * 订单金额 */ - private BigDecimal orderAmount=BigDecimal.ZERO; + private BigDecimal orderAmount = BigDecimal.ZERO; private List orderAchieveList; /** - *奖金 + * 奖金 */ @BigDecimalFormat - private BigDecimal realIncome=BigDecimal.ZERO; + private BigDecimal realIncome = BigDecimal.ZERO; /** * 重复消费% */ @BigDecimalFormat - private BigDecimal backRatio=BigDecimal.ZERO; + private BigDecimal backRatio = BigDecimal.ZERO; /** - *按照体系(中国)和国家分组合并订单 + * 按照体系(中国)和国家分组合并订单 */ List mergeList; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java index be2ed833..e8842942 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumPvVO.java @@ -6,13 +6,7 @@ import lombok.Data; import java.math.BigDecimal; /** - *

* 奖金拨比统计汇总PV - * - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusVertexStatisSumPvVO { @@ -34,132 +28,130 @@ public class CuBonusVertexStatisSumPvVO { * 注册专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegPvSum=BigDecimal.ZERO; + private BigDecimal mainRegPvSum = BigDecimal.ZERO; /** * 升级专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpPvSum=BigDecimal.ZERO; + private BigDecimal mainUpPvSum = BigDecimal.ZERO; /** * 首购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 复购业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurPvSum=BigDecimal.ZERO; + private BigDecimal mainRepurPvSum = BigDecimal.ZERO; /** * 重消业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumePvSum=BigDecimal.ZERO; + private BigDecimal retailConsumePvSum = BigDecimal.ZERO; /** * 全部业绩(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAchieveSum=BigDecimal.ZERO; + private BigDecimal totalAchieveSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 总拨出金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; - - + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java index d0be0d51..3aa34928 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisSumVO.java @@ -6,13 +6,7 @@ import lombok.Data; import java.math.BigDecimal; /** - *

* 奖金拨比统计汇总 - * - *

- * - * @author zhangjing - * @since 2023-05-31 */ @Data public class CuBonusVertexStatisSumVO { @@ -34,132 +28,130 @@ public class CuBonusVertexStatisSumVO { * 注册专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRegAmountSum=BigDecimal.ZERO; + private BigDecimal mainRegAmountSum = BigDecimal.ZERO; /** * 升级专区(¥)合计 */ @BigDecimalFormat - private BigDecimal mainUpAmountSum=BigDecimal.ZERO; + private BigDecimal mainUpAmountSum = BigDecimal.ZERO; /** * 首购(¥)合计 */ @BigDecimalFormat - private BigDecimal firstPurchaseAllSum=BigDecimal.ZERO; + private BigDecimal firstPurchaseAllSum = BigDecimal.ZERO; /** * 复购金额(¥)合计 */ @BigDecimalFormat - private BigDecimal mainRepurAmountSum=BigDecimal.ZERO; + private BigDecimal mainRepurAmountSum = BigDecimal.ZERO; /** * 重消金额(¥)合计 */ @BigDecimalFormat - private BigDecimal retailConsumeAmountSum=BigDecimal.ZERO; + private BigDecimal retailConsumeAmountSum = BigDecimal.ZERO; /** * 全部金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalAmountSum=BigDecimal.ZERO; + private BigDecimal totalAmountSum = BigDecimal.ZERO; /** * 极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; /** * 极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; /** * 平级收益V1-V4合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV1V4Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV1V4Sum = BigDecimal.ZERO; /** * 平级收益V1-V4拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV1V4RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV1V4RateSum = BigDecimal.ZERO; /** * 平级收益V5合计 */ @BigDecimalFormat - private BigDecimal retailSameLevelIncomeV5Sum=BigDecimal.ZERO; + private BigDecimal retailSameLevelIncomeV5Sum = BigDecimal.ZERO; /** * 平级收益V5拨比(%)合计 */ @BigDecimalFormat - private BigDecimal sameLevelIncomeV5RateSum=BigDecimal.ZERO; + private BigDecimal sameLevelIncomeV5RateSum = BigDecimal.ZERO; /** * 区域收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeSum = BigDecimal.ZERO; /** * 区域收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailAreaIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailAreaIncomeRateSum = BigDecimal.ZERO; /** * 福利平均收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeSum = BigDecimal.ZERO; /** * 福利平均收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitAvgIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitAvgIncomeRateSum = BigDecimal.ZERO; /** * 福利加权收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeSum = BigDecimal.ZERO; /** * 福利加权收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitIncomeRateSum=BigDecimal.ZERO; + private BigDecimal retailBenefitIncomeRateSum = BigDecimal.ZERO; /** * 福利极差收益(¥)合计 */ @BigDecimalFormat - private BigDecimal retailBenefitRangeIncomeSum=BigDecimal.ZERO; + private BigDecimal retailBenefitRangeIncomeSum = BigDecimal.ZERO; /** * 福利极差收益拨比(%)合计 */ @BigDecimalFormat - private BigDecimal benefitRangeIncomeRateSum=BigDecimal.ZERO; + private BigDecimal benefitRangeIncomeRateSum = BigDecimal.ZERO; /** * 商城重消(¥)合计 */ @BigDecimalFormat - private BigDecimal backPointsSum=BigDecimal.ZERO; + private BigDecimal backPointsSum = BigDecimal.ZERO; /** * 商城重消拨比(%)合计 */ @BigDecimalFormat - private BigDecimal backPointsRateSum=BigDecimal.ZERO; + private BigDecimal backPointsRateSum = BigDecimal.ZERO; /** * 总拨出金额(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusSum=BigDecimal.ZERO; + private BigDecimal totalBonusSum = BigDecimal.ZERO; /** * 总拨出比例(¥)合计 */ @BigDecimalFormat - private BigDecimal totalBonusRateSum=BigDecimal.ZERO; - - + private BigDecimal totalBonusRateSum = BigDecimal.ZERO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java index 2303bb67..fdf52448 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisTotalVO.java @@ -111,23 +111,23 @@ public class CuBonusVertexStatisTotalVO { private BigDecimal serviceBonusRate = BigDecimal.ZERO; /** - * 复购总金额 复购订单+海粉订单+海粉复购订单 + * 复购总金额 复购订单 */ @Excel(name = "复购金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurchaseAllAmount = BigDecimal.ZERO; /** - * (复购直推收益+复购级差收益+复购拓展收益)*80% +海粉直推 - * (复购级差+复购拓展 ) *0.8 +海粉直推 + * (复购直推收益+复购级差收益+复购拓展收益)*80% + * (复购级差+复购拓展 ) *0.8 */ @Excel(name = "复购拨出金额(¥)", scale = 2) @BigDecimalFormat private BigDecimal repurBonus = BigDecimal.ZERO; /** - * (复购级差+复购拓展 ) *0.8 +海粉直推 - * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%)+海粉直推)/复购总奖金(复购订单+海粉订单) + * (复购级差+复购拓展 ) *0.8 + * 复购拨出比例(%) = (((复购直推收益+复购级差收益+复购拓展收益)*80%))/复购总奖金(复购订单) */ @Excel(name = "复购拨出比例(%)", scale = 2) @BigDecimalFormat @@ -139,39 +139,12 @@ public class CuBonusVertexStatisTotalVO { @Excel(name = "复购PV拨出比例(%)", scale = 2) @BigDecimalFormat private BigDecimal repurBonusPvRate = BigDecimal.ZERO; - /** - * 拓展平均碰次 - */ - @Excel(name = "拓展平均碰次", scale = 2) - @BigDecimalFormat - private BigDecimal orgAvTouch = BigDecimal.ZERO; - ; /** - * 拓展最高碰次 - */ - @Excel(name = "拓展最高碰次") - private Integer orgMaxTouch = 0; - - /** - * 拓展封顶人数 - */ - @Excel(name = "拓展封顶人数") - private Integer orgTopNumber = 0; - - @BigDecimalFormat - private BigDecimal makerDirectSum = BigDecimal.ZERO; - - @BigDecimalFormat - private BigDecimal makerShareSum = BigDecimal.ZERO; - - - /** - * 体系ID 统计体系,1原体系,2六合体系,3六合二,101非洲体系 + * 体系ID 统计体系 */ private Integer pkVertex; - /** * 注册新增PV MAIN_REG_PV */ @@ -180,14 +153,6 @@ public class CuBonusVertexStatisTotalVO { * 升级新增PV MAIN_UP_PV */ private BigDecimal mainUpPv; - /** - * 特殊注册PV SPECIAL_REGISTER_PV - */ - private BigDecimal specialRegisterPv; - /** - * 特殊升级PV SPECIAL_UPGRADE_PV - */ - private BigDecimal specialUpgradePv; /** * 虚拟订单PV FICTITIOUS_PV */ @@ -197,25 +162,11 @@ public class CuBonusVertexStatisTotalVO { */ private BigDecimal orderAmount = BigDecimal.ZERO; - /** * 复购新增PV MAIN_REPUR_PV */ private BigDecimal mainRepurPv; - /** - * 特殊复购PV SPECIAL_REPURCHASE_PV - */ - private BigDecimal specialRepurchasePv; - - /** - * 嗨粉注册PV HIFANS_REG_PV - */ - private BigDecimal hifansRegPv; - /** - * 海粉升级PV HAI_FUN_UPGRADE_PV - */ - private BigDecimal haiFunUpgradePv; /** * 直播订单PV MALL_PV */ @@ -307,8 +258,6 @@ public class CuBonusVertexStatisTotalVO { */ List mergeList; - List orderTypeList; - /** * 本月会员网体表 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java index 7d5e8bbf..5fc09669 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/vo/CuBonusVertexStatisVO.java @@ -89,16 +89,16 @@ public class CuBonusVertexStatisVO { @BigDecimalFormat private BigDecimal totalAmount = BigDecimal.ZERO; /** - * 新零售极差收益 + * 新零售直推极差收益 */ @BigDecimalFormat - @Excel(name = "极差收益(¥)", scale = 2) + @Excel(name = "直推极差收益(¥)", scale = 2) private BigDecimal retailRangeIncome; /** - * 极差收益拨比 + * 直推极差收益拨比 */ @BigDecimalFormat - @Excel(name = "极差收益拨比(%)", scale = 2) + @Excel(name = "直推极差收益拨比(%)", scale = 2) private BigDecimal retailRangeIncomeRate; /** @@ -247,7 +247,7 @@ public class CuBonusVertexStatisVO { /** - * 极差收益(¥)合计 + * 直推极差收益(¥)合计 */ @BigDecimalFormat private BigDecimal retailRangeIncomeSum = BigDecimal.ZERO; @@ -306,7 +306,7 @@ public class CuBonusVertexStatisVO { private BigDecimal totalBonusRateSum = BigDecimal.ZERO; /** - * 极差收益拨比(%)合计 + * 直推极差收益拨比(%)合计 */ @BigDecimalFormat private BigDecimal retailRangeIncomeRateSum = BigDecimal.ZERO; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java index c4d9b03e..011c58ac 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java @@ -54,11 +54,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 批量修改已到期的会员收益区域 - **/ - void batchUpdateRetailRegion(); - /** * 重新判断收益区域数据 * @@ -78,28 +73,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper waresCodeList); - /** - * 获取重复数据 - * - * @param systemType 系统类型 - * @return - */ - List listRepeatData(@Param("systemType") Integer systemType); - - /** - * 更新非最新区域其它数据 - * - * @param province 省 - * @param city 市 - * @param county 区 - * @param systemType 系统类型 - * @return - */ - int updateRepeatDate(@Param("province") Integer province, - @Param("city") Integer city, - @Param("county") Integer county, - @Param("systemType") Integer systemType); - int validateBindCountA(@Param("mrrExt") CuMemberRetailRegionExt mrrExt, @Param("yesOrNoValue") Integer yesOrNoValue, @Param("systemType") Integer systemType, @Param("pkId") Long pkId); int validateBindCountB(@Param("mrrExt") RetailMemberRegionParam mrrExt, @Param("yesOrNoValue") Integer yesOrNoValue, @Param("systemType") Integer systemType, @Param("pkId") Long pkId); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java index a0fcf6e3..20c49716 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java @@ -6,7 +6,6 @@ import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.vo.UnboundAreaVO; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -51,11 +50,6 @@ public interface ICuMemberRetailRegionService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 批量修改已到期的会员收益区域 - **/ - void batchUpdateRetailRegion(); - /** * 定时处理收益区域 */ @@ -78,15 +72,9 @@ public interface ICuMemberRetailRegionService extends IService waresCodeList); - /** - * 处理重复区域 - * - * @return - */ - void handleRepeatRegion(); - int validateBindCount(CuMemberRetailRegionExt mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId); + int validateBindCount(RetailMemberRegionParam mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId); Long getRegionVertexPkIdByPkMember(Long pkMember); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java index 7d633c6b..4bc71e30 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java @@ -99,11 +99,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl retailRegionList = baseMapper.listRepeatData(eSystemType.getValue()); - if (CollectionUtil.isNotEmpty(retailRegionList)) { - retailRegionList.parallelStream().forEach(retailRegion -> { - baseMapper.updateRepeatDate(retailRegion.getProvince(), retailRegion.getCity(), retailRegion.getCounty(), eSystemType.getValue()); - }); - } - } - } - @Override public int validateBindCount(CuMemberRetailRegionExt mrrExt, Integer yesOrNoValue, Integer systemType, Long pkId) { return baseMapper.validateBindCountA(mrrExt, yesOrNoValue, systemType, pkId); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index dfb5f75e..bf57e173 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2315,23 +2315,19 @@ - - + SELECT + m.pk_id as pk_vertex, + m.MEMBER_CODE as member_code, + m.MEMBER_NAME as member_name + FROM cu_member m + WHERE + m.pk_parent = 2 + AND m.del_flag = 0 + AND m.category = 0 + AND m.pk_country = 1 + ORDER BY m.pk_id ASC diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml deleted file mode 100644 index 868d8205..00000000 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusLenjoyStatisMapper.xml +++ /dev/null @@ -1,401 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CREATION_TIME - , - PK_COUNTRY, - DEL_FLAG, - PK_ID, STATIS_TYPE, PERIOD, START_DATE, END_DATE, MAIN_REG_AMOUNT, MAIN_UP_AMOUNT, MAIN_REPUR_AMOUNT, HIFANS_REG_AMOUNT, INTRODUCE_BONUS, ORG_BONUS, LEADER_BONUS, SHARE_BONUS, SERVICE_BONUS, HI_FUN_INCOME, REPUR_RANGE_BONUS, REPUR_ORG_BONUS, MAIN_BONUS, REPUR_BONUS, PK_BD_VERTEX, PK_TEAM_CODE, HAI_FUN_INCOME, GIFT_ORDER, SPECIAL_REGISTER_AMOUNT, SPECIAL_UPGRADE_AMOUNT, CLOUD_COLLEGE_AMOUNT, MALL_AMOUNT, MAKER_GIFT_AMOUNT, EMPOWERMENT_GIFT_AMOUNT, COOPERATE_AMOUNT, SPECIAL_REPURCHASE_AMOUNT, HAI_FUN_UPGRADE_AMOUNT, REPUR_PUSH_INCOME, MAKER_DIRECT, MAKER_SHARE, THIRD_ORDER, FICTITIOUS_AMOUNT, MAKER_ORDER, WELFARE_ORDER, MAIN_REG_PV, MAIN_UP_PV, MAIN_REPUR_PV, SPECIAL_REGISTER_PV, SPECIAL_UPGRADE_PV, SPECIAL_REPURCHASE_PV, FICTITIOUS_PV, HIFANS_REG_PV, HAI_FUN_UPGRADE_PV, CLOUD_COLLEGE_PV, MALL_PV, EMPOWERMENT_GIFT_PV, COOPERATE_PV, MAKER_ORDER_PV, MAKER_GIFT_PV, WELFARE_ORDER_PV - - - - - - - - - - - - - - delete from CU_BONUS_VERTEX_STATIS - where 1=1 - - and PK_BD_VERTEX in - - #{item} - - - - and CREATION_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') - - - and CREATION_TIME <= to_date(#{endDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml index 5c10640b..0831f979 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusStatisMapper.xml @@ -239,241 +239,6 @@ - - - - - - + - + + delete from CU_BONUS_STATIS where 1=1 @@ -1019,28 +783,26 @@ - + - + - - - - - - - + - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml index 15078ada..b50779fd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/CuBonusVertexStatisMapper.xml @@ -176,76 +176,6 @@ ORDER BY cbs.CREATION_TIME asc - - - - - - - select cbs.PK_BD_VERTEX pkVertex - from CU_BONUS_VERTEX_STATIS cbs where 1=1 + select cbs.pk_bd_vertex pkVertex + from cu_bonus_vertex_statis cbs where 1=1 and cbs.PK_COUNTRY=#{pkCountry} @@ -686,12 +616,12 @@ pk_member FROM ${settleTableName} - WHERE category=0 + WHERE category = 0 start with PK_PARENT = #{pkVertex} connect by PK_PARENT = prior pk_member ) cm INNER JOIN SA_ORDER so on so.pk_member=cm.pk_member - where so.ORDER_TYPE in (41,42,43,44) + where so.ORDER_TYPE in (41, 42, 43, 44) and so.pk_country=#{pkCountry} @@ -701,7 +631,6 @@ AND so.order_status=#{orderStatus} - and so.PAY_TIME >= to_date(#{startDate}, 'yyyy-mm-dd') @@ -740,151 +669,15 @@ where pk_id!=1 and del_flag = 0 and EFFECTIVE_DATE <= sysdate - - - - + @@ -92,7 +97,7 @@ and cmrr.effective = 0 and cmrr.system_type = #{retailRegion.systemType} AND cm.pk_id = #{retailRegion.pkMember} - ) + ) @@ -203,16 +208,6 @@ order by CRR.CREATION_TIME desc - - - UPDATE CU_MEMBER_RETAIL_REGION - SET EFFECTIVE=1, - MODIFIED_TIME=sysdate - WHERE EFFECTIVE = 0 - AND DEL_FLAG = 0 - AND EFFECTIVE_END_DATE < = sysdate - - - - - + + - - - update cu_member_retail_region cmrr - set cmrr.effective = 1, - cmrr.modified_time = sysdate - where cmrr.del_flag = 0 - and cmrr.effective = 0 - and cmrr.province = #{province} - and cmrr.city = #{city} - and cmrr.county = #{county} - and cmrr.system_type = #{systemType} - and cmrr.pk_id not in (select pk_id - from (select cmrr.pk_id - from cu_member_retail_region cmrr - where cmrr.del_flag = 0 - and cmrr.effective = 0 - and cmrr.province = #{province} - and cmrr.city = #{city} - and cmrr.county = #{county} - and cmrr.system_type = #{systemType} - order by cmrr.creation_time) - where rownum = 1) - diff --git a/bd-third/src/main/java/com/hzs/third/job/MemberJob.java b/bd-third/src/main/java/com/hzs/third/job/MemberJob.java index ec526c21..ebc073d9 100644 --- a/bd-third/src/main/java/com/hzs/third/job/MemberJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/MemberJob.java @@ -4,7 +4,6 @@ import com.hzs.activity.pick.IAcRetailPickLogServiceApi; import com.hzs.bonus.detail.ICuRegionAssessApi; import com.hzs.common.core.domain.R; import com.hzs.common.core.utils.DateUtils; -import com.hzs.member.base.ICuMemberRetailRegionServiceApi; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.statis.ICuBonusStatisServiceApi; import com.hzs.member.statis.ICuBonusVertexStatisServiceApi; @@ -33,8 +32,6 @@ public class MemberJob { @DubboReference ICuBonusVertexStatisServiceApi iCuBonusVertexStatisServiceApi; @DubboReference - ICuMemberRetailRegionServiceApi iCuMemberRetailRegionServiceApi; - @DubboReference IAcRetailPickLogServiceApi iAcRetailPickLogServiceApi; @DubboReference IMemberReportServiceApi iMemberReportServiceApi; @@ -56,21 +53,6 @@ public class MemberJob { } } - /** - * 定时统计顶点奖金拨比 - */ - @XxlJob("bonus-vertex-statis") - public void cuBonusVertexStatis() { - //查询前一天的订单和奖金 - Date date = DateUtils.currentDate(); - date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); - String payTimeStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); - R statis = iCuBonusVertexStatisServiceApi.anewStatisHistoryBonus(payTimeStr, payTimeStr); - if (!statis.getData()) { - log.info("{}-定时统计奖金拨统计失败", DateUtils.currentDate()); - } - } - /** * 重算7天内奖金拨比 **/ @@ -94,7 +76,22 @@ public class MemberJob { } /** - * 7天重算顶点奖金拨比统计 + * 定时统计顶点奖金拨比 -- 新零售 + */ + @XxlJob("bonus-vertex-statis") + public void cuBonusVertexStatis() { + //查询前一天的订单和奖金 + Date date = DateUtils.currentDate(); + date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); + String payTimeStr = (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date)); + R statis = iCuBonusVertexStatisServiceApi.anewStatisHistoryBonus(payTimeStr, payTimeStr); + if (!statis.getData()) { + log.info("{}-定时统计奖金拨统计失败", DateUtils.currentDate()); + } + } + + /** + * 7天重算顶点奖金拨比统计 -- 新零售 **/ @XxlJob("rerun-bonus-vertex-statis") public void rerunCuBonusVertexStatis() { @@ -146,14 +143,6 @@ public class MemberJob { iMemberRetailApi.checkRegion(); } - /** - * 定时任务重复收益区域数据 - */ - @XxlJob("handleRepeatRegion") - public void handleRepeatRegion() { - iCuMemberRetailRegionServiceApi.handleRepeatRegion(); - } - /** * 每月10号处理上个月提货赠送活动满足活动规则的数据 **/ From 47f91f70908ca0c9c70e9ccd8b74e76aee616b6e Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 23 Jul 2025 14:07:11 +0800 Subject: [PATCH 061/362] =?UTF-8?q?##=20Opt=20-=20=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E4=B8=8B=E5=8D=95,=E4=BF=9D=E6=8C=81=E4=B8=8A=E6=AC=A1?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E4=B8=8D=E9=9A=8F=E6=9C=BA=E5=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pay/controller/api/PayController.java | 81 ++++++++++--------- 1 file changed, 42 insertions(+), 39 deletions(-) diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java index 7d6a3de8..6af4c408 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java @@ -1,5 +1,6 @@ package com.hzs.third.pay.controller.api; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.activity.base.IActivityServiceApi; import com.hzs.common.core.annotation.RepeatSubmitSimple; @@ -130,47 +131,49 @@ public class PayController { } onlinePayment.setExtParam(param.getExtParam()); - // 业务金额 - BigDecimal businessMoney = null; - // 实际支付金额(随机立减之后) - BigDecimal amount = null; + if(ObjectUtil.isEmpty(onlinePayment.getPkId())) { + // 业务金额 + BigDecimal businessMoney = null; + // 实际支付金额(随机立减之后) + BigDecimal amount = null; - // 部分业务金额随机立减 - switch (payBusinessType) { - case MEMBER_ORDER: - // 会员订单 - R orderResult = iSaOrderServiceApi.getRetailPayOrder(userId, param.getBusinessCode()); - if (orderResult.isSuccess()) { - businessMoney = orderResult.getData().setScale(2, BigDecimal.ROUND_HALF_UP); - } else { - return AjaxResult.error(orderResult.getMsg()); - } - break; - case RECHARGE: - // 充值 - R rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(param.getBusinessCode(), userId); - if (rechargeResult.isSuccess()) { - businessMoney = rechargeResult.getData().getRechargeAmount().setScale(2, BigDecimal.ROUND_HALF_UP); - } else { - return AjaxResult.error(rechargeResult.getMsg()); - } - break; - case TICKET: - // 购票 - R ticketResult = iTicketServiceApi.getTicketPayOrder(userId, param.getBusinessCode()); - if (ticketResult.isSuccess()) { - businessMoney = ticketResult.getData(); - } else { - return AjaxResult.error(ticketResult.getMsg()); - } - break; - default: + // 部分业务金额随机立减 + switch (payBusinessType) { + case MEMBER_ORDER: + // 会员订单 + R orderResult = iSaOrderServiceApi.getRetailPayOrder(userId, param.getBusinessCode()); + if (orderResult.isSuccess()) { + businessMoney = orderResult.getData().setScale(2, BigDecimal.ROUND_HALF_UP); + } else { + return AjaxResult.error(orderResult.getMsg()); + } + break; + case RECHARGE: + // 充值 + R rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(param.getBusinessCode(), userId); + if (rechargeResult.isSuccess()) { + businessMoney = rechargeResult.getData().getRechargeAmount().setScale(2, BigDecimal.ROUND_HALF_UP); + } else { + return AjaxResult.error(rechargeResult.getMsg()); + } + break; + case TICKET: + // 购票 + R ticketResult = iTicketServiceApi.getTicketPayOrder(userId, param.getBusinessCode()); + if (ticketResult.isSuccess()) { + businessMoney = ticketResult.getData(); + } else { + return AjaxResult.error(ticketResult.getMsg()); + } + break; + default: + } + // 更新业务金额 + onlinePayment.setBusinessMoney(businessMoney); + amount = PayUtil.handleAmountRandom(businessMoney); + // 暂存于实际支付金额(部分业务进行随机立减) + onlinePayment.setPayMoney(amount); } - // 更新业务金额 - onlinePayment.setBusinessMoney(businessMoney); - amount = PayUtil.handleAmountRandom(businessMoney); - // 暂存于实际支付金额(部分业务进行随机立减) - onlinePayment.setPayMoney(amount); // 结果实体 R payResult = null; From 182192e7f493763f648fdb4ceefc269314501bb6 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 23 Jul 2025 14:07:11 +0800 Subject: [PATCH 062/362] =?UTF-8?q?##=20Opt=20-=20=E9=87=8D=E5=A4=8D?= =?UTF-8?q?=E4=B8=8B=E5=8D=95,=E4=BF=9D=E6=8C=81=E4=B8=8A=E6=AC=A1?= =?UTF-8?q?=E9=87=91=E9=A2=9D=E4=B8=8D=E9=9A=8F=E6=9C=BA=E5=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pay/controller/api/PayController.java | 81 ++++++++++--------- 1 file changed, 42 insertions(+), 39 deletions(-) diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java index 7d6a3de8..6af4c408 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java @@ -1,5 +1,6 @@ package com.hzs.third.pay.controller.api; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.activity.base.IActivityServiceApi; import com.hzs.common.core.annotation.RepeatSubmitSimple; @@ -130,47 +131,49 @@ public class PayController { } onlinePayment.setExtParam(param.getExtParam()); - // 业务金额 - BigDecimal businessMoney = null; - // 实际支付金额(随机立减之后) - BigDecimal amount = null; + if(ObjectUtil.isEmpty(onlinePayment.getPkId())) { + // 业务金额 + BigDecimal businessMoney = null; + // 实际支付金额(随机立减之后) + BigDecimal amount = null; - // 部分业务金额随机立减 - switch (payBusinessType) { - case MEMBER_ORDER: - // 会员订单 - R orderResult = iSaOrderServiceApi.getRetailPayOrder(userId, param.getBusinessCode()); - if (orderResult.isSuccess()) { - businessMoney = orderResult.getData().setScale(2, BigDecimal.ROUND_HALF_UP); - } else { - return AjaxResult.error(orderResult.getMsg()); - } - break; - case RECHARGE: - // 充值 - R rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(param.getBusinessCode(), userId); - if (rechargeResult.isSuccess()) { - businessMoney = rechargeResult.getData().getRechargeAmount().setScale(2, BigDecimal.ROUND_HALF_UP); - } else { - return AjaxResult.error(rechargeResult.getMsg()); - } - break; - case TICKET: - // 购票 - R ticketResult = iTicketServiceApi.getTicketPayOrder(userId, param.getBusinessCode()); - if (ticketResult.isSuccess()) { - businessMoney = ticketResult.getData(); - } else { - return AjaxResult.error(ticketResult.getMsg()); - } - break; - default: + // 部分业务金额随机立减 + switch (payBusinessType) { + case MEMBER_ORDER: + // 会员订单 + R orderResult = iSaOrderServiceApi.getRetailPayOrder(userId, param.getBusinessCode()); + if (orderResult.isSuccess()) { + businessMoney = orderResult.getData().setScale(2, BigDecimal.ROUND_HALF_UP); + } else { + return AjaxResult.error(orderResult.getMsg()); + } + break; + case RECHARGE: + // 充值 + R rechargeResult = iMemberTradeServiceApi.selectMemberRechargeByCodeAndPkMember(param.getBusinessCode(), userId); + if (rechargeResult.isSuccess()) { + businessMoney = rechargeResult.getData().getRechargeAmount().setScale(2, BigDecimal.ROUND_HALF_UP); + } else { + return AjaxResult.error(rechargeResult.getMsg()); + } + break; + case TICKET: + // 购票 + R ticketResult = iTicketServiceApi.getTicketPayOrder(userId, param.getBusinessCode()); + if (ticketResult.isSuccess()) { + businessMoney = ticketResult.getData(); + } else { + return AjaxResult.error(ticketResult.getMsg()); + } + break; + default: + } + // 更新业务金额 + onlinePayment.setBusinessMoney(businessMoney); + amount = PayUtil.handleAmountRandom(businessMoney); + // 暂存于实际支付金额(部分业务进行随机立减) + onlinePayment.setPayMoney(amount); } - // 更新业务金额 - onlinePayment.setBusinessMoney(businessMoney); - amount = PayUtil.handleAmountRandom(businessMoney); - // 暂存于实际支付金额(部分业务进行随机立减) - onlinePayment.setPayMoney(amount); // 结果实体 R payResult = null; From 3f4afdc3b2bab3d4b6c27a8ae7e9e8f7831cad87 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 09:10:47 +0800 Subject: [PATCH 063/362] =?UTF-8?q?##=20Feat=20-=20=E4=BD=93=E7=B3=BBbanne?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiBdAdvertBannerController.java | 5 ++-- .../manage/BdAdvertBannerController.java | 29 ++++++++++--------- .../config/mapper/BdAdvertBannerMapper.java | 6 +++- .../service/IBdAdvertBannerService.java | 6 +++- .../impl/BdAdvertBannerServiceImpl.java | 23 +++++++++++++-- .../system/config/BdAdvertBannerMapper.xml | 19 ++++++++++++ .../domain/system/config/BdAdvertBanner.java | 5 ++++ sql/2025年7月30日_banner增加体系.sql | 3 ++ 8 files changed, 75 insertions(+), 21 deletions(-) create mode 100644 sql/2025年7月30日_banner增加体系.sql diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java index 1206376d..b86c7e61 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java @@ -6,6 +6,7 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.config.service.IBdAdvertBannerService; import com.hzs.system.config.vo.ApiAdvertBannerVO; import org.springframework.beans.factory.annotation.Autowired; @@ -38,7 +39,7 @@ public class ApiBdAdvertBannerController extends BaseController { **/ @GetMapping("/list") public TableDataInfo list(BdAdvertBanner banner) { - List list = advertBannerService.listData(banner); + List list = advertBannerService.listData(banner, SecurityUtils.getUserId()); return getDataTable(list); } @@ -52,7 +53,7 @@ public class ApiBdAdvertBannerController extends BaseController { // 返回结果 List resultList = new ArrayList<>(); - List list = advertBannerService.listData(null); + List list = advertBannerService.listData(null, SecurityUtils.getUserId()); if (CollectionUtil.isNotEmpty(list)) { resultList = BeanUtil.copyToList(list, ApiAdvertBannerVO.class); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java index 85e67d66..2f896620 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java @@ -44,20 +44,21 @@ public class BdAdvertBannerController extends BaseController { @GetMapping("/list") public TableDataInfo list(BdAdvertBannerExt advertBannerExt) { startPage(); - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (StringUtils.isNotNull(advertBannerExt.getPosition())) { - queryWrapper.eq("POSITION", advertBannerExt.getPosition()); - } - if (StringUtils.isNotNull(advertBannerExt.getStartDate()) - && StringUtils.isNotNull(advertBannerExt.getEndDate())) { - queryWrapper.between("CREATION_TIME", advertBannerExt.getStartDate(), advertBannerExt.getEndDate()); - } - if (StringUtils.isNotNull(advertBannerExt.getStartEffectiveDate()) - && StringUtils.isNotNull(advertBannerExt.getEndEffectiveDate())) { - queryWrapper.between("EFFECTIVE_DATE", advertBannerExt.getStartEffectiveDate(), advertBannerExt.getEndEffectiveDate()); - } - queryWrapper.orderByAsc("SORT"); - List list = advertBannerService.list(queryWrapper); +// QueryWrapper queryWrapper = new QueryWrapper<>(); +// if (StringUtils.isNotNull(advertBannerExt.getPosition())) { +// queryWrapper.eq("POSITION", advertBannerExt.getPosition()); +// } +// if (StringUtils.isNotNull(advertBannerExt.getStartDate()) +// && StringUtils.isNotNull(advertBannerExt.getEndDate())) { +// queryWrapper.between("CREATION_TIME", advertBannerExt.getStartDate(), advertBannerExt.getEndDate()); +// } +// if (StringUtils.isNotNull(advertBannerExt.getStartEffectiveDate()) +// && StringUtils.isNotNull(advertBannerExt.getEndEffectiveDate())) { +// queryWrapper.between("EFFECTIVE_DATE", advertBannerExt.getStartEffectiveDate(), advertBannerExt.getEndEffectiveDate()); +// } +// queryWrapper.orderByAsc("SORT"); +// List list = advertBannerService.list(queryWrapper); + List list = advertBannerService.getList(advertBannerExt); if (CollectionUtil.isNotEmpty(list)) { for (BdAdvertBanner bdAdvertBanner : list) { EPositionTwo ePositionTwo = EPositionTwo.getEnumByValue(bdAdvertBanner.getPosition()); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java index 14e59940..ac692c02 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java @@ -3,6 +3,10 @@ package com.hzs.system.config.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -13,5 +17,5 @@ import com.hzs.common.domain.system.config.BdAdvertBanner; * @since 2023-04-13 */ public interface BdAdvertBannerMapper extends BaseMapper { - + List getList(@Param("param") BdAdvertBannerExt param); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java index 2860bf77..582c7cf2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java @@ -2,6 +2,7 @@ package com.hzs.system.config.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; import java.util.List; @@ -19,6 +20,9 @@ public interface IBdAdvertBannerService extends IService { * @param banner 查询banner * @return */ - List listData(BdAdvertBanner banner); +// List listData(BdAdvertBanner banner); + List listData(BdAdvertBanner banner, Long userId); + + List getList(BdAdvertBannerExt param); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java index 45ad7598..78bd98d6 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java @@ -1,13 +1,18 @@ package com.hzs.system.config.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EPositionTwo; import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; +import com.hzs.member.base.IMemberServiceApi; import com.hzs.system.config.mapper.BdAdvertBannerMapper; import com.hzs.system.config.service.IBdAdvertBannerService; +import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.stereotype.Service; import java.util.Date; @@ -22,12 +27,14 @@ import java.util.List; @Service public class BdAdvertBannerServiceImpl extends ServiceImpl implements IBdAdvertBannerService { + @DubboReference + IMemberServiceApi iMemberServiceApi; @Override - public List listData(BdAdvertBanner banner) { + public List listData(BdAdvertBanner banner, Long userId) { if (null == banner) { banner = new BdAdvertBanner(); } - + CuMember cuMember = iMemberServiceApi.getMember(userId).getData(); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotNull(banner.getPosition())) { queryWrapper.eq(BdAdvertBanner::getPosition, banner.getPosition()); @@ -35,10 +42,20 @@ public class BdAdvertBannerServiceImpl extends ServiceImpl qw.isNull(BdAdvertBanner::getPkVertex).or().eq(BdAdvertBanner::getPkVertex, cuMember.getPkVertex())); + } queryWrapper.eq(BdAdvertBanner::getPkCountry, CountryConstants.CHINA_COUNTRY); queryWrapper.lt(BdAdvertBanner::getEffectiveDate, new Date()); queryWrapper.orderByAsc(BdAdvertBanner::getSort); - return this.list(); + return this.list(queryWrapper); + } + + @Override + public List getList(BdAdvertBannerExt param) { + return baseMapper.getList(param); } } diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml index 462cf201..a79fe61a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml @@ -28,5 +28,24 @@ PK_MODIFIED, PK_ID, POSITION, EFFECTIVE_DATE, SORT, PICTURE, LINK + diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java index d5723ea0..c4e49948 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java @@ -72,5 +72,10 @@ public class BdAdvertBanner extends BaseEntity { @TableField("LINK") private String link; + @TableField("PK_VERTEX") + private Integer pkVertex; + + @TableField(exist = false) + private String vertexName; } diff --git a/sql/2025年7月30日_banner增加体系.sql b/sql/2025年7月30日_banner增加体系.sql new file mode 100644 index 00000000..0df44624 --- /dev/null +++ b/sql/2025年7月30日_banner增加体系.sql @@ -0,0 +1,3 @@ +ALTER TABLE "BD_ADVERT_BANNER" + ADD ("PK_VERTEX" NUMBER(6,0)); +COMMENT ON COLUMN "BD_ADVERT_BANNER"."PK_VERTEX" IS '体系ID'; From 3b4f771c5f0dcb9ef901d11072ee47baf639de20 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 09:10:47 +0800 Subject: [PATCH 064/362] =?UTF-8?q?##=20Feat=20-=20=E4=BD=93=E7=B3=BBbanne?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiBdAdvertBannerController.java | 5 ++-- .../manage/BdAdvertBannerController.java | 29 ++++++++++--------- .../config/mapper/BdAdvertBannerMapper.java | 6 +++- .../service/IBdAdvertBannerService.java | 6 +++- .../impl/BdAdvertBannerServiceImpl.java | 23 +++++++++++++-- .../system/config/BdAdvertBannerMapper.xml | 19 ++++++++++++ .../domain/system/config/BdAdvertBanner.java | 5 ++++ sql/2025年7月30日_banner增加体系.sql | 3 ++ 8 files changed, 75 insertions(+), 21 deletions(-) create mode 100644 sql/2025年7月30日_banner增加体系.sql diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java index 1206376d..b86c7e61 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/api/ApiBdAdvertBannerController.java @@ -6,6 +6,7 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.config.service.IBdAdvertBannerService; import com.hzs.system.config.vo.ApiAdvertBannerVO; import org.springframework.beans.factory.annotation.Autowired; @@ -38,7 +39,7 @@ public class ApiBdAdvertBannerController extends BaseController { **/ @GetMapping("/list") public TableDataInfo list(BdAdvertBanner banner) { - List list = advertBannerService.listData(banner); + List list = advertBannerService.listData(banner, SecurityUtils.getUserId()); return getDataTable(list); } @@ -52,7 +53,7 @@ public class ApiBdAdvertBannerController extends BaseController { // 返回结果 List resultList = new ArrayList<>(); - List list = advertBannerService.listData(null); + List list = advertBannerService.listData(null, SecurityUtils.getUserId()); if (CollectionUtil.isNotEmpty(list)) { resultList = BeanUtil.copyToList(list, ApiAdvertBannerVO.class); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java index 85e67d66..2f896620 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdAdvertBannerController.java @@ -44,20 +44,21 @@ public class BdAdvertBannerController extends BaseController { @GetMapping("/list") public TableDataInfo list(BdAdvertBannerExt advertBannerExt) { startPage(); - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (StringUtils.isNotNull(advertBannerExt.getPosition())) { - queryWrapper.eq("POSITION", advertBannerExt.getPosition()); - } - if (StringUtils.isNotNull(advertBannerExt.getStartDate()) - && StringUtils.isNotNull(advertBannerExt.getEndDate())) { - queryWrapper.between("CREATION_TIME", advertBannerExt.getStartDate(), advertBannerExt.getEndDate()); - } - if (StringUtils.isNotNull(advertBannerExt.getStartEffectiveDate()) - && StringUtils.isNotNull(advertBannerExt.getEndEffectiveDate())) { - queryWrapper.between("EFFECTIVE_DATE", advertBannerExt.getStartEffectiveDate(), advertBannerExt.getEndEffectiveDate()); - } - queryWrapper.orderByAsc("SORT"); - List list = advertBannerService.list(queryWrapper); +// QueryWrapper queryWrapper = new QueryWrapper<>(); +// if (StringUtils.isNotNull(advertBannerExt.getPosition())) { +// queryWrapper.eq("POSITION", advertBannerExt.getPosition()); +// } +// if (StringUtils.isNotNull(advertBannerExt.getStartDate()) +// && StringUtils.isNotNull(advertBannerExt.getEndDate())) { +// queryWrapper.between("CREATION_TIME", advertBannerExt.getStartDate(), advertBannerExt.getEndDate()); +// } +// if (StringUtils.isNotNull(advertBannerExt.getStartEffectiveDate()) +// && StringUtils.isNotNull(advertBannerExt.getEndEffectiveDate())) { +// queryWrapper.between("EFFECTIVE_DATE", advertBannerExt.getStartEffectiveDate(), advertBannerExt.getEndEffectiveDate()); +// } +// queryWrapper.orderByAsc("SORT"); +// List list = advertBannerService.list(queryWrapper); + List list = advertBannerService.getList(advertBannerExt); if (CollectionUtil.isNotEmpty(list)) { for (BdAdvertBanner bdAdvertBanner : list) { EPositionTwo ePositionTwo = EPositionTwo.getEnumByValue(bdAdvertBanner.getPosition()); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java index 14e59940..ac692c02 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdAdvertBannerMapper.java @@ -3,6 +3,10 @@ package com.hzs.system.config.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -13,5 +17,5 @@ import com.hzs.common.domain.system.config.BdAdvertBanner; * @since 2023-04-13 */ public interface BdAdvertBannerMapper extends BaseMapper { - + List getList(@Param("param") BdAdvertBannerExt param); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java index 2860bf77..582c7cf2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAdvertBannerService.java @@ -2,6 +2,7 @@ package com.hzs.system.config.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; import java.util.List; @@ -19,6 +20,9 @@ public interface IBdAdvertBannerService extends IService { * @param banner 查询banner * @return */ - List listData(BdAdvertBanner banner); +// List listData(BdAdvertBanner banner); + List listData(BdAdvertBanner banner, Long userId); + + List getList(BdAdvertBannerExt param); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java index 45ad7598..78bd98d6 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAdvertBannerServiceImpl.java @@ -1,13 +1,18 @@ package com.hzs.system.config.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EPositionTwo; import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.system.config.BdAdvertBanner; +import com.hzs.common.domain.system.config.ext.BdAdvertBannerExt; +import com.hzs.member.base.IMemberServiceApi; import com.hzs.system.config.mapper.BdAdvertBannerMapper; import com.hzs.system.config.service.IBdAdvertBannerService; +import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.stereotype.Service; import java.util.Date; @@ -22,12 +27,14 @@ import java.util.List; @Service public class BdAdvertBannerServiceImpl extends ServiceImpl implements IBdAdvertBannerService { + @DubboReference + IMemberServiceApi iMemberServiceApi; @Override - public List listData(BdAdvertBanner banner) { + public List listData(BdAdvertBanner banner, Long userId) { if (null == banner) { banner = new BdAdvertBanner(); } - + CuMember cuMember = iMemberServiceApi.getMember(userId).getData(); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotNull(banner.getPosition())) { queryWrapper.eq(BdAdvertBanner::getPosition, banner.getPosition()); @@ -35,10 +42,20 @@ public class BdAdvertBannerServiceImpl extends ServiceImpl qw.isNull(BdAdvertBanner::getPkVertex).or().eq(BdAdvertBanner::getPkVertex, cuMember.getPkVertex())); + } queryWrapper.eq(BdAdvertBanner::getPkCountry, CountryConstants.CHINA_COUNTRY); queryWrapper.lt(BdAdvertBanner::getEffectiveDate, new Date()); queryWrapper.orderByAsc(BdAdvertBanner::getSort); - return this.list(); + return this.list(queryWrapper); + } + + @Override + public List getList(BdAdvertBannerExt param) { + return baseMapper.getList(param); } } diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml index 462cf201..a79fe61a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdAdvertBannerMapper.xml @@ -28,5 +28,24 @@ PK_MODIFIED, PK_ID, POSITION, EFFECTIVE_DATE, SORT, PICTURE, LINK + diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java index d5723ea0..c4e49948 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAdvertBanner.java @@ -72,5 +72,10 @@ public class BdAdvertBanner extends BaseEntity { @TableField("LINK") private String link; + @TableField("PK_VERTEX") + private Integer pkVertex; + + @TableField(exist = false) + private String vertexName; } diff --git a/sql/2025年7月30日_banner增加体系.sql b/sql/2025年7月30日_banner增加体系.sql new file mode 100644 index 00000000..0df44624 --- /dev/null +++ b/sql/2025年7月30日_banner增加体系.sql @@ -0,0 +1,3 @@ +ALTER TABLE "BD_ADVERT_BANNER" + ADD ("PK_VERTEX" NUMBER(6,0)); +COMMENT ON COLUMN "BD_ADVERT_BANNER"."PK_VERTEX" IS '体系ID'; From 337cd41e618c449765a84074075e9fff924a2732 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 13:22:47 +0800 Subject: [PATCH 065/362] =?UTF-8?q?##=20=E6=8F=90=E5=8F=96=E9=9B=A8?= =?UTF-8?q?=E6=B1=90=E5=9B=A2=E9=98=9F=E5=86=99=E6=AD=BB=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 31 ++++++------------- .../common/core/constant/RetailConstants.java | 11 +++++++ 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 415319fa..3a136ec0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -65,17 +65,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @DubboReference ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; - /** - * 特殊体系PK_ID: 150 - * V4:总 500,小 100 - * V5:总 2000,小 400 - */ - public static final Long VERTEX_PK_ID = 150L; - public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); - public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); - public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); - public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); - /** * 秒结: * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) @@ -739,16 +728,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 等级小市场盒数 BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { // TODO 需要根据配置写死的体系,进行单独处理 // V4: 总 500,小 100 // V5: 总 2000,小 400 if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V4_TOTAL_BOX; - boxSmallTotal = VERTEX_V4_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V5_TOTAL_BOX; - boxSmallTotal = VERTEX_V5_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; } } @@ -988,16 +977,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 等级小市场盒数 BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { // TODO 需要根据配置写死的体系,进行单独处理 // V4: 总 500,小 100 // V5: 总 2000,小 400 if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V4_TOTAL_BOX; - boxSmallTotal = VERTEX_V4_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V5_TOTAL_BOX; - boxSmallTotal = VERTEX_V5_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 89458c7f..2c542073 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -18,6 +18,17 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); + /** + * 特殊体系PK_ID: 150 + * V4:总 500,小 100 + * V5:总 2000,小 400 + */ + public static final Long VERTEX_PK_ID = 150L; + public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); + public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); + public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); + public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); + /** * 盒数产品列表 */ From e50ec05cfdcdf434107dbd81c7dc99686112fc51 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 13:47:15 +0800 Subject: [PATCH 066/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 67 ++++++++++++++----- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index c04e5e67..aa5e6733 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -10,6 +10,7 @@ import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; +import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.msg.AreaConstants; import com.hzs.common.core.enums.EGrade; @@ -30,10 +31,7 @@ import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.service.ICuMemberRetailRegionService; import com.hzs.retail.member.service.IMemberRetailService; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.RecommendListVO; -import com.hzs.retail.member.vo.RetailMemberInfoVO; -import com.hzs.retail.member.vo.RetailMemberRegionVO; +import com.hzs.retail.member.vo.*; import com.hzs.system.base.IAreaServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; @@ -41,6 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -60,6 +59,8 @@ public class RetailMemberController extends BaseController { private ICuMemberRetailRegionService iCuMemberRetailRegionService; @Autowired private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; + @Autowired + private ICuMemberRetailAchieveService retailAchieveService; @DubboReference IAreaServiceApi iAreaServiceApi; @@ -122,16 +123,32 @@ public class RetailMemberController extends BaseController { .build()); } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); - if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); +// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 + && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 + ){ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); + log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); + if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) + && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } } } // 达到条件,但是没有选择区域,需要弹窗选择区域 @@ -186,10 +203,26 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - canSet = true; + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); +// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 + && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 + ){ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + canSet = true; + } } } } From a26be455411122937a65d0e4dc16c22cb5e71570 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 13:47:15 +0800 Subject: [PATCH 067/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 67 ++++++++++++++----- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index c04e5e67..aa5e6733 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -10,6 +10,7 @@ import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; +import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.msg.AreaConstants; import com.hzs.common.core.enums.EGrade; @@ -30,10 +31,7 @@ import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.service.ICuMemberRetailRegionService; import com.hzs.retail.member.service.IMemberRetailService; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.RecommendListVO; -import com.hzs.retail.member.vo.RetailMemberInfoVO; -import com.hzs.retail.member.vo.RetailMemberRegionVO; +import com.hzs.retail.member.vo.*; import com.hzs.system.base.IAreaServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; @@ -41,6 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -60,6 +59,8 @@ public class RetailMemberController extends BaseController { private ICuMemberRetailRegionService iCuMemberRetailRegionService; @Autowired private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; + @Autowired + private ICuMemberRetailAchieveService retailAchieveService; @DubboReference IAreaServiceApi iAreaServiceApi; @@ -122,16 +123,32 @@ public class RetailMemberController extends BaseController { .build()); } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); - if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); +// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 + && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 + ){ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); + log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); + if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) + && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } } } // 达到条件,但是没有选择区域,需要弹窗选择区域 @@ -186,10 +203,26 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - canSet = true; + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); +// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 + && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 + ){ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + canSet = true; + } } } } From 23f8b64db001f70565539bce99ae757638ba6ec9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 13:22:47 +0800 Subject: [PATCH 068/362] =?UTF-8?q?##=20=E6=8F=90=E5=8F=96=E9=9B=A8?= =?UTF-8?q?=E6=B1=90=E5=9B=A2=E9=98=9F=E5=86=99=E6=AD=BB=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 31 ++++++------------- .../common/core/constant/RetailConstants.java | 11 +++++++ 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 415319fa..3a136ec0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -65,17 +65,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @DubboReference ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; - /** - * 特殊体系PK_ID: 150 - * V4:总 500,小 100 - * V5:总 2000,小 400 - */ - public static final Long VERTEX_PK_ID = 150L; - public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); - public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); - public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); - public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); - /** * 秒结: * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) @@ -739,16 +728,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 等级小市场盒数 BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { // TODO 需要根据配置写死的体系,进行单独处理 // V4: 总 500,小 100 // V5: 总 2000,小 400 if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V4_TOTAL_BOX; - boxSmallTotal = VERTEX_V4_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V5_TOTAL_BOX; - boxSmallTotal = VERTEX_V5_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; } } @@ -988,16 +977,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 等级小市场盒数 BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { + if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { // TODO 需要根据配置写死的体系,进行单独处理 // V4: 总 500,小 100 // V5: 总 2000,小 400 if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V4_TOTAL_BOX; - boxSmallTotal = VERTEX_V4_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = VERTEX_V5_TOTAL_BOX; - boxSmallTotal = VERTEX_V5_SMALL_BOX; + boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; + boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 89458c7f..2c542073 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -18,6 +18,17 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); + /** + * 特殊体系PK_ID: 150 + * V4:总 500,小 100 + * V5:总 2000,小 400 + */ + public static final Long VERTEX_PK_ID = 150L; + public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500"); + public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100"); + public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000"); + public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400"); + /** * 盒数产品列表 */ From af35bbb984c48761d0b41908cb100e6f3f94f21b Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 14:18:39 +0800 Subject: [PATCH 069/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../retail/member/controller/api/RetailMemberController.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index aa5e6733..5999dcf1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -213,9 +213,7 @@ public class RetailMemberController extends BaseController { && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + canSet = true; } }else{ if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 From 986832808cdd8370e76196b6b0f1e6ac44cf3038 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 14:18:39 +0800 Subject: [PATCH 070/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../retail/member/controller/api/RetailMemberController.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index aa5e6733..5999dcf1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -213,9 +213,7 @@ public class RetailMemberController extends BaseController { && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + canSet = true; } }else{ if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 From f0e036aefca91cf7e93b940723c96d0017b9e1db Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 14:50:24 +0800 Subject: [PATCH 071/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/RetailMemberController.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 5999dcf1..ace06319 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -124,8 +124,8 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); BigDecimal totalBoxNum = result.getTotalBoxNum(); BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); @@ -141,8 +141,8 @@ public class RetailMemberController extends BaseController { CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 ){ return AjaxResult.success(RetailMemberRegionVO.builder() @@ -203,9 +203,9 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); BigDecimal totalBoxNum = result.getTotalBoxNum(); BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); @@ -216,8 +216,8 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ - if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 ){ canSet = true; } From a29fdfd6242d9685e288bc17c23fa31cfad4cdc7 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 14:50:24 +0800 Subject: [PATCH 072/362] =?UTF-8?q?##=20Feat=20-=20=E9=9B=A8=E6=B1=90?= =?UTF-8?q?=E5=9B=A2=E9=98=9F=E9=80=89=E5=8F=96=E5=8C=BA=E5=9F=9F=E7=89=B9?= =?UTF-8?q?=E6=AE=8A=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/RetailMemberController.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 5999dcf1..ace06319 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -124,8 +124,8 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberExt memberExt = iCuMemberService.getMemberById(userId); + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); BigDecimal totalBoxNum = result.getTotalBoxNum(); BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); @@ -141,8 +141,8 @@ public class RetailMemberController extends BaseController { CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 ){ return AjaxResult.success(RetailMemberRegionVO.builder() @@ -203,9 +203,9 @@ public class RetailMemberController extends BaseController { } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); + CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); BigDecimal totalBoxNum = result.getTotalBoxNum(); BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); @@ -216,8 +216,8 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ - if(retailAchieve.getArealPv().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && retailAchieve.getSmallAreaPv().compareTo(SysConstants.SMALL_AREA_PV) >=0 + if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 ){ canSet = true; } From 96d0cab579252c6e89eb8f5bd49474b055af5807 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 15:34:53 +0800 Subject: [PATCH 073/362] =?UTF-8?q?##=20Feat=20-=20=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=20=E9=A6=96=E6=AC=A1=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F(CU=5FMEMBER=5FRETAIL=5FREGION=E4=B8=AD?= =?UTF-8?q?=E6=B2=A1=E6=9C=89memberid)=20=E4=B8=8D=E9=AA=8C=E4=B8=9A?= =?UTF-8?q?=E7=BB=A9=20=E9=AA=8C=E7=9B=92=E6=95=B0=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=09=E9=9B=A8=E6=B1=90=20=E6=80=BB200?= =?UTF-8?q?0=20=E5=B0=8F400=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=09=E5=85=B6=E4=BB=96=20BD=5FGRADE=20->=20BOX=5FTOTAL,BOX?= =?UTF-8?q?=5FSMALL=5FTOTAL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 53 ++++++++++++++----- 1 file changed, 39 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index ace06319..909f774e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -8,6 +8,7 @@ import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.constant.RetailConstants; @@ -25,6 +26,7 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; +import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.service.ICuMemberService; import com.hzs.retail.member.param.RetailMemberRegionParam; @@ -33,9 +35,12 @@ import com.hzs.retail.member.service.ICuMemberRetailRegionService; import com.hzs.retail.member.service.IMemberRetailService; import com.hzs.retail.member.vo.*; import com.hzs.system.base.IAreaServiceApi; +import com.hzs.system.config.IGradeServiceApi; +import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -64,6 +69,8 @@ public class RetailMemberController extends BaseController { @DubboReference IAreaServiceApi iAreaServiceApi; + @DubboReference + private IGradeServiceApi gradeServiceApi; /** * 获取登录会员信息 @@ -99,6 +106,11 @@ public class RetailMemberController extends BaseController { Integer pkCountry = SecurityUtils.getPkCountry(); CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean isFirst = countNum > 0; + log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); if (null != cuMemberRetailRegionExt) { // 已自选区域或者已后台指定 @@ -123,11 +135,11 @@ public class RetailMemberController extends BaseController { .build()); } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 @@ -138,17 +150,24 @@ public class RetailMemberController extends BaseController { .build()); } }else{ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); - if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 + && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() .regionStatus(EYesNo.YES.getIntValue()) .build()); } +// if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) +// && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 +// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 +// ){ +// +// return AjaxResult.success(RetailMemberRegionVO.builder() +// .regionStatus(EYesNo.YES.getIntValue()) +// .build()); +// } } } // 达到条件,但是没有选择区域,需要弹窗选择区域 @@ -202,12 +221,11 @@ public class RetailMemberController extends BaseController { canSet = true; } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 @@ -216,11 +234,18 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ - if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 + && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ canSet = true; } +// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 +// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 +// ){ +// canSet = true; +// } } } } From 4175a05b589ad91a4666f906bfd059a0ae6a0394 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 15:34:53 +0800 Subject: [PATCH 074/362] =?UTF-8?q?##=20Feat=20-=20=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=20=E9=A6=96=E6=AC=A1=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F(CU=5FMEMBER=5FRETAIL=5FREGION=E4=B8=AD?= =?UTF-8?q?=E6=B2=A1=E6=9C=89memberid)=20=E4=B8=8D=E9=AA=8C=E4=B8=9A?= =?UTF-8?q?=E7=BB=A9=20=E9=AA=8C=E7=9B=92=E6=95=B0=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=09=E9=9B=A8=E6=B1=90=20=E6=80=BB200?= =?UTF-8?q?0=20=E5=B0=8F400=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=09=E5=85=B6=E4=BB=96=20BD=5FGRADE=20->=20BOX=5FTOTAL,BOX?= =?UTF-8?q?=5FSMALL=5FTOTAL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 53 ++++++++++++++----- 1 file changed, 39 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index ace06319..909f774e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -8,6 +8,7 @@ import cn.hutool.core.lang.tree.TreeUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.constant.RetailConstants; @@ -25,6 +26,7 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; +import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.service.ICuMemberService; import com.hzs.retail.member.param.RetailMemberRegionParam; @@ -33,9 +35,12 @@ import com.hzs.retail.member.service.ICuMemberRetailRegionService; import com.hzs.retail.member.service.IMemberRetailService; import com.hzs.retail.member.vo.*; import com.hzs.system.base.IAreaServiceApi; +import com.hzs.system.config.IGradeServiceApi; +import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -64,6 +69,8 @@ public class RetailMemberController extends BaseController { @DubboReference IAreaServiceApi iAreaServiceApi; + @DubboReference + private IGradeServiceApi gradeServiceApi; /** * 获取登录会员信息 @@ -99,6 +106,11 @@ public class RetailMemberController extends BaseController { Integer pkCountry = SecurityUtils.getPkCountry(); CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean isFirst = countNum > 0; + log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); if (null != cuMemberRetailRegionExt) { // 已自选区域或者已后台指定 @@ -123,11 +135,11 @@ public class RetailMemberController extends BaseController { .build()); } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); + CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 @@ -138,17 +150,24 @@ public class RetailMemberController extends BaseController { .build()); } }else{ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); - log.info("retailAchieve : {}", JSONUtil.toJsonStr(retailAchieve)); - if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) - && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 + && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() .regionStatus(EYesNo.YES.getIntValue()) .build()); } +// if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) +// && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 +// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 +// ){ +// +// return AjaxResult.success(RetailMemberRegionVO.builder() +// .regionStatus(EYesNo.YES.getIntValue()) +// .build()); +// } } } // 达到条件,但是没有选择区域,需要弹窗选择区域 @@ -202,12 +221,11 @@ public class RetailMemberController extends BaseController { canSet = true; } if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(userId, pkCountry, systemType); CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); + BigDecimal totalBoxNum = result.getTotalBoxNum(); + BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); CuMemberExt memberExt = iCuMemberService.getMemberById(userId); if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); // BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 @@ -216,11 +234,18 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ - if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if(ObjectUtil.isNotEmpty(totalBoxNum) + && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 + && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ canSet = true; } +// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 +// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 +// ){ +// canSet = true; +// } } } } From 75a1b222c9afc2cea14c9cc229e492fcba5e1072 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 16:38:36 +0800 Subject: [PATCH 075/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E4=B8=8D=E9=9C=80=E8=A6=81=E5=A4=9A=E9=80=812?= =?UTF-8?q?=E7=BA=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 5 +++- .../service/impl/RetailOrderServiceImpl.java | 4 +-- .../sale/order/service/ISaOrderService.java | 2 +- .../service/impl/SaOrderServiceImpl.java | 30 ++++++++++++------- 4 files changed, 27 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index c4b592b2..0a7e4ffa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -79,7 +79,10 @@ public class ApiRetailOrderController { .isEnough(false) .build(); - if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { + if (ESpecialArea.REGISTER_AREA.getValue() == levelParam.getSpecialArea()) { + // 注册订单 + levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); + } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { // 升级校验 if (StringUtils.isEmpty(levelParam.getUpgradeMemberCode())) { return AjaxResult.error("升级编号不能为空"); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 5cd598b8..6cff3cb8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -719,7 +719,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade(), newMember.getPkVertex()); newMember.setPkSettleGrade(tmpGrade.getPkId()); newMember.setPkAwards(tmpGrade.getPkAwards()); @@ -735,7 +735,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 升级订单 - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade(), cuMember.getPkVertex()); cuMember.setPkSettleGrade(tmpGrade.getPkId()); resultStr = this.payUpgOrder(saOrderExt, cuMember, null); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index 31a6e27c..ace9d6ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -648,6 +648,6 @@ public interface ISaOrderService extends IService { * @param pkGrade * @return */ - BdGrade handleGradeEnd(List gradeList, Integer pkGrade); + BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 31921788..1db786d5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2504,7 +2504,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 注册专区直接算等级 bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -2518,13 +2518,17 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 当前会员等级 BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { -// // 会员等级大于等于V3(卓越),不能通过升级进行购买了 -// throw new ServiceException("当前已经是可以购买的最高等级"); -// } - if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { - // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); + if (RetailConstants.VERTEX_PK_ID.equals(updateGradeMember.getPkVertex())) { + if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { + // 会员等级大于等于V3(卓越),不能通过升级进行购买了 + throw new ServiceException("当前已经是可以购买的最高等级"); + } + } else { + // 2025.08.01 非雨汐团队会多升2级 + if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { + // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 + throw new ServiceException("当前已经是可以购买的最高等级"); + } } // 获取升级盒数基数 @@ -2539,8 +2543,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl return null; } + // 2025.08.01 非雨汐团队会多升2级 // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -3388,7 +3393,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl * @return */ @Override - public BdGrade handleGradeEnd(List gradeList, Integer pkGrade) { + public BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex) { if (CollectionUtil.isEmpty(gradeList)) { gradeList = iGradeServiceApi.getRetailGradeList().getData(); } @@ -3397,6 +3402,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 临时处理等级 BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); + if (RetailConstants.VERTEX_PK_ID.equals(pkVertex)) { + // 2025.08.01 雨汐团队不参加多送两级活动 + return tmpGrade; + } + if (EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { // V1 给 V3 tmpGrade = gradeList.stream().filter(tmpData -> EGrade.MAKER.getValue() == tmpData.getGradeValue()).findFirst().get(); From 480695e085b2dcf59ffa3a224cc8c792d4853c3a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 16:38:36 +0800 Subject: [PATCH 076/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E4=B8=8D=E9=9C=80=E8=A6=81=E5=A4=9A=E9=80=812?= =?UTF-8?q?=E7=BA=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 5 +++- .../service/impl/RetailOrderServiceImpl.java | 4 +-- .../sale/order/service/ISaOrderService.java | 2 +- .../service/impl/SaOrderServiceImpl.java | 30 ++++++++++++------- 4 files changed, 27 insertions(+), 14 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index c4b592b2..0a7e4ffa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -79,7 +79,10 @@ public class ApiRetailOrderController { .isEnough(false) .build(); - if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { + if (ESpecialArea.REGISTER_AREA.getValue() == levelParam.getSpecialArea()) { + // 注册订单 + levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); + } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { // 升级校验 if (StringUtils.isEmpty(levelParam.getUpgradeMemberCode())) { return AjaxResult.error("升级编号不能为空"); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 5cd598b8..6cff3cb8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -719,7 +719,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade(), newMember.getPkVertex()); newMember.setPkSettleGrade(tmpGrade.getPkId()); newMember.setPkAwards(tmpGrade.getPkAwards()); @@ -735,7 +735,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 升级订单 - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade()); + BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade(), cuMember.getPkVertex()); cuMember.setPkSettleGrade(tmpGrade.getPkId()); resultStr = this.payUpgOrder(saOrderExt, cuMember, null); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index 31a6e27c..ace9d6ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -648,6 +648,6 @@ public interface ISaOrderService extends IService { * @param pkGrade * @return */ - BdGrade handleGradeEnd(List gradeList, Integer pkGrade); + BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 31921788..1db786d5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2504,7 +2504,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 注册专区直接算等级 bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -2518,13 +2518,17 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 当前会员等级 BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { -// // 会员等级大于等于V3(卓越),不能通过升级进行购买了 -// throw new ServiceException("当前已经是可以购买的最高等级"); -// } - if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { - // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); + if (RetailConstants.VERTEX_PK_ID.equals(updateGradeMember.getPkVertex())) { + if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { + // 会员等级大于等于V3(卓越),不能通过升级进行购买了 + throw new ServiceException("当前已经是可以购买的最高等级"); + } + } else { + // 2025.08.01 非雨汐团队会多升2级 + if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { + // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 + throw new ServiceException("当前已经是可以购买的最高等级"); + } } // 获取升级盒数基数 @@ -2539,8 +2543,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl return null; } + // 2025.08.01 非雨汐团队会多升2级 // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId()); + BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); if (null != isPay && EYesNo.YES.getIntValue() == isPay) { // 支付时才进行处理 bdGrade = tmpGrade; @@ -3388,7 +3393,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl * @return */ @Override - public BdGrade handleGradeEnd(List gradeList, Integer pkGrade) { + public BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex) { if (CollectionUtil.isEmpty(gradeList)) { gradeList = iGradeServiceApi.getRetailGradeList().getData(); } @@ -3397,6 +3402,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 临时处理等级 BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); + if (RetailConstants.VERTEX_PK_ID.equals(pkVertex)) { + // 2025.08.01 雨汐团队不参加多送两级活动 + return tmpGrade; + } + if (EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { // V1 给 V3 tmpGrade = gradeList.stream().filter(tmpData -> EGrade.MAKER.getValue() == tmpData.getGradeValue()).findFirst().get(); From 891e2e52d6648d2f984287226021e3e8059bba24 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 16:57:02 +0800 Subject: [PATCH 077/362] =?UTF-8?q?##=20Opt=20-=20systemType=20=E9=BB=98?= =?UTF-8?q?=E8=AE=A42?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/common/core/context/SecurityContextHolder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java index 77476c18..3cd48602 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java @@ -91,7 +91,7 @@ public class SecurityContextHolder { } public static Integer getSystemType() { - return Convert.toInt(get(SecurityConstants.SYSTEM_TYPE), null); + return Convert.toInt(get(SecurityConstants.SYSTEM_TYPE), 2); } public static void setSystemType(String systemType) { From c05a75bbac5efb6e315fd0aaa2f1fabc909cc0f8 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 1 Aug 2025 16:57:36 +0800 Subject: [PATCH 078/362] =?UTF-8?q?##=20Opt=20-=20systemType=20=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E4=BB=8E=E6=9E=9A=E4=B8=BE=E5=8F=96=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/common/core/context/SecurityContextHolder.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java index 3cd48602..11072b1c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/context/SecurityContextHolder.java @@ -5,6 +5,7 @@ import java.util.concurrent.ConcurrentHashMap; import com.alibaba.ttl.TransmittableThreadLocal; import com.hzs.common.core.constant.SecurityConstants; +import com.hzs.common.core.enums.ESystemType; import com.hzs.common.core.text.Convert; import com.hzs.common.core.utils.StringUtils; @@ -91,7 +92,7 @@ public class SecurityContextHolder { } public static Integer getSystemType() { - return Convert.toInt(get(SecurityConstants.SYSTEM_TYPE), 2); + return Convert.toInt(get(SecurityConstants.SYSTEM_TYPE), ESystemType.DEFAULT.getValue()); } public static void setSystemType(String systemType) { From fff195052700fd79dea16e8136458c627590bd1c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 16:58:52 +0800 Subject: [PATCH 079/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E4=B8=8D=E9=9C=80=E8=A6=81=E5=A4=9A=E9=80=812?= =?UTF-8?q?=E7=BA=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../retail/sale/controller/api/ApiRetailOrderController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 0a7e4ffa..92e50b18 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -79,7 +79,7 @@ public class ApiRetailOrderController { .isEnough(false) .build(); - if (ESpecialArea.REGISTER_AREA.getValue() == levelParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == levelParam.getSpecialArea()) { // 注册订单 levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { From 2d31fc206adae0a1bb2f20f1c43b52270f81b5b5 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 1 Aug 2025 16:58:52 +0800 Subject: [PATCH 080/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E4=B8=8D=E9=9C=80=E8=A6=81=E5=A4=9A=E9=80=812?= =?UTF-8?q?=E7=BA=A7=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../retail/sale/controller/api/ApiRetailOrderController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 0a7e4ffa..92e50b18 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -79,7 +79,7 @@ public class ApiRetailOrderController { .isEnough(false) .build(); - if (ESpecialArea.REGISTER_AREA.getValue() == levelParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == levelParam.getSpecialArea()) { // 注册订单 levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { From dc7d8f1e403f0f399b55f01a00a128af679eebce Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:04:15 +0800 Subject: [PATCH 081/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 33 ++++++++++++++++--- .../hzs/sale/wares/mapper/BdWaresMapper.java | 8 +++++ .../sale/wares/service/IBdWaresService.java | 8 +++++ .../service/impl/BdWaresServiceImpl.java | 4 +++ .../mapper/sale/wares/BdWaresMapper.xml | 13 ++++++++ 5 files changed, 62 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 6cff3cb8..29b2f6a1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.constant.*; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.enums.retail.ERetailWaresPrice; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; @@ -35,10 +34,10 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; import com.hzs.sale.order.service.impl.SaOrderHandle; -import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.wares.service.IBdWaresDetailService; import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.sale.wares.service.IBdWaresRangeService; +import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAwardsServiceApi; @@ -72,6 +71,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderWaresService iSaOrderWaresService; @Autowired + private IBdWaresService iBdWaresService; + @Autowired private IBdWaresExtendService iBdWaresExtendService; @Autowired private IBdWaresDetailService iBdWaresDetailService; @@ -278,6 +279,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 当前盒数 BigDecimal boxNum = BigDecimal.ZERO; + // 2025.08.02 雨汐团队,普通复购、重消品不累计盒数 + List tmpBoxWaresList = new ArrayList<>(); + if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { + tmpBoxWaresList = iBdWaresService.listWaresCodeByVertex(RetailConstants.VERTEX_PK_ID); + } + } + // // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 // this.checkWaresLimit(cuMember.getPkId(), orderParam.getSpecialArea(), waresDetailExtList, boxProductList); @@ -303,8 +313,23 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { + // 雨汐团队,复购、重消盒数品 + if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } else { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } else { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index 3534857d..a5bf4493 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -149,4 +149,12 @@ public interface BdWaresMapper extends BaseMapper { @Param("pkProduct") Integer pkProduct, @Param("specialArea") Integer specialArea); + /** + * 根据体系获取盒数商品编码 + * + * @param pkVertex + * @return + */ + List listWaresCodeByVertex(@Param("pkVertex") Long pkVertex); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 57410693..5f7fa13f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -221,4 +221,12 @@ public interface IBdWaresService extends IService { */ List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea); + /** + * 根据体系获取盒数商品编码 + * + * @param pkVertex + * @return + */ + List listWaresCodeByVertex(Long pkVertex); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 0fdf6c5a..a329f4e5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1171,4 +1171,8 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listBoxProduct(boxWaresList, pkProduct, specialArea); } + @Override + public List listWaresCodeByVertex(Long pkVertex) { + return baseMapper.listWaresCodeByVertex(pkVertex); + } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 4ab09698..29933cb4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -473,4 +473,17 @@ order by bw.wares_code + + + From 7873bcba151d8ae990dc01afba1efa7c13ac442e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:04:15 +0800 Subject: [PATCH 082/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 33 ++++++++++++++++--- .../hzs/sale/wares/mapper/BdWaresMapper.java | 8 +++++ .../sale/wares/service/IBdWaresService.java | 8 +++++ .../service/impl/BdWaresServiceImpl.java | 4 +++ .../mapper/sale/wares/BdWaresMapper.xml | 13 ++++++++ 5 files changed, 62 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 6cff3cb8..29b2f6a1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.constant.*; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.enums.retail.ERetailWaresPrice; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; @@ -35,10 +34,10 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; import com.hzs.sale.order.service.impl.SaOrderHandle; -import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.wares.service.IBdWaresDetailService; import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.sale.wares.service.IBdWaresRangeService; +import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAwardsServiceApi; @@ -72,6 +71,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderWaresService iSaOrderWaresService; @Autowired + private IBdWaresService iBdWaresService; + @Autowired private IBdWaresExtendService iBdWaresExtendService; @Autowired private IBdWaresDetailService iBdWaresDetailService; @@ -278,6 +279,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 当前盒数 BigDecimal boxNum = BigDecimal.ZERO; + // 2025.08.02 雨汐团队,普通复购、重消品不累计盒数 + List tmpBoxWaresList = new ArrayList<>(); + if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { + tmpBoxWaresList = iBdWaresService.listWaresCodeByVertex(RetailConstants.VERTEX_PK_ID); + } + } + // // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 // this.checkWaresLimit(cuMember.getPkId(), orderParam.getSpecialArea(), waresDetailExtList, boxProductList); @@ -303,8 +313,23 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { + // 雨汐团队,复购、重消盒数品 + if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } else { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } else { + // 商品是盒数商品,需要累计数量 + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + } + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index 3534857d..a5bf4493 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -149,4 +149,12 @@ public interface BdWaresMapper extends BaseMapper { @Param("pkProduct") Integer pkProduct, @Param("specialArea") Integer specialArea); + /** + * 根据体系获取盒数商品编码 + * + * @param pkVertex + * @return + */ + List listWaresCodeByVertex(@Param("pkVertex") Long pkVertex); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 57410693..5f7fa13f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -221,4 +221,12 @@ public interface IBdWaresService extends IService { */ List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea); + /** + * 根据体系获取盒数商品编码 + * + * @param pkVertex + * @return + */ + List listWaresCodeByVertex(Long pkVertex); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 0fdf6c5a..a329f4e5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1171,4 +1171,8 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listBoxProduct(boxWaresList, pkProduct, specialArea); } + @Override + public List listWaresCodeByVertex(Long pkVertex) { + return baseMapper.listWaresCodeByVertex(pkVertex); + } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 4ab09698..29933cb4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -473,4 +473,17 @@ order by bw.wares_code + + + From ed8f2f791ff1f5db0c77353f88362d40e6176950 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:25:25 +0800 Subject: [PATCH 083/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 29b2f6a1..782bfa74 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -281,8 +281,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { BigDecimal boxNum = BigDecimal.ZERO; // 2025.08.02 雨汐团队,普通复购、重消品不累计盒数 List tmpBoxWaresList = new ArrayList<>(); - if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { tmpBoxWaresList = iBdWaresService.listWaresCodeByVertex(RetailConstants.VERTEX_PK_ID); } @@ -313,8 +313,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { // 雨汐团队,复购、重消盒数品 if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { From 784f025034b73281287aad773e6bbd082a9e7748 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:25:25 +0800 Subject: [PATCH 084/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 29b2f6a1..782bfa74 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -281,8 +281,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { BigDecimal boxNum = BigDecimal.ZERO; // 2025.08.02 雨汐团队,普通复购、重消品不累计盒数 List tmpBoxWaresList = new ArrayList<>(); - if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { tmpBoxWaresList = iBdWaresService.listWaresCodeByVertex(RetailConstants.VERTEX_PK_ID); } @@ -313,8 +313,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - if (ESpecialArea.RETAIL_REPURCHASE.getEnable() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getEnable() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() + || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { // 雨汐团队,复购、重消盒数品 if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { From 3d39437bf23ecca9a5a6d5695dc7fd43df15af1d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:36:50 +0800 Subject: [PATCH 085/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/sale/wares/BdWaresMapper.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 29933cb4..6b34ddfd 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -482,6 +482,7 @@ and bw.del_flag = 0 and bw.special_area in (43, 44) where bwa.del_flag = 0 + and bwa.authority_type = 1 and bwa.pk_member in (select pk_member from bd_vertex bv where bv.pk_id = #{pkVertex}) From e89876be1a014a6e718e2ff09c726c92099e263d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 2 Aug 2025 12:36:50 +0800 Subject: [PATCH 086/362] =?UTF-8?q?##=20=E9=9B=A8=E6=B1=90=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=8F=AA=E6=9C=89=E8=87=AA=E5=B7=B1=E7=9A=84=E5=A4=8D?= =?UTF-8?q?=E8=B4=AD=E3=80=81=E9=87=8D=E6=B6=88=E5=95=86=E5=93=81=E6=89=8D?= =?UTF-8?q?=E7=B4=AF=E7=9B=92=E6=95=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/sale/wares/BdWaresMapper.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 29933cb4..6b34ddfd 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -482,6 +482,7 @@ and bw.del_flag = 0 and bw.special_area in (43, 44) where bwa.del_flag = 0 + and bwa.authority_type = 1 and bwa.pk_member in (select pk_member from bd_vertex bv where bv.pk_id = #{pkVertex}) From a4f5cd489960a8ba0afa3ccbcf8b0ac198e7a6a2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 4 Aug 2025 13:29:04 +0800 Subject: [PATCH 087/362] =?UTF-8?q?##=20=E4=BB=93=E5=82=A8=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=B7=BB=E5=8A=A0=E4=BB=93=E5=BA=93=E7=BC=96=E5=8F=B7?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml index c2eec23a..3694fe63 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml @@ -54,6 +54,7 @@ bp.product_code, bp.product_name, bp.shipping_channel, + bp.wms_code, sdi.SPECS_NAME, sdi.quantity, soi.order_status, @@ -219,6 +220,7 @@ bp.product_code, bp.product_name, bp.shipping_channel, + bp.wms_code, sdi.SPECS_NAME, sdi.quantity, soi.order_status, From 91b7efd6f2ecf0e89065ea4cd74d0de50e349bfc Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 4 Aug 2025 13:29:04 +0800 Subject: [PATCH 088/362] =?UTF-8?q?##=20=E4=BB=93=E5=82=A8=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=B7=BB=E5=8A=A0=E4=BB=93=E5=BA=93=E7=BC=96=E5=8F=B7?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml index c2eec23a..3694fe63 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/deliver/SaDeliverItemsMapper.xml @@ -54,6 +54,7 @@ bp.product_code, bp.product_name, bp.shipping_channel, + bp.wms_code, sdi.SPECS_NAME, sdi.quantity, soi.order_status, @@ -219,6 +220,7 @@ bp.product_code, bp.product_name, bp.shipping_channel, + bp.wms_code, sdi.SPECS_NAME, sdi.quantity, soi.order_status, From 4225e554d499d0c54cdb0ae2068b038c07c17502 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 6 Aug 2025 09:03:58 +0800 Subject: [PATCH 089/362] =?UTF-8?q?##=20Opt=20-=20=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=A4=B1=E6=95=88=E4=B9=8B=E5=90=8E=EF=BC=8C?= =?UTF-8?q?=E5=86=8D=E6=AC=A1=E9=9C=80=E8=A6=81=E9=80=89=E6=8B=A9=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=EF=BC=8C=E9=9C=80=E8=A6=81=E6=9C=88=E6=80=BB=E4=B8=9A?= =?UTF-8?q?=E7=BB=A930=E4=B8=87=EF=BC=8C=E5=B0=8F=E5=B8=82=E5=9C=BA10?= =?UTF-8?q?=E4=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 44 +++++++++++-- .../ICuMemberRetailAchieveService.java | 8 +-- .../CuMemberRetailAchieveServiceImpl.java | 65 +++++++++++++++++-- .../member/utils/DataStatisticsUtil.java | 52 +++++++++++++++ .../retail/member/vo/BigAndSmallRangeVO.java | 18 +++++ .../hzs/retail/member/vo/CurrentMonthVO.java | 19 ++++++ 6 files changed, 193 insertions(+), 13 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 909f774e..34c86e7c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -45,6 +45,8 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; @@ -109,7 +111,7 @@ public class RetailMemberController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean isFirst = countNum > 0; + boolean notFirst = countNum > 0; log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); if (null != cuMemberRetailRegionExt) { @@ -155,9 +157,24 @@ public class RetailMemberController extends BaseController { && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + if(notFirst){ + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if(ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } } // if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) // && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 @@ -216,6 +233,7 @@ public class RetailMemberController extends BaseController { CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); + if (null != cuMemberRetailRegionExt) { if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { canSet = true; @@ -234,12 +252,28 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean notFirst = countNum > 0; GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - canSet = true; + if(notFirst){ + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if(ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + canSet = true; + } + }else{ + canSet = true; + } } // if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 // && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 9f369375..464ed89e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; import com.hzs.retail.member.utils.PageResult; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; -import com.hzs.retail.member.vo.MarketDynamicsDetailVO; +import com.hzs.retail.member.vo.*; import java.util.List; import java.util.Map; @@ -115,5 +112,8 @@ public interface ICuMemberRetailAchieveService extends IService getMarketDynamics(MarketDynamicsQueryDateParam param); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index c9d25241..549489da 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -20,10 +20,7 @@ import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; -import com.hzs.retail.member.vo.MarketDynamicsDetailVO; +import com.hzs.retail.member.vo.*; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -360,6 +357,22 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); + pkMemberList.add(userId); + CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() + .memberRetailTable(memberRetailTable) + .memberRetailSTable(memberSecondTable) + .pkMemberList(pkMemberList).systemType(systemType).build(); + List statisticsDetailVOList = baseMapper.getRetailDataStatisticsDetail(memberAchieveVO); + CuMember cuMember = iCuMemberService.queryMember(userId); + BigAndSmallRangeVO bigAndSmallRangeVO = DataStatisticsUtil.getBigAndSmallRangeVO(statisticsDetailVOList, cuMember); + MarketDynamicsQueryDateParam param = new MarketDynamicsQueryDateParam(); + DataStatisticsUtil.setQueryDateParam(param); + param.setCurrentDayTableName(memberSecondTable); + param.setCurrentMonthTableName(memberRetailTable); + param.setLastMonthTableName(getDayTableName(param.getLastMonthDate())); + List detailVOList = baseMapper.getMarketDynamicsDetail(param); + BigDecimal totalMouthPV = detailVOList.stream() + .map(MarketDynamicsDetailVO::getCurrentMonthPv) + .filter(Objects::nonNull) + .reduce(BigDecimal.ZERO, BigDecimal::add); + BigDecimal bigMouthPV = BigDecimal.ZERO; + MarketDynamicsDetailVO bigRange = detailVOList.stream().filter(vo -> { + assert bigAndSmallRangeVO != null; + return vo.getPkId().equals(bigAndSmallRangeVO.getBigRangeId()); + }).findFirst().orElse(null); + if(ObjectUtil.isNotEmpty(bigRange)){ + bigMouthPV = bigRange.getCurrentMonthPv(); + } + BigDecimal smallMountPV = totalMouthPV.subtract(bigMouthPV); + return CurrentMonthVO.builder().smallCurrentMonthPV(smallMountPV).totalCurrentMonthPV(totalMouthPV).build(); + } + @Override public PageResult getMarketDynamics(MarketDynamicsQueryDateParam param) { Long pkMember = SecurityUtils.getUserId(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java index e78da820..2c9d0ad1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.base.CuMember; import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; +import com.hzs.retail.member.vo.BigAndSmallRangeVO; import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; import com.hzs.retail.member.vo.MarketDynamicsDetailVO; @@ -309,4 +310,55 @@ public class DataStatisticsUtil { // .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) // .build(); } + + + public static CuMemberRetailDataStatisticsDetailVO getBigRangeWithPV(List detailVOList, CuMember cuMember){ + Long pkId = cuMember.getPkId(); + // 非激活直接返0 + // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + return CuMemberRetailDataStatisticsDetailVO.builder() + .build(); + } + calcDetailVOTotalField(detailVOList, pkId); + addVirtualBranch(detailVOList, pkId); + CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + // 昨日非激活 排除昨日日结表数据 + excludeDailySettlementData(detailVOList); + } + else{ + // 排除注水数据 + excludeWaterInjectionData(detailVOList, pkId); + } + return getBigRangePVDetailVO(detailVOList, pkId); + } + + + public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember){ + Long pkId = cuMember.getPkId(); + BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO(); + // 非激活直接返0 + // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + return null; + } + calcDetailVOTotalField(detailVOList, pkId); + addVirtualBranch(detailVOList, pkId); + CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + // 昨日非激活 排除昨日日结表数据 + excludeDailySettlementData(detailVOList); + } + else{ + // 排除注水数据 + excludeWaterInjectionData(detailVOList, pkId); + } + CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId); + bigAndSmallRangeVO.setBigRangeId(big.getPkId()); + List smallIdList = detailVOList.stream() + .map(CuMemberRetailDataStatisticsDetailVO::getPkId).filter(id -> !id.equals(big.getPkId())).collect(Collectors.toList()); + bigAndSmallRangeVO.setSmallRangeId(smallIdList); + return bigAndSmallRangeVO; + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java new file mode 100644 index 00000000..8ca2c923 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java @@ -0,0 +1,18 @@ +package com.hzs.retail.member.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class BigAndSmallRangeVO implements Serializable { + private Long bigRangeId; + private List smallRangeId; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java new file mode 100644 index 00000000..9dee3c48 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java @@ -0,0 +1,19 @@ +package com.hzs.retail.member.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class CurrentMonthVO implements Serializable { + private BigDecimal totalCurrentMonthPV; + private BigDecimal smallCurrentMonthPV; +} From 19aeb87873de23c837f21d02f9b743730803c022 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 6 Aug 2025 09:03:58 +0800 Subject: [PATCH 090/362] =?UTF-8?q?##=20Opt=20-=20=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=A4=B1=E6=95=88=E4=B9=8B=E5=90=8E=EF=BC=8C?= =?UTF-8?q?=E5=86=8D=E6=AC=A1=E9=9C=80=E8=A6=81=E9=80=89=E6=8B=A9=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=EF=BC=8C=E9=9C=80=E8=A6=81=E6=9C=88=E6=80=BB=E4=B8=9A?= =?UTF-8?q?=E7=BB=A930=E4=B8=87=EF=BC=8C=E5=B0=8F=E5=B8=82=E5=9C=BA10?= =?UTF-8?q?=E4=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/RetailMemberController.java | 44 +++++++++++-- .../ICuMemberRetailAchieveService.java | 8 +-- .../CuMemberRetailAchieveServiceImpl.java | 65 +++++++++++++++++-- .../member/utils/DataStatisticsUtil.java | 52 +++++++++++++++ .../retail/member/vo/BigAndSmallRangeVO.java | 18 +++++ .../hzs/retail/member/vo/CurrentMonthVO.java | 19 ++++++ 6 files changed, 193 insertions(+), 13 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 909f774e..34c86e7c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -45,6 +45,8 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; @@ -109,7 +111,7 @@ public class RetailMemberController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean isFirst = countNum > 0; + boolean notFirst = countNum > 0; log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); if (null != cuMemberRetailRegionExt) { @@ -155,9 +157,24 @@ public class RetailMemberController extends BaseController { && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); + if(notFirst){ + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if(ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } + }else{ + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } } // if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) // && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 @@ -216,6 +233,7 @@ public class RetailMemberController extends BaseController { CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); + if (null != cuMemberRetailRegionExt) { if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { canSet = true; @@ -234,12 +252,28 @@ public class RetailMemberController extends BaseController { canSet = true; } }else{ + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean notFirst = countNum > 0; GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); if(ObjectUtil.isNotEmpty(totalBoxNum) && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 ){ - canSet = true; + if(notFirst){ + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if(ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 + ){ + canSet = true; + } + }else{ + canSet = true; + } } // if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 // && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 9f369375..464ed89e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; import com.hzs.retail.member.utils.PageResult; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; -import com.hzs.retail.member.vo.MarketDynamicsDetailVO; +import com.hzs.retail.member.vo.*; import java.util.List; import java.util.Map; @@ -115,5 +112,8 @@ public interface ICuMemberRetailAchieveService extends IService getMarketDynamics(MarketDynamicsQueryDateParam param); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index c9d25241..549489da 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -20,10 +20,7 @@ import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; -import com.hzs.retail.member.vo.CuMemberRetailAchieveVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; -import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; -import com.hzs.retail.member.vo.MarketDynamicsDetailVO; +import com.hzs.retail.member.vo.*; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -360,6 +357,22 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); + pkMemberList.add(userId); + CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() + .memberRetailTable(memberRetailTable) + .memberRetailSTable(memberSecondTable) + .pkMemberList(pkMemberList).systemType(systemType).build(); + List statisticsDetailVOList = baseMapper.getRetailDataStatisticsDetail(memberAchieveVO); + CuMember cuMember = iCuMemberService.queryMember(userId); + BigAndSmallRangeVO bigAndSmallRangeVO = DataStatisticsUtil.getBigAndSmallRangeVO(statisticsDetailVOList, cuMember); + MarketDynamicsQueryDateParam param = new MarketDynamicsQueryDateParam(); + DataStatisticsUtil.setQueryDateParam(param); + param.setCurrentDayTableName(memberSecondTable); + param.setCurrentMonthTableName(memberRetailTable); + param.setLastMonthTableName(getDayTableName(param.getLastMonthDate())); + List detailVOList = baseMapper.getMarketDynamicsDetail(param); + BigDecimal totalMouthPV = detailVOList.stream() + .map(MarketDynamicsDetailVO::getCurrentMonthPv) + .filter(Objects::nonNull) + .reduce(BigDecimal.ZERO, BigDecimal::add); + BigDecimal bigMouthPV = BigDecimal.ZERO; + MarketDynamicsDetailVO bigRange = detailVOList.stream().filter(vo -> { + assert bigAndSmallRangeVO != null; + return vo.getPkId().equals(bigAndSmallRangeVO.getBigRangeId()); + }).findFirst().orElse(null); + if(ObjectUtil.isNotEmpty(bigRange)){ + bigMouthPV = bigRange.getCurrentMonthPv(); + } + BigDecimal smallMountPV = totalMouthPV.subtract(bigMouthPV); + return CurrentMonthVO.builder().smallCurrentMonthPV(smallMountPV).totalCurrentMonthPV(totalMouthPV).build(); + } + @Override public PageResult getMarketDynamics(MarketDynamicsQueryDateParam param) { Long pkMember = SecurityUtils.getUserId(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java index e78da820..2c9d0ad1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java @@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.base.CuMember; import com.hzs.retail.member.param.MarketDynamicsQueryDateParam; +import com.hzs.retail.member.vo.BigAndSmallRangeVO; import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsResultVO; import com.hzs.retail.member.vo.MarketDynamicsDetailVO; @@ -309,4 +310,55 @@ public class DataStatisticsUtil { // .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) // .build(); } + + + public static CuMemberRetailDataStatisticsDetailVO getBigRangeWithPV(List detailVOList, CuMember cuMember){ + Long pkId = cuMember.getPkId(); + // 非激活直接返0 + // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + return CuMemberRetailDataStatisticsDetailVO.builder() + .build(); + } + calcDetailVOTotalField(detailVOList, pkId); + addVirtualBranch(detailVOList, pkId); + CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + // 昨日非激活 排除昨日日结表数据 + excludeDailySettlementData(detailVOList); + } + else{ + // 排除注水数据 + excludeWaterInjectionData(detailVOList, pkId); + } + return getBigRangePVDetailVO(detailVOList, pkId); + } + + + public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember){ + Long pkId = cuMember.getPkId(); + BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO(); + // 非激活直接返0 + // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + return null; + } + calcDetailVOTotalField(detailVOList, pkId); + addVirtualBranch(detailVOList, pkId); + CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); + if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + // 昨日非激活 排除昨日日结表数据 + excludeDailySettlementData(detailVOList); + } + else{ + // 排除注水数据 + excludeWaterInjectionData(detailVOList, pkId); + } + CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId); + bigAndSmallRangeVO.setBigRangeId(big.getPkId()); + List smallIdList = detailVOList.stream() + .map(CuMemberRetailDataStatisticsDetailVO::getPkId).filter(id -> !id.equals(big.getPkId())).collect(Collectors.toList()); + bigAndSmallRangeVO.setSmallRangeId(smallIdList); + return bigAndSmallRangeVO; + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java new file mode 100644 index 00000000..8ca2c923 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/BigAndSmallRangeVO.java @@ -0,0 +1,18 @@ +package com.hzs.retail.member.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class BigAndSmallRangeVO implements Serializable { + private Long bigRangeId; + private List smallRangeId; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java new file mode 100644 index 00000000..9dee3c48 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CurrentMonthVO.java @@ -0,0 +1,19 @@ +package com.hzs.retail.member.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class CurrentMonthVO implements Serializable { + private BigDecimal totalCurrentMonthPV; + private BigDecimal smallCurrentMonthPV; +} From bc8ac2975751f43bca4e100d90b0ced100af176c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 09:41:29 +0800 Subject: [PATCH 091/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 782bfa74..3fdd9fde 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -789,8 +789,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 订单商品拆分数据 List orderWaresList = new ArrayList<>(); - // 订单商品map(key:商品主键-商品价格,value:商品数量) - Map orderWaresMap = new HashMap<>(); + // 订单商品拆分map(key:商品主键,value:商品数量) + Map orderWaresMap = new HashMap<>(); + // 订单商品价格拆分map(key:商品主键,value:商品价格) + Map orderWaresPriceMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) @@ -812,14 +814,18 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 指定商品拆分 并且 非赠品 if (boxProductList.contains(saOrderItems.getWareCode()) && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); - // key: 商品ID-商品价格(产品价格*产品数量) - String key = saOrderItems.getPkWares() + "-" + (saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity()))); - if (orderWaresMap.containsKey(key)) { - BigDecimal tmpBoxNum = orderWaresMap.get(key).add(boxNum); - orderWaresMap.put(key, tmpBoxNum); + // 商品数量 + BigDecimal waresQuantity = new BigDecimal(saOrderItems.getWaresQuantity()); + // 盒数 = 商品上传盒数 * 商品数量 + BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); + orderWaresMap.put(saOrderItems.getPkWares(), boxNum); + // 价格 = 商品上传价格 * 商品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(waresQuantity); + if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { + BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); + orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); } else { - orderWaresMap.put(key, boxNum); + orderWaresPriceMap.put(saOrderItems.getPkWares(), waresPrice); } waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); @@ -831,11 +837,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (orderWaresMap.size() > 0) { // 处理订单商品拆分数据 - for (String key : orderWaresMap.keySet()) { + for (Integer key : orderWaresMap.keySet()) { SaOrderWares saOrderWares = SaOrderWares.builder() .pkOrder(saOrderExt.getPkId()) - .pkWares(Integer.parseInt(key.split("-")[0])) - .waresPrice(new BigDecimal(key.split("-")[1])) + .pkWares(key) + .waresPrice(orderWaresPriceMap.get(key)) .waresQuantity(orderWaresMap.get(key)) .build(); saOrderWares.setPkCreator(saOrderExt.getPkCreator()); From 9dc2b430c2f80f11eb62c7c2dba36560120c55c3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 09:41:29 +0800 Subject: [PATCH 092/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 30 +++++++++++-------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 782bfa74..3fdd9fde 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -789,8 +789,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 订单商品拆分数据 List orderWaresList = new ArrayList<>(); - // 订单商品map(key:商品主键-商品价格,value:商品数量) - Map orderWaresMap = new HashMap<>(); + // 订单商品拆分map(key:商品主键,value:商品数量) + Map orderWaresMap = new HashMap<>(); + // 订单商品价格拆分map(key:商品主键,value:商品价格) + Map orderWaresPriceMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) @@ -812,14 +814,18 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 指定商品拆分 并且 非赠品 if (boxProductList.contains(saOrderItems.getWareCode()) && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); - // key: 商品ID-商品价格(产品价格*产品数量) - String key = saOrderItems.getPkWares() + "-" + (saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity()))); - if (orderWaresMap.containsKey(key)) { - BigDecimal tmpBoxNum = orderWaresMap.get(key).add(boxNum); - orderWaresMap.put(key, tmpBoxNum); + // 商品数量 + BigDecimal waresQuantity = new BigDecimal(saOrderItems.getWaresQuantity()); + // 盒数 = 商品上传盒数 * 商品数量 + BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); + orderWaresMap.put(saOrderItems.getPkWares(), boxNum); + // 价格 = 商品上传价格 * 商品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(waresQuantity); + if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { + BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); + orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); } else { - orderWaresMap.put(key, boxNum); + orderWaresPriceMap.put(saOrderItems.getPkWares(), waresPrice); } waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); @@ -831,11 +837,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (orderWaresMap.size() > 0) { // 处理订单商品拆分数据 - for (String key : orderWaresMap.keySet()) { + for (Integer key : orderWaresMap.keySet()) { SaOrderWares saOrderWares = SaOrderWares.builder() .pkOrder(saOrderExt.getPkId()) - .pkWares(Integer.parseInt(key.split("-")[0])) - .waresPrice(new BigDecimal(key.split("-")[1])) + .pkWares(key) + .waresPrice(orderWaresPriceMap.get(key)) .waresQuantity(orderWaresMap.get(key)) .build(); saOrderWares.setPkCreator(saOrderExt.getPkCreator()); From 26231bc691d657554926e9e680bfa2be00c199b8 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 10:18:12 +0800 Subject: [PATCH 093/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 3fdd9fde..fced33ed 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -292,6 +292,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 // this.checkWaresLimit(cuMember.getPkId(), orderParam.getSpecialArea(), waresDetailExtList, boxProductList); + // 设置已经累计盒数的商品列表 + List tmpBoxWares = new ArrayList<>(); + // 遍历生成订单明细数据 for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { // // 价格KEY(商品编号 + 价格) @@ -319,15 +322,24 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 雨汐团队,复购、重消盒数品 if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } else { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } else { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } @@ -819,8 +831,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 盒数 = 商品上传盒数 * 商品数量 BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - // 价格 = 商品上传价格 * 商品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(waresQuantity); + + // 价格 = 产品上传价格 * 产品数量 * 商品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())).multiply(waresQuantity); if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); From 0c7a1b77ad608d9e07af0a934ae6b5c75d67b90d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 10:18:12 +0800 Subject: [PATCH 094/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 3fdd9fde..fced33ed 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -292,6 +292,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 // this.checkWaresLimit(cuMember.getPkId(), orderParam.getSpecialArea(), waresDetailExtList, boxProductList); + // 设置已经累计盒数的商品列表 + List tmpBoxWares = new ArrayList<>(); + // 遍历生成订单明细数据 for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { // // 价格KEY(商品编号 + 价格) @@ -319,15 +322,24 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 雨汐团队,复购、重消盒数品 if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } else { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } else { // 商品是盒数商品,需要累计数量 - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { + boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); + tmpBoxWares.add(waresDetailExt.getWaresCode()); + } } } @@ -819,8 +831,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 盒数 = 商品上传盒数 * 商品数量 BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - // 价格 = 商品上传价格 * 商品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(waresQuantity); + + // 价格 = 产品上传价格 * 产品数量 * 商品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())).multiply(waresQuantity); if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); From e0591fc181683d3f98a767417186349ff79db1a3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 10:31:20 +0800 Subject: [PATCH 095/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index fced33ed..f7cd7d24 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -826,14 +826,12 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 指定商品拆分 并且 非赠品 if (boxProductList.contains(saOrderItems.getWareCode()) && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - // 商品数量 - BigDecimal waresQuantity = new BigDecimal(saOrderItems.getWaresQuantity()); // 盒数 = 商品上传盒数 * 商品数量 - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); + BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - // 价格 = 产品上传价格 * 产品数量 * 商品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())).multiply(waresQuantity); + // 价格 = 产品上传价格 * 产品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())); if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); From 53fd109990a00bfe60634594402c90735991b24a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 6 Aug 2025 10:31:20 +0800 Subject: [PATCH 096/362] =?UTF-8?q?##=20=E6=B3=A8=E5=86=8C=E3=80=81?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E4=B8=8A=E4=BC=A0=E7=9B=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E9=A2=84=E5=A4=84=E7=90=86=E5=88=86=E6=8B=86=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index fced33ed..f7cd7d24 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -826,14 +826,12 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 指定商品拆分 并且 非赠品 if (boxProductList.contains(saOrderItems.getWareCode()) && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - // 商品数量 - BigDecimal waresQuantity = new BigDecimal(saOrderItems.getWaresQuantity()); // 盒数 = 商品上传盒数 * 商品数量 - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(waresQuantity); + BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - // 价格 = 产品上传价格 * 产品数量 * 商品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())).multiply(waresQuantity); + // 价格 = 产品上传价格 * 产品数量,不存在直接放入,存在则进行累加 + BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())); if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); From 23253474f1715afed292aa58dfb1ca28eac5621e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 7 Aug 2025 16:28:07 +0800 Subject: [PATCH 097/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E6=97=A7?= =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E7=9B=B8=E5=85=B3=E5=86=85=E5=AE=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/third/sms/ISmsServiceApi.java | 3 - .../com/hzs/third/sms/dto/SmsServiceDTO.java | 57 ----- .../hzs/system/sms/service/ISmsService.java | 6 +- .../sms/service/impl/SmsServiceImpl.java | 6 +- .../core/constant/msg/CommonMsgConstants.java | 20 +- .../hzs/common/core/enums/ESmsTemplate.java | 58 ----- .../com/hzs/third/sms/config/SmsConfig.java | 27 --- .../manage/SmsRecordController.java | 28 --- .../hzs/third/sms/param/SmsCreateParam.java | 59 ----- .../third/sms/param/SmsRecordQueryParam.java | 6 +- .../sms/param/SmsTemplateQueryParam.java | 6 +- .../sms/provider/SmsServiceProvider.java | 2 - .../hzs/third/sms/service/ISmsService.java | 22 -- .../third/sms/service/ITSmsRecordService.java | 11 - .../sms/service/ITSmsTemplateService.java | 3 - .../sms/service/impl/SmsServiceImpl.java | 99 -------- .../service/impl/TSmsRecordServiceImpl.java | 222 ------------------ .../java/com/hzs/third/sms/util/SmsUtil.java | 94 +------- bd-third/src/main/resources/bootstrap.yml | 18 -- 19 files changed, 14 insertions(+), 733 deletions(-) delete mode 100644 bd-api/bd-api-third/src/main/java/com/hzs/third/sms/dto/SmsServiceDTO.java delete mode 100644 bd-third/src/main/java/com/hzs/third/sms/param/SmsCreateParam.java delete mode 100644 bd-third/src/main/java/com/hzs/third/sms/service/ISmsService.java delete mode 100644 bd-third/src/main/java/com/hzs/third/sms/service/impl/SmsServiceImpl.java diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java index b3c388d5..d8e34a8b 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java @@ -2,12 +2,9 @@ package com.hzs.third.sms; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EAliSmsTemplate; -import com.hzs.third.sms.dto.SmsServiceDTO; /** * 短信服务接口 - * - * @author hzs */ public interface ISmsServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/dto/SmsServiceDTO.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/dto/SmsServiceDTO.java deleted file mode 100644 index 33b794ba..00000000 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/dto/SmsServiceDTO.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.hzs.third.sms.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.List; - -/** - * 短信服务参数DTO - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class SmsServiceDTO implements Serializable { - - private static final long serialVersionUID = 9096130356166559652L; - - /** - * 短信模板编号 -- 必传 - */ - private String templateCode; - - /** - * 发送会员ID - */ - private Long pkMember; - - /** - * 发送手机号 -- 必传 - */ - private String phone; - - /** - * 参数列表 -- 根据模板实际参数确定 - */ - private List paramList; - - /** - * 操作人 - */ - private Long userId; - - /** - * 操作人所属国家 -- 必传 - */ - private Integer pkCountry; - - /** - * 是否记录发送日志(默认为记录,false=不记录日志) - */ - private Boolean saveFlag; - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/ISmsService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/ISmsService.java index 01088623..3f8477bc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/ISmsService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/ISmsService.java @@ -3,11 +3,7 @@ package com.hzs.system.sms.service; import com.hzs.common.core.enums.EAliSmsTemplate; /** - * @Description: 短信服务 - * @Author: jiang chao - * @Time: 2024/8/5 14:34 - * @Classname: ISmsService - * @PackageName: com.hzs.system.sms.service + * 短信服务 */ public interface ISmsService { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/impl/SmsServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/impl/SmsServiceImpl.java index f9f13b11..c5c48ff0 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/impl/SmsServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/sms/service/impl/SmsServiceImpl.java @@ -16,11 +16,7 @@ import org.springframework.stereotype.Service; import java.util.concurrent.TimeUnit; /** - * @Description: 短信服务 - * @author: jiang chao - * @Time: 2024/8/5 14:34 - * @Classname: SmsServiceImpl - * @PackageName: com.hzs.system.sms.service.impl + * 短信服务 */ @Slf4j @Service diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/CommonMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/CommonMsgConstants.java index 369575d8..06d0e2a2 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/CommonMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/CommonMsgConstants.java @@ -1,45 +1,41 @@ package com.hzs.common.core.constant.msg; /** - * @Description: 公用类提示 - * @Author: jiang chao - * @Time: 2023/4/11 11:31 - * @Classname: CommonMsgConstants - * @PackageName: com.hzs.common.core.constant.msg + * 公用类提示 */ public class CommonMsgConstants { /** * 前后台数据传入中少了部分数据参数 -- 缺少参数 */ -public static final String MISSING_PARAM = "缺少参数"; + public static final String MISSING_PARAM = "缺少参数"; /** * 接口数据处理因代码原因未成功 -- 操作失败 */ -public static final String OPERATION_FAILED = "操作失败"; + public static final String OPERATION_FAILED = "操作失败"; /** * 一般用于三方对接,处理失败,用户刷新后可以重新进行操作提示 -- 操作失败,请刷新后重试 */ -public static final String OPERATION_FAILED_FLUSH = "操作失败,请刷新后重试"; + public static final String OPERATION_FAILED_FLUSH = "操作失败,请刷新后重试"; /** * 用户已转结算国,不能进行处理相关操作 -- 用户已转结算国,不能进行操作 */ -public static final String SETTLEMENT_COUNTRY_NOT_OPERATE = "用户已转结算国,不能进行操作"; + public static final String SETTLEMENT_COUNTRY_NOT_OPERATE = "用户已转结算国,不能进行操作"; /** * 签呈处理失败 -- 签呈处理失败 */ -public static final String APPROVAL_ERROR = "签呈处理失败"; + public static final String APPROVAL_ERROR = "签呈处理失败"; /** * 签呈审批时,签呈数据不存在或者被删除 -- 签呈处理失败:签呈不存在 */ -public static final String APPROVAL_NOT_EXIST = "签呈处理失败:签呈不存在"; + public static final String APPROVAL_NOT_EXIST = "签呈处理失败:签呈不存在"; /** * 签呈审批时,签呈已经被审批 -- 签呈处理失败:签呈已处理 */ -public static final String APPROVAL_PROCESSED = "签呈处理失败:签呈已处理"; + public static final String APPROVAL_PROCESSED = "签呈处理失败:签呈已处理"; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESmsTemplate.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESmsTemplate.java index 2fd7007e..60df18f7 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESmsTemplate.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESmsTemplate.java @@ -61,50 +61,6 @@ public enum ESmsTemplate { */ BALANCE_CHECK(SmsConstants.SMS_CODE_PREFIX + "17", "", false), - - //////////////////// 上面的短信不能进行手动发送 //////////////////// - - /** - * 售后收货 - */ - SMS21(SmsConstants.SMS_CODE_PREFIX + "21", "", true), - /** - * 售后换新 - */ - SMS22(SmsConstants.SMS_CODE_PREFIX + "22", "", true), - /** - * 售后原件 - */ - SMS23(SmsConstants.SMS_CODE_PREFIX + "23", "", true), - /** - * 售后换件 - */ - SMS24(SmsConstants.SMS_CODE_PREFIX + "24", "", true), - /** - * 产品补发 - */ - SMS25(SmsConstants.SMS_CODE_PREFIX + "25", "", true), - /** - * 售后受理 - */ - SMS26(SmsConstants.SMS_CODE_PREFIX + "26", "", true), - /** - * 疫情延迟补发 - */ - SMS27(SmsConstants.SMS_CODE_PREFIX + "27", "", true), - /** - * 疫情延迟发货 - */ - SMS28(SmsConstants.SMS_CODE_PREFIX + "28", "", true), - /** - * 售后快速处理 - */ - SMS29(SmsConstants.SMS_CODE_PREFIX + "29", "", true), - /** - * 支付订单退款 - */ - SMS30(SmsConstants.SMS_CODE_PREFIX + "30", "", true), - ; /** @@ -120,19 +76,5 @@ public enum ESmsTemplate { */ private final boolean create; - /** - * 根据编号获取枚举 - * - * @param code - * @return - */ - public static ESmsTemplate getEnumsByCode(String code) { - for (ESmsTemplate value : ESmsTemplate.values()) { - if (value.getCode().equals(code)) { - return value; - } - } - return null; - } } diff --git a/bd-third/src/main/java/com/hzs/third/sms/config/SmsConfig.java b/bd-third/src/main/java/com/hzs/third/sms/config/SmsConfig.java index 9b97f4cc..35cb669c 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/config/SmsConfig.java +++ b/bd-third/src/main/java/com/hzs/third/sms/config/SmsConfig.java @@ -6,44 +6,17 @@ import org.springframework.stereotype.Component; /** * 短信配置 - * @author hzs */ @Data @Component @ConfigurationProperties(prefix = "sms") public class SmsConfig { - /** - * 企业ID - */ - private String corpId; - /** - * 密码 - */ - private String pwd; - /** - * 短信请求URL - */ - private String url; - /** * 是否发送短信(true发送,false不发送) */ private boolean enable; - /** - * 企业ID(国际) - */ - private String corpIdInter; - /** - * 密码(国际) - */ - private String pwdInter; - /** - * 短信请求URL(国际) - */ - private String urlInter; - /** * 阿里短信accessKeyId */ diff --git a/bd-third/src/main/java/com/hzs/third/sms/controller/manage/SmsRecordController.java b/bd-third/src/main/java/com/hzs/third/sms/controller/manage/SmsRecordController.java index b6cf08dc..533efc50 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/controller/manage/SmsRecordController.java +++ b/bd-third/src/main/java/com/hzs/third/sms/controller/manage/SmsRecordController.java @@ -1,16 +1,12 @@ package com.hzs.third.sms.controller.manage; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.third.sms.ext.TSmsRecordExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.third.sms.param.SmsCreateParam; import com.hzs.third.sms.param.SmsRecordQueryParam; import com.hzs.third.sms.service.ITSmsRecordService; import org.springframework.beans.factory.annotation.Autowired; @@ -68,28 +64,4 @@ public class SmsRecordController extends BaseController { util.exportExcel(response, list, "短信记录导出"); } - /** - * 创建短信 - * - * @param param - * @return - */ - @Log(module = EOperationModule.SMS_CONFIG, business = EOperationBusiness.SMS_CREATE, method = EOperationMethod.INSERT) - @PostMapping("/create") - public AjaxResult create(@RequestBody SmsCreateParam param) { - if (null == param.getTemplateId() || null == param.getSendScope() || null == param.getSendType()) { - return AjaxResult.error(TransactionUtils.getContent(CommonMsgConstants.MISSING_PARAM)); - } - if (ESmsSendType.SCHEDULED.getValue() == param.getSendType() && null == param.getSendTime()) { - // 定时发送,需要有发送时间 - return AjaxResult.error(TransactionUtils.getContent(CommonMsgConstants.MISSING_PARAM)); - } - - String str = itSmsRecordService.pageSms(param, SecurityUtils.getUserId(), SecurityUtils.getPkCountry()); - if (null == str) { - return AjaxResult.success(); - } - return AjaxResult.error(str); - } - } diff --git a/bd-third/src/main/java/com/hzs/third/sms/param/SmsCreateParam.java b/bd-third/src/main/java/com/hzs/third/sms/param/SmsCreateParam.java deleted file mode 100644 index 74bf873f..00000000 --- a/bd-third/src/main/java/com/hzs/third/sms/param/SmsCreateParam.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.third.sms.param; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; -import java.util.List; - -/** - * @Description: 创建短信入参 - * @Author: jiang chao - * @Time: 2023/3/9 18:12 - * @Classname: SmsCreateParam - * @PackageName: com.hzs.third.sms.param - */ -@Data -public class SmsCreateParam { - - /** - * 短信模板ID - */ - private Integer templateId; - - /** - * 发送范围 -- ESmsSendScope - */ - private Integer sendScope; - - /** - * 会员ID列表 - */ - private List memberList; - - /** - * 订单ID列表 - */ - private List orderList; - - /** - * 指定手机号串 - */ - private String phones; - - /**v - * 参数列表 - */ - private List paramList; - - /** - * 发送方式 -- ESmsSendType - */ - private Integer sendType; - /** - * 发送时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date sendTime; - -} diff --git a/bd-third/src/main/java/com/hzs/third/sms/param/SmsRecordQueryParam.java b/bd-third/src/main/java/com/hzs/third/sms/param/SmsRecordQueryParam.java index 0d144ddd..a250d7c3 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/param/SmsRecordQueryParam.java +++ b/bd-third/src/main/java/com/hzs/third/sms/param/SmsRecordQueryParam.java @@ -5,11 +5,7 @@ import lombok.Data; import java.util.Date; /** - * @Description: 短信发送记录查询入参 - * @Author: jiang chao - * @Time: 2023/3/8 10:45 - * @Classname: SmsTemplateParam - * @PackageName: com.hzs.third.sms.param + * 短信发送记录查询入参 */ @Data public class SmsRecordQueryParam { diff --git a/bd-third/src/main/java/com/hzs/third/sms/param/SmsTemplateQueryParam.java b/bd-third/src/main/java/com/hzs/third/sms/param/SmsTemplateQueryParam.java index 2e429349..e36c5829 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/param/SmsTemplateQueryParam.java +++ b/bd-third/src/main/java/com/hzs/third/sms/param/SmsTemplateQueryParam.java @@ -5,11 +5,7 @@ import lombok.Data; import java.util.Date; /** - * @Description: 短信模板查询入参 - * @Author: jiang chao - * @Time: 2023/3/8 10:45 - * @Classname: SmsTemplateParam - * @PackageName: com.hzs.third.sms.param + * 短信模板查询入参 */ @Data public class SmsTemplateQueryParam { diff --git a/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java b/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java index 5a5a71d7..f5bf997a 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java +++ b/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java @@ -9,8 +9,6 @@ import org.apache.dubbo.config.annotation.DubboService; /** * 短信服务提供类 - * - * @author hzs */ @Slf4j @DubboService diff --git a/bd-third/src/main/java/com/hzs/third/sms/service/ISmsService.java b/bd-third/src/main/java/com/hzs/third/sms/service/ISmsService.java deleted file mode 100644 index c9420111..00000000 --- a/bd-third/src/main/java/com/hzs/third/sms/service/ISmsService.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.hzs.third.sms.service; - -import com.hzs.third.sms.dto.SmsServiceDTO; - -/** - * @Description: 短信服务 - * @Author: jiang chao - * @Time: 2023/3/8 14:18 - * @Classname: ISmsService - * @PackageName: com.hzs.third.sms.service - */ -public interface ISmsService { - - /** - * 实时发送短信 - * - * @param param - * @return - */ - String sendSms(SmsServiceDTO param); - -} diff --git a/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsRecordService.java b/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsRecordService.java index e2876f05..734737ce 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsRecordService.java +++ b/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsRecordService.java @@ -3,7 +3,6 @@ package com.hzs.third.sms.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.third.sms.TSmsRecord; import com.hzs.common.domain.third.sms.ext.TSmsRecordExt; -import com.hzs.third.sms.param.SmsCreateParam; import com.hzs.third.sms.param.SmsRecordQueryParam; import java.util.List; @@ -22,14 +21,4 @@ public interface ITSmsRecordService extends IService { */ List queryList(SmsRecordQueryParam param, Integer pkCountry); - /** - * 页面添加短信 - * - * @param param - * @param userId - * @param pkCountry - * @return - */ - String pageSms(SmsCreateParam param, Long userId, Integer pkCountry); - } diff --git a/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsTemplateService.java b/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsTemplateService.java index 7f1453ae..23c96370 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsTemplateService.java +++ b/bd-third/src/main/java/com/hzs/third/sms/service/ITSmsTemplateService.java @@ -5,9 +5,6 @@ import com.hzs.common.domain.third.sms.TSmsTemplate; /** * 短信模板 服务类 - * - * @author hzs - * @since 2022-08-22 */ public interface ITSmsTemplateService extends IService { diff --git a/bd-third/src/main/java/com/hzs/third/sms/service/impl/SmsServiceImpl.java b/bd-third/src/main/java/com/hzs/third/sms/service/impl/SmsServiceImpl.java deleted file mode 100644 index 8e2d4117..00000000 --- a/bd-third/src/main/java/com/hzs/third/sms/service/impl/SmsServiceImpl.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.third.sms.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.*; -import com.hzs.common.domain.third.sms.TSmsRecord; -import com.hzs.common.domain.third.sms.TSmsTemplate; -import com.hzs.third.sms.dto.SmsServiceDTO; -import com.hzs.third.sms.service.ISmsService; -import com.hzs.third.sms.service.ITSmsRecordService; -import com.hzs.third.sms.service.ITSmsTemplateService; -import com.hzs.third.sms.util.SmsUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * @Description: 短信服务 - * @Author: jiang chao - * @Time: 2023/3/8 14:18 - * @Classname: SmsServiceImpl - * @PackageName: com.hzs.third.sms.service.impl - */ -@Service -public class SmsServiceImpl implements ISmsService { - - @Autowired - private ITSmsTemplateService itSmsTemplateService; - @Autowired - private ITSmsRecordService itSmsRecordService; - - @Override - public String sendSms(SmsServiceDTO param) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(TSmsTemplate::getTemplateCode, param.getTemplateCode()); - queryWrapper.eq(TSmsTemplate::getPkCountry, param.getPkCountry()); - TSmsTemplate smsTemplate = itSmsTemplateService.getOne(queryWrapper); - if (null == smsTemplate) { - return "短信模板不存在"; - } - if (EYesNo.NO.getIntValue() == smsTemplate.getEnable()) { - return "短信模板禁止使用"; - } - - // 手机号 - String phone = param.getPhone(); - // 发送内容 - String content = smsTemplate.getTemplateContent(); - // 参数列表 - List paramList = param.getParamList(); - - if (smsTemplate.getParamNum() != 0) { - if (smsTemplate.getParamNum() != paramList.size()) { - return "缺少短信参数"; - } - content = String.format(content, paramList.toArray()); - } - - Date nowDate = new Date(); - - // 短信发送记录 - TSmsRecord smsRecord = new TSmsRecord(); - - // 发送短信 - String smsStr = SmsUtil.sendSms(phone, content); - if (null == smsStr) { - // 发送成功 - smsRecord.setSendResult(ESmsSendResult.SUCCESS.getValue()); - } else { - // 发送失败 - smsRecord.setSendResult(ESmsSendResult.FAIL.getValue()); - } - - if (null == param.getSaveFlag() || param.getSaveFlag()) { - // 保存短信发送记录 - smsRecord.setPkSmsTemplate(smsTemplate.getPkId()); - smsRecord.setPkMember(param.getPkMember()); - smsRecord.setPhone(phone); - smsRecord.setContent(content); - smsRecord.setSendScope(ESmsSendScope.MEMBER.getValue()); - smsRecord.setSendType(ESmsSendType.IMMEDIATELY.getValue()); - smsRecord.setSendStatus(ESmsSendStatus.SEND.getValue()); - smsRecord.setSendTime(nowDate); - if (null != param.getUserId()) { - smsRecord.setPkCreator(param.getUserId()); - } else { - smsRecord.setPkCreator(MagicNumberConstants.PK_ADMIN); - } - smsRecord.setCreationTime(nowDate); - smsRecord.setModifiedTime(nowDate); - smsRecord.setPkCountry(param.getPkCountry()); - itSmsRecordService.save(smsRecord); - } - return smsStr; - } - -} diff --git a/bd-third/src/main/java/com/hzs/third/sms/service/impl/TSmsRecordServiceImpl.java b/bd-third/src/main/java/com/hzs/third/sms/service/impl/TSmsRecordServiceImpl.java index 1cf539dd..b0b731a2 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/service/impl/TSmsRecordServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/sms/service/impl/TSmsRecordServiceImpl.java @@ -1,26 +1,12 @@ package com.hzs.third.sms.service.impl; -import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.third.sms.TSmsRecord; -import com.hzs.common.domain.third.sms.TSmsTemplate; import com.hzs.common.domain.third.sms.ext.TSmsRecordExt; -import com.hzs.member.base.IMemberServiceApi; -import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.third.sms.mapper.TSmsRecordMapper; -import com.hzs.third.sms.param.SmsCreateParam; import com.hzs.third.sms.param.SmsRecordQueryParam; import com.hzs.third.sms.service.ITSmsRecordService; -import com.hzs.third.sms.service.ITSmsTemplateService; -import com.hzs.third.sms.util.SmsUtil; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.*; @@ -30,217 +16,9 @@ import java.util.*; @Service public class TSmsRecordServiceImpl extends ServiceImpl implements ITSmsRecordService { - @Autowired - private ITSmsTemplateService itSmsTemplateService; - - @DubboReference - IMemberServiceApi iMemberServiceApi; - @DubboReference - ISaOrderServiceApi iSaOrderServiceApi; - @Override public List queryList(SmsRecordQueryParam param, Integer pkCountry) { return baseMapper.queryList(param, pkCountry); } - @Transactional(rollbackFor = Exception.class) - @Override - public String pageSms(SmsCreateParam param, Long userId, Integer pkCountry) { - TSmsTemplate smsTemplate = itSmsTemplateService.getById(param.getTemplateId()); - if (null == smsTemplate) { - return "短信模板不存在"; - } - if (EYesNo.NO.getIntValue() == smsTemplate.getEnable()) { - return "短信模板禁止使用"; - } - // 模板编号 - String templateCode = smsTemplate.getTemplateCode(); - // 发送内容 - String templateContent = smsTemplate.getTemplateContent(); - - ESmsTemplate eSmsTemplate = ESmsTemplate.getEnumsByCode(templateCode); - if (null != eSmsTemplate) { - // 短信枚举存在 - if (!eSmsTemplate.isCreate()) { - return "该短信模板不能手动发送"; - } - } - - // 需要入库的短信记录列表 - List smsRecordList = new ArrayList<>(); - - // 发送范围 - Integer sendScope = param.getSendScope(); - // 发送方式 - Integer sendType = param.getSendType(); - // 发送时间 - Date sendTime = param.getSendTime(); - // 参数列表 - List paramList = param.getParamList(); - - // 短信枚举存在,则需要判断使用哪种方式 - if (ESmsSendScope.MEMBER.getValue() == sendScope) { - // 指定会员 - List pkMemberList = param.getMemberList(); - if (CollectionUtil.isNotEmpty(pkMemberList)) { - // 根据传入的会员ID查询会员信息 - List cuMemberList = iMemberServiceApi.findMemberByMemberId(pkMemberList, pkCountry).getData(); - - // 预置会员短信模板,参数使用固定值进行填 - if (SmsUtil.getMemberTemplateList().contains(smsTemplate.getTemplateCode())) { - // 预置模板,可以进行处理 - // 目前会员短信没有预置模板 - } else { - // 非预置模板 - for (CuMemberExt cuMember : cuMemberList) { - // 发送内容 - String content; - if (CollectionUtil.isNotEmpty(paramList)) { - // 传入参数列表 - content = String.format(templateContent, paramList.toArray()); - } else { - // 非传入参数列表,默认使用会员编号做为填充参数 - content = String.format(templateContent, cuMember.getMemberCode()); - } - - smsRecordList.add(this.createRecord( - smsTemplate.getPkId(), cuMember.getPkId(), cuMember.getPhone(), - content, sendScope, sendType, sendTime, userId, pkCountry - )); - } - } - } - } else if (ESmsSendScope.ORDER.getValue() == sendScope) { - // 指定订单 - List orderIdList = param.getOrderList(); - if (CollectionUtil.isNotEmpty(orderIdList)) { - // 根据传入的订单ID查询订单信息 - List saOrderList = iSaOrderServiceApi.queryOrderItemsListByOrderId(orderIdList, pkCountry).getData(); - - // 预置订单短信模板,参数使用固定值进行填 - if (SmsUtil.getOrderTemplateList().contains(smsTemplate.getTemplateCode())) { - // 预置模板,可以进行处理 - for (SaOrderItemsExt saOrder : saOrderList) { - // 发送内容 - String content = templateContent; - if (CollectionUtil.isNotEmpty(paramList)) { - // 传入参数列表 - content = String.format(templateContent, paramList.toArray()); - } else { - // 非传入参数列表,默认使用快递单号做为填充参数 - if (smsTemplate.getParamNum() == 1) { - content = String.format(templateContent, saOrder.getLogisticsCode()); - } - } - - smsRecordList.add(this.createRecord( - smsTemplate.getPkId(), saOrder.getPkMember(), saOrder.getRecPhone(), - content, sendScope, sendType, sendTime, userId, pkCountry - )); - } - } else { - // 非预置模板 - for (SaOrderItemsExt saOrder : saOrderList) { - // 发送内容 - String content = templateContent; - if (CollectionUtil.isNotEmpty(paramList)) { - // 传入参数列表 - content = String.format(templateContent, paramList.toArray()); - } else { - // 非传入参数列表,默认使用快递单号做为填充参数 - if (smsTemplate.getParamNum() == 1) { - content = String.format(templateContent, saOrder.getLogisticsCode()); - } else if (smsTemplate.getParamNum() == 2) { - content = String.format(templateContent, saOrder.getOrderCode(), saOrder.getLogisticsCode()); - } - } - - smsRecordList.add(this.createRecord( - smsTemplate.getPkId(), saOrder.getPkMember(), saOrder.getRecPhone(), - content, sendScope, sendType, sendTime, userId, pkCountry - )); - } - } - } - } else { - // 自定义手机号 - String phones = param.getPhones(); - if (StringUtils.isNotEmpty(phones)) { - // 处理传入手机号 - String[] phoneArr = phones.replaceAll(";", ";").split(";"); - - // 自定义手机号,不区分短信模板 - for (String phone : phoneArr) { - // 发送内容 - String content = templateContent; - if (CollectionUtil.isNotEmpty(paramList)) { - // 传入参数列表 - content = String.format(templateContent, paramList.toArray()); - } - - smsRecordList.add(this.createRecord( - smsTemplate.getPkId(), null, phone, - content, sendScope, sendType, sendTime, userId, pkCountry - )); - } - } - } - - if (StringUtils.isNotEmpty(smsRecordList)) { - // 有发送数据,则进行处理 - if (ESmsSendType.IMMEDIATELY.getValue() == sendType) { - // 立即发送 - Date nowDate = new Date(); - - // 目前单现程推送,后续如果发送慢可以考虑多线程处理 - smsRecordList.forEach((tSmsRecord -> { - // 已发送 - tSmsRecord.setSendStatus(ESmsSendStatus.SEND.getValue()); - tSmsRecord.setSendTime(nowDate); - if (null == SmsUtil.sendSms(tSmsRecord.getPhone(), tSmsRecord.getContent())) { - // 发送成功 - tSmsRecord.setSendResult(ESmsSendResult.SUCCESS.getValue()); - } else { - // 发送失败 - tSmsRecord.setSendResult(ESmsSendResult.FAIL.getValue()); - } - })); - } - baseMapper.insertBatch(smsRecordList); - } - return null; - } - - /** - * 创建短信记录 - * - * @param templateId 模板ID - * @param pkMember 接收用户ID - * @param phone 发送手机号 - * @param content 发送内容 - * @param sendScope 发送范围 -- ESmsSendScope - * @param sendType 发送类型 -- ESmsSendType - * @param sendTime 发送时间 - * @param userId 操作用户ID - * @param pkCountry 所属国家 - * @return - */ - private TSmsRecord createRecord(Integer templateId, Long pkMember, String phone, - String content, Integer sendScope, Integer sendType, - Date sendTime, Long userId, Integer pkCountry) { - TSmsRecord tSmsRecord = new TSmsRecord(); - tSmsRecord.setPkSmsTemplate(templateId); - tSmsRecord.setPkMember(pkMember); - tSmsRecord.setPhone(phone); - tSmsRecord.setContent(content); - tSmsRecord.setSendScope(sendScope); - tSmsRecord.setSendType(sendType); - tSmsRecord.setSendStatus(ESmsSendStatus.NOT_SEND.getValue()); - tSmsRecord.setSendResult(ESmsSendResult.NOT_SEND.getValue()); - tSmsRecord.setSendTime(sendTime); - tSmsRecord.setPkCreator(userId); - tSmsRecord.setPkCountry(pkCountry); - return tSmsRecord; - } - } diff --git a/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java b/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java index 3c679612..dbb19a93 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java +++ b/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java @@ -4,8 +4,6 @@ import cn.hutool.json.JSONUtil; import com.aliyun.dysmsapi20170525.Client; import com.hzs.common.core.constant.Constants; import com.hzs.common.core.enums.EAliSmsTemplate; -import com.hzs.common.core.enums.ESmsTemplate; -import com.hzs.common.core.utils.HttpClientUtil; import com.hzs.common.core.utils.SpringUtils; import com.hzs.third.sms.config.SmsConfig; import lombok.extern.slf4j.Slf4j; @@ -16,18 +14,11 @@ import org.springframework.stereotype.Component; import com.aliyun.dysmsapi20170525.models.*; import com.aliyun.teaopenapi.models.*; -import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; /** - * Description: 发送短信工具类 - * - * @author: jiang chao - * Time: 2022/9/24 9:58 - * Classname: SmsUtil - * PackageName: com.hzs.common.utils + * 发送短信工具类 */ @Slf4j @Component @@ -35,64 +26,6 @@ public class SmsUtil implements InitializingBean { private static SmsConfig smsConfig; - // 会员预置短信模板 - private static List memberTemplateList; - - // 订单预置短信模板 - private static List orderTemplateList; - - /** - * 发送短信 - * - * @param phone 手机号 - * @param content 发送内容 - * @return - */ - public static String sendSms(String phone, String content) { - if (StringUtils.isAnyEmpty(phone, content)) { - return "手机号或内容为空"; - } - - if (smsConfig.isEnable()) { - // 只有当开启发送短信才进行发送 - - String corpid = smsConfig.getCorpId(); - String pwd = smsConfig.getPwd(); - String url = smsConfig.getUrl(); - - if (phone.length() == 10 && phone.startsWith("09")) { - // 台湾手机号码处理(10位长度,以09开头) - corpid = smsConfig.getCorpIdInter(); - pwd = smsConfig.getPwdInter(); - url = smsConfig.getUrl(); - } - - Map paramMap = new HashMap<>(); - paramMap.put("corpid", corpid); - paramMap.put("pwd", pwd); - paramMap.put("mobile", phone); - paramMap.put("content", content); - - log.info("短信发送参数: {}", paramMap); - - String result = HttpClientUtil.get(url, paramMap); - - log.info("短信发送结果: {}", result); - - if (StringUtils.isNotEmpty(result)) { - if (Integer.parseInt(result) > 0) { - return null; - } else { - log.error("短信发送失败, status: {}", result); - } - } - return "发送失败"; - } else { - log.info("短信发送手机:{}, 内容: {}", phone, content); - } - return null; - } - /** * 发送阿里短信 * @@ -104,7 +37,7 @@ public class SmsUtil implements InitializingBean { if (StringUtils.isAnyEmpty(phone, code)) { return "手机号或验证码为空"; } - System.out.println("手机验证码:"+ code); + System.out.println("手机验证码:" + code); if (smsConfig.isEnable()) { // 只有当开启发送短信才进行发送 try { @@ -144,32 +77,9 @@ public class SmsUtil implements InitializingBean { return null; } - public static List getMemberTemplateList() { - return memberTemplateList; - } - - public static List getOrderTemplateList() { - return orderTemplateList; - } - @Override public void afterPropertiesSet() { smsConfig = SpringUtils.getBean(SmsConfig.class); - - // 会员预置短信模板初始化 - memberTemplateList = new ArrayList<>(); - - // 订单预置短信模板初始化 - orderTemplateList = new ArrayList<>(); - orderTemplateList.add(ESmsTemplate.SMS21.getCode()); - orderTemplateList.add(ESmsTemplate.SMS22.getCode()); - orderTemplateList.add(ESmsTemplate.SMS23.getCode()); - orderTemplateList.add(ESmsTemplate.SMS24.getCode()); - orderTemplateList.add(ESmsTemplate.SMS25.getCode()); - orderTemplateList.add(ESmsTemplate.SMS26.getCode()); - orderTemplateList.add(ESmsTemplate.SMS27.getCode()); - orderTemplateList.add(ESmsTemplate.SMS28.getCode()); - orderTemplateList.add(ESmsTemplate.SMS29.getCode()); } } diff --git a/bd-third/src/main/resources/bootstrap.yml b/bd-third/src/main/resources/bootstrap.yml index bf0e0108..e02156f1 100644 --- a/bd-third/src/main/resources/bootstrap.yml +++ b/bd-third/src/main/resources/bootstrap.yml @@ -92,24 +92,6 @@ huifu: ## 小程序appSecret appletAppSecret: ebf41db190b6f4c469c13c67266859e8 -## 短信配置 -sms: - ## 凌凯国内短信配置 - corpId: CQJT001019 - pwd: 3FDA8B - url: https://sdk3.028lk.com:9988/BatchSend2.aspx - ## 是否发送短信(true发送,false不发送) - enable: false - ## 凌凯国际短信配置 - corpIdInter: CQJT000992 - pwdInter: 1263BA - urlInter: https://sdk3.028lk.com:9988/IntlSend.aspx - ## 阿里短信 - aliAccessKeyId: LTAI5tSjEQgSVXVrVvDEkcNh - aliAccessKeySecret: do1zRINS8MZ78UG6Vsa3SglZ3jPcOS - aliEndpoint: dysmsapi.aliyuncs.com - aliSign: 青岛海之圣生物工程 - # 日志配置 logging: level: From c5a5350aa2deb12399283ba84f961559e3b6354d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 09:37:07 +0800 Subject: [PATCH 098/362] =?UTF-8?q?##=20=E4=BD=99=E9=A2=9D=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E8=AF=AD=E5=8F=A5=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/member/account/CuMemberAccountDetailMapper.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml index cde1ebbd..6a589679 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml @@ -254,8 +254,7 @@ create_time, pk_rate, del_flag, - pk_country, - system_type) + pk_country) select cu_member_account_detail_seq.nextval, a.pk_member, a.account1, From 4f8cb15a341658a2689180208a3e7527cfa955d2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 09:37:07 +0800 Subject: [PATCH 099/362] =?UTF-8?q?##=20=E4=BD=99=E9=A2=9D=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E8=AF=AD=E5=8F=A5=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/member/account/CuMemberAccountDetailMapper.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml index cde1ebbd..6a589679 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountDetailMapper.xml @@ -254,8 +254,7 @@ create_time, pk_rate, del_flag, - pk_country, - system_type) + pk_country) select cu_member_account_detail_seq.nextval, a.pk_member, a.account1, From e40f56bc74684e3bda3deb37d9719b80a553dcbe Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 12 Aug 2025 09:59:45 +0800 Subject: [PATCH 100/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81-=E6=9C=AC=E6=9C=88=E5=8F=8A=E4=B8=8A?= =?UTF-8?q?=E6=9C=88=E4=B8=9A=E7=BB=A9/=E7=9B=92=E6=95=B0,=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0(ALL=5FTEAM=5FMONTH=5FPV/ALL=5FTEAM=5FMONTH=5FBOX=5FNU?= =?UTF-8?q?M)[=E5=9B=A2=E9=98=9F=E6=9C=88=E7=B4=AF=E8=AE=A1]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/achieve/CuMemberRetailRangeMapper.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index e1e94369..ee5837ff 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -886,11 +886,11 @@ NVL( NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) todayBoxNum, NVL( NVL( currentMonth.NEW_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_NEW_PV, 0 ), 0 ) yesterdayPv, NVL( NVL( currentMonth.NEW_BOX_NUM, 0 ) + NVL( currentMonth.TEAM_NEW_BOX_NUM, 0 ), 0 ) yesterdayBoxNum, - NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, - NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, - NVL( lastMonth.MONTH_CONSUME_PV, 0 ) lastMonthPv, - NVL( lastMonth.MONTH_BOX_NUM, 0 ) lastMonthBoxNum, - NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum + NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, + NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, + NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv, + NVL( lastMonth.MONTH_BOX_NUM, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) lastMonthBoxNum, + NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER From 976dfed130d55687f728cc6df578ecd89102c851 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 12 Aug 2025 09:59:45 +0800 Subject: [PATCH 101/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81-=E6=9C=AC=E6=9C=88=E5=8F=8A=E4=B8=8A?= =?UTF-8?q?=E6=9C=88=E4=B8=9A=E7=BB=A9/=E7=9B=92=E6=95=B0,=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0(ALL=5FTEAM=5FMONTH=5FPV/ALL=5FTEAM=5FMONTH=5FBOX=5FNU?= =?UTF-8?q?M)[=E5=9B=A2=E9=98=9F=E6=9C=88=E7=B4=AF=E8=AE=A1]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/achieve/CuMemberRetailRangeMapper.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index e1e94369..ee5837ff 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -886,11 +886,11 @@ NVL( NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) todayBoxNum, NVL( NVL( currentMonth.NEW_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_NEW_PV, 0 ), 0 ) yesterdayPv, NVL( NVL( currentMonth.NEW_BOX_NUM, 0 ) + NVL( currentMonth.TEAM_NEW_BOX_NUM, 0 ), 0 ) yesterdayBoxNum, - NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, - NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, - NVL( lastMonth.MONTH_CONSUME_PV, 0 ) lastMonthPv, - NVL( lastMonth.MONTH_BOX_NUM, 0 ) lastMonthBoxNum, - NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum + NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, + NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, + NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv, + NVL( lastMonth.MONTH_BOX_NUM, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) lastMonthBoxNum, + NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER From 72f61a3838863b212b6a0ce6dce9bff3e4e890ae Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 12 Aug 2025 10:29:35 +0800 Subject: [PATCH 102/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81-=E6=9C=AC=E6=9C=88=E5=8F=8A=E4=B8=8A?= =?UTF-8?q?=E6=9C=88=E4=B8=9A=E7=BB=A9/=E7=9B=92=E6=95=B0,=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0(ALL=5FTEAM=5FMONTH=5FPV/ALL=5FTEAM=5FMONTH=5FBOX=5FNU?= =?UTF-8?q?M)[=E5=9B=A2=E9=98=9F=E6=9C=88=E7=B4=AF=E8=AE=A1]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/member/achieve/CuMemberRetailRangeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index ee5837ff..f6c673bf 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -890,7 +890,7 @@ NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv, NVL( lastMonth.MONTH_BOX_NUM, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) lastMonthBoxNum, - NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum + NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER From 92f751aa155e4231dd2d5d1d4cc18d121514a30c Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 12 Aug 2025 10:29:35 +0800 Subject: [PATCH 103/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81-=E6=9C=AC=E6=9C=88=E5=8F=8A=E4=B8=8A?= =?UTF-8?q?=E6=9C=88=E4=B8=9A=E7=BB=A9/=E7=9B=92=E6=95=B0,=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0(ALL=5FTEAM=5FMONTH=5FPV/ALL=5FTEAM=5FMONTH=5FBOX=5FNU?= =?UTF-8?q?M)[=E5=9B=A2=E9=98=9F=E6=9C=88=E7=B4=AF=E8=AE=A1]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/member/achieve/CuMemberRetailRangeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index ee5837ff..f6c673bf 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -890,7 +890,7 @@ NVL( NVL( currentMonth.MONTH_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) + NVL( currentDay.ALL_NEW_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) currentMonthBoxNum, NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv, NVL( lastMonth.MONTH_BOX_NUM, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_BOX_NUM, 0 ) lastMonthBoxNum, - NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum + NVL( NVL( currentMonth.CONSUME_BOX_NUM, 0 ) + NVL( currentMonth.ALL_TEAM_BOX_NUM, 0 ) + NVL( currentDay.ALL_TEAM_NEW_BOX_NUM, 0 ), 0 ) totalBoxNum FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER From cfaf62cadde36280505793975e9fad3db5f0f004 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 14:02:27 +0800 Subject: [PATCH 104/362] =?UTF-8?q?##=20=E7=9F=AD=E4=BF=A1=E6=94=B9?= =?UTF-8?q?=E4=B8=BA=E7=94=A8=E4=BC=9A=E5=91=98ID=E5=81=9A=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=EF=BC=9B=E5=AE=9E=E5=90=8D=E8=AE=A4=E8=AF=81=E8=BF=81?= =?UTF-8?q?=E7=A7=BB=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/self/ICuSelfServiceServiceApi.java | 6 - .../system/config/ITradeConfigServiceApi.java | 10 - .../hzs/system/config/dto/TradeConfigDTO.java | 13 +- .../hzs/system/sys/dto/BusinessLogDTO.java | 6 +- .../ApiCuMemberAuthenticationController.java | 155 +++---- .../api/ApiCuMemberBankController.java | 13 +- .../mapper/CuMemberTransferMapper.java | 6 - .../ICuMemberAuthenticationService.java | 8 - .../account/service/ICuMemberBankService.java | 11 +- .../service/ICuMemberTransferService.java | 17 +- .../service/ICuMemberWithdrawService.java | 11 +- .../CuMemberAuthenticationServiceImpl.java | 19 - .../service/impl/CuMemberBaseServiceImpl.java | 14 +- .../impl/CuMemberTransferServiceImpl.java | 84 ++-- .../account/vo/CuMemberAuthenticationVO.java | 14 +- .../controller/api/ApiMemberController.java | 60 +-- .../controller/manage/CuMemberController.java | 400 +++--------------- .../base/mapper/CuMemberTeamMapper.java | 19 - .../base/param/MemberRealInfoParam.java | 56 +-- .../base/param/MemberTeamInfoParam.java | 81 ---- .../base/service/ICuMemberTeamService.java | 18 - .../service/impl/CuMemberServiceImpl.java | 15 +- .../service/impl/CuMemberTeamServiceImpl.java | 12 - .../hzs/member/base/vo/AccountPointOutVO.java | 32 -- .../hzs/member/base/vo/AgreementExpireVO.java | 36 -- .../com/hzs/member/base/vo/CuHonorWallVo.java | 63 --- .../base/vo/CuMemberAchieveLogParentVO.java | 103 ----- .../hzs/member/base/vo/DirectPushNewVo.java | 77 ---- .../hzs/member/base/vo/MemberChargingVo.java | 65 --- .../member/base/vo/MemberDirectPushVO.java | 83 ---- .../hzs/member/base/vo/MemberRealInfoVO.java | 44 -- .../com/hzs/member/base/vo/MemberTeamVo.java | 285 ------------- .../com/hzs/member/base/vo/TheLableVO.java | 40 -- .../base/vo/WaresAuthorityParentVo.java | 31 -- .../api/ApiDomicileChangeController.java | 144 ++----- .../controller/api/ApiSelfController.java | 34 +- .../manage/DomicileChangeController.java | 49 --- .../self/mapper/CuSelfServiceLogMapper.java | 52 +-- .../ICuSelfServiceServiceProvider.java | 42 +- .../service/ICuSelfServiceLogService.java | 51 --- .../impl/CuSelfServiceLogServiceImpl.java | 275 +++--------- .../java/com/hzs/member/self/vo/SelfVO.java | 9 - .../controller/api/ApiShareController.java | 14 +- .../sms/controller/api/ApiSmsController.java | 20 +- .../member/sms/service/IApiAliSmsService.java | 18 +- .../member/sms/service/IApiCodeService.java | 79 ---- .../service/impl/ApiAliSmsServiceImpl.java | 37 +- .../sms/service/impl/ApiCodeServiceImpl.java | 59 --- .../mapper/member/base/CuMemberMapper.xml | 54 +-- .../mapper/member/base/CuMemberTeamMapper.xml | 80 ---- .../member/self/CuSelfServiceLogMapper.xml | 86 +--- .../config/mapper/BdTradeConfigMapper.java | 9 - .../mapper/BdTradeWhiteConfigMapper.java | 6 - .../provider/ITradeConfigServiceProvider.java | 28 +- .../config/service/IBdTradeConfigService.java | 10 +- .../service/IBdTradeWhiteConfigService.java | 12 +- .../impl/BdTradeConfigServiceImpl.java | 77 +--- .../impl/BdTradeWhiteConfigServiceImpl.java | 49 +-- .../enums/controller/EnumsInitController.java | 12 - .../system/config/BdTradeConfigMapper.xml | 47 +- .../config/BdTradeWhiteConfigMapper.xml | 12 - .../constant/msg/FinanceMsgConstants.java | 11 - .../core/enums/EApproveRechargeStatus.java | 12 +- .../com/hzs/common/core/enums/ECardType.java | 39 +- .../com/hzs/common/core/enums/EIdType.java | 25 +- .../java/com/hzs/common/core/enums/ESex.java | 22 +- .../core/enums/EVerificationModule.java | 8 - .../member/account/CuMemberTransfer.java | 5 - .../common/domain/member/ext/CuMemberExt.java | 6 +- .../domain/member/self/CuSelfServiceLog.java | 13 +- .../domain/system/config/BdTradeConfig.java | 5 - .../system/config/BdTradeWhiteConfig.java | 5 - bd-gateway/src/main/resources/bootstrap.yml | 2 - .../service/impl/IdCardServiceImpl.java | 8 +- 74 files changed, 441 insertions(+), 2992 deletions(-) delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberTeamInfoParam.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AccountPointOutVO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AgreementExpireVO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuHonorWallVo.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuMemberAchieveLogParentVO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DirectPushNewVo.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberChargingVo.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDirectPushVO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberTeamVo.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/TheLableVO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/WaresAuthorityParentVo.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiCodeService.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiCodeServiceImpl.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/ICuSelfServiceServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/ICuSelfServiceServiceApi.java index c6927720..a365c3b8 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/ICuSelfServiceServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/ICuSelfServiceServiceApi.java @@ -6,12 +6,6 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** * 自助服务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/19 16:09 - * @Classname: ICuSelfServiceServiceApi - * @Package_name: com.hzs.member.self */ public interface ICuSelfServiceServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java index c173adc1..9f694946 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java @@ -7,13 +7,6 @@ import com.hzs.system.config.dto.TradeConfigDTO; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/8/21 15:05 - * @Classname: ITradeConfigApi - * @Package_name: com.hzs.system.config - */ public interface ITradeConfigServiceApi { /** @@ -32,7 +25,6 @@ public interface ITradeConfigServiceApi { */ R selectTradeWhiteConfigByCondition(TradeConfigDTO tradeConfigDTO); - /** * 根据会员ID查询账户白名单 * @@ -42,7 +34,6 @@ public interface ITradeConfigServiceApi { */ R> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry); - /** * 查询配置伞下白名单的会员 * @@ -51,5 +42,4 @@ public interface ITradeConfigServiceApi { */ R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/TradeConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/TradeConfigDTO.java index 63d94cb5..176cdf37 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/TradeConfigDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/TradeConfigDTO.java @@ -9,19 +9,15 @@ import java.io.Serializable; /** * 交易配置DTO - * - * @Description: - * @Author: ljc - * @Time: 2023/8/21 15:30 - * @Classname: TradeConfigDTO - * @Package_name: com.hzs.system.config.dto */ @Data @Builder @AllArgsConstructor @NoArgsConstructor public class TradeConfigDTO implements Serializable { + private static final long serialVersionUID = -5961829479214505354L; + /** * 注册等级 */ @@ -30,25 +26,21 @@ public class TradeConfigDTO implements Serializable { /** * 真实奖衔 */ - private Integer pkAwards; /** * 1:提现 2:转账 (来源枚举EBusinessModule) */ - private Integer businessModule; /** * 实名状态 1:禁止 0:允许 (来源枚举EYesNo) */ - private Integer realNameState; /** * 营业执照状态 1:禁止 0:允许 (来源枚举EYesNo) */ - private Integer licenseState; /** @@ -75,4 +67,5 @@ public class TradeConfigDTO implements Serializable { * 会员类型 1:正常 2:伞下(来源枚举ETradeMemberWhite) */ private Integer memberType; + } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BusinessLogDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BusinessLogDTO.java index 53642b2c..3a165adf 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BusinessLogDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BusinessLogDTO.java @@ -8,11 +8,7 @@ import lombok.NoArgsConstructor; import java.io.Serializable; /** - * @Description: 业务操作日志DTO - * @Author: jiang chao - * @Time: 2023/8/2 11:30 - * @Classname: BusinessLogDTO - * @PackageName: com.hzs.system.sys.dto + * 业务操作日志DTO */ @Builder @NoArgsConstructor diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberAuthenticationController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberAuthenticationController.java index 3ebfa53f..797fc463 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberAuthenticationController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberAuthenticationController.java @@ -1,15 +1,17 @@ package com.hzs.member.account.controller.api; +import cn.hutool.core.util.IdcardUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.OssUtil; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ThreadUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.system.config.BdTradeConfig; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.common.security.utils.SecurityUtils; @@ -18,7 +20,7 @@ import com.hzs.member.account.service.ICuMemberAuthenticationService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.vo.CuMemberAuthenticationVO; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.sms.service.IApiCodeService; +import com.hzs.member.sms.service.IApiAliSmsService; import com.hzs.third.idcard.IdCardServiceApi; import com.hzs.third.idcard.dto.IdCardOcrDTO; import org.apache.dubbo.config.annotation.DubboReference; @@ -26,7 +28,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.time.LocalDate; -import java.time.ZoneId; import java.time.format.DateTimeFormatter; /** @@ -37,7 +38,7 @@ import java.time.format.DateTimeFormatter; public class ApiCuMemberAuthenticationController extends BaseController { @Autowired - private IApiCodeService iApiCodeService; + private IApiAliSmsService iApiAliSmsService; @Autowired private ICuMemberAuthenticationService iCuMemberAuthenticationService; @Autowired @@ -48,6 +49,31 @@ public class ApiCuMemberAuthenticationController extends BaseController { @DubboReference IdCardServiceApi idCardServiceApi; + /** + * 是否需要实名认证 + * + * @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule) + * @return AjaxResult + */ + @GetMapping("/is-auth") + public AjaxResult isAuth(Integer businessModule) { + String flag = EYesNo.YES.getValue(); + Long pkMember = SecurityUtils.getUserId(); + Integer pkCountry = SecurityUtils.getPkCountry(); + // 是否配置提现、转账白名单 + BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule); + if (isStopStatus(businessModule, bdTradeWhiteConfig)) { + // 查询配置实名认证 + BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.REAL_NAME); + // 配置后才进行验证 + if (null != bdTradeConfig) { + //查询是否已实名认证 + CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); + flag = null == authenticationVO ? EYesNo.NO.getValue() : EYesNo.YES.getValue(); + } + } + return AjaxResult.success().put("flag", flag); + } /** * 调用身份证OCR接口 @@ -72,7 +98,6 @@ public class ApiCuMemberAuthenticationController extends BaseController { return AjaxResult.error(result.getMsg()); } - /** * 调用身份证OCR反面接口 * @@ -100,7 +125,6 @@ public class ApiCuMemberAuthenticationController extends BaseController { ThreadUtils.threadPoolExecutor.submit(() -> OssUtil.deleteFile(idCardUrl)); } return AjaxResult.error(result.getMsg()); - } /** @@ -115,65 +139,48 @@ public class ApiCuMemberAuthenticationController extends BaseController { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); - //查询是否已实名 - CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); - if (null != queryAuthenticationVO) { - return AjaxResult.error(FinanceMsgConstants.MEMBER_REAL_NAME); - } + // 验证码是否为空 String verificationCode = authenticationVO.getVerificationCode(); if (StringUtils.isEmpty(verificationCode)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.VERIFICATION_CODE_CANNOT_EMPTY)); } - //真实姓名 + // 真实姓名 String accountName = authenticationVO.getAccountName(); if (StringUtils.isEmpty(accountName)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.REAL_NAME_CANNOT_EMPTY)); } - if (StringUtils.isEmpty(authenticationVO.getIdFront())) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ID_FRONT_CANNOT_EMPTY)); } if (StringUtils.isEmpty(authenticationVO.getIdBack())) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ID_BACK_CANNOT_EMPTY)); } + if (StringUtils.isEmpty(authenticationVO.getAddress())) { + return AjaxResult.error("详细地址不能为空!"); + } + // 查询是否已实名 + CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); + if (null != queryAuthenticationVO) { + return AjaxResult.error(FinanceMsgConstants.MEMBER_REAL_NAME); + } + // 真实姓名与注册的会员姓名不一致 + CuMember member = iCuMemberService.getMember(pkMember); + if (!member.getMemberName().equals(accountName)) { + return AjaxResult.error("真实姓名与会员姓名不一致"); + } - String message = iApiCodeService.checkCode(authenticationVO.getPhone(), verificationCode, null); + String message = iApiAliSmsService.checkCode(authenticationVO.getPhone(), verificationCode, null, member.getPkId()); if (null != message) { return AjaxResult.error(message); } + // 从身份证获取出生日期 + authenticationVO.setBirthDate(DateUtils.parseDateOne(IdcardUtil.getBirthByIdCard(authenticationVO.getIdCard()), DateUtils.YAMMER)); authenticationVO.setPkCountry(pkCountry); authenticationVO.setPkMember(pkMember); return toAjax(iCuMemberAuthenticationService.saveAuthentication(authenticationVO)); } - - /** - * 是否需要实名认证 - * - * @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule) - * @return AjaxResult - */ - @GetMapping("/is-auth") - public AjaxResult isAuth(Integer businessModule) { - String flag = EYesNo.YES.getValue(); - Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - //查询是否配置了实名认证白名单 - BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule); - if (isStopStatus(businessModule, bdTradeWhiteConfig)) { - //查询配置实名认证 - BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.REAL_NAME); - //配置后才进行验证 - if (null != bdTradeConfig) { - //查询是否已实名认证 - CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); - flag = null == authenticationVO ? EYesNo.NO.getValue() : EYesNo.YES.getValue(); - } - } - return AjaxResult.success().put("flag", flag); - } - /** * 查询白名单的配置状态 * @@ -191,7 +198,6 @@ public class ApiCuMemberAuthenticationController extends BaseController { return businessModule.equals(EBusinessModule.TRANSFER_ACCOUNTS.getValue()) && bdTradeWhiteConfig.getTransferState().equals(EYesNo.NO.getIntValue()); } - /** * 查看详情 * @@ -205,69 +211,4 @@ public class ApiCuMemberAuthenticationController extends BaseController { return AjaxResult.success(authenticationVO); } - /** - * 协议处理校验实名 - * - * @return - */ - @GetMapping("/agreement-real-name") - public AjaxResult agreementRealName() { - Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - // 查询实名认证信息 - CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); - if (null != authenticationVO) { - // 存在实名认证信息,则返回成功 - return AjaxResult.success("", EYesNo.YES.getIntValue()); - } - return AjaxResult.success("", EYesNo.YES.getIntValue()); - } - - - /** - * 是否显示续约 - * - * @return AjaxResult - */ - @GetMapping("/is-expire") - public AjaxResult isExpire() { - int flag = EYesNo.NO.getIntValue(); - Long pkMember = SecurityUtils.getUserId(); - - CuMemberExt member = iCuMemberService.getMemberById(pkMember); - Integer isRealName = member.getIsRealName(); - - //未实名 - if (isRealName.equals(flag)) { - return AjaxResult.success().put("flag", flag); - } - //到期日期 - LocalDate expireDate = member.getExpireDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); - //到期三个月 - LocalDate beforeMonthDate = expireDate.minusMonths(3); - LocalDate localDate = LocalDate.now(); - if (localDate.equals(beforeMonthDate) || localDate.isAfter(beforeMonthDate)) { - flag = EYesNo.YES.getIntValue(); - } - return AjaxResult.success().put("flag", flag); - } - - /** - * 续约 - * - * @return AjaxResult - */ - @GetMapping("/renewal_contract") - public AjaxResult renewalContract() { - Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - //查询是否已实名 - CuMemberAuthenticationVO queryAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); - if (null == queryAuthenticationVO) { - return AjaxResult.error(FinanceMsgConstants.MEMBER_NOT_REAL_NAME); - } - return toAjax(iCuMemberAuthenticationService.memberRenewalContract(pkMember)); - } - - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java index ff6509dd..b1ef7107 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java @@ -7,7 +7,6 @@ import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EBusinessModule; import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -20,7 +19,7 @@ import com.hzs.member.account.service.ICuMemberBankService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.service.ICuMemberWithdrawService; import com.hzs.member.account.vo.CuMemberBankVO; -import com.hzs.member.sms.service.IApiCodeService; +import com.hzs.member.sms.service.IApiAliSmsService; import com.hzs.third.bankcard.IBankCardServiceApi; import com.hzs.third.bankcard.dto.BankCardParam; import org.apache.dubbo.config.annotation.DubboReference; @@ -28,14 +27,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.Assert; import org.springframework.web.bind.annotation.*; -import java.util.Date; import java.util.List; /** * 会员银行卡 前端控制器 - * - * @author hzs - * @since 2022-09-06 */ @RestController @RequestMapping("/api/bank") @@ -44,11 +39,11 @@ public class ApiCuMemberBankController extends BaseController { @Autowired private ICuMemberBankService cuMemberBankService; @Autowired - private IApiCodeService iApiCodeService; - @Autowired private ICuMemberBaseService iCuMemberBaseService; @Autowired private ICuMemberWithdrawService cuMemberWithdrawService; + @Autowired + private IApiAliSmsService iApiAliSmsService; @DubboReference IBankCardServiceApi bankCardServiceApi; @@ -151,7 +146,7 @@ public class ApiCuMemberBankController extends BaseController { String cardNumber = cuMemberBankParam.getCardNumber(); cuMemberBankParam.setCardNumber(StringUtils.deleteWhitespace(cardNumber)); - String message = iApiCodeService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null); + String message = iApiAliSmsService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null, pkMember); if (null != message) { return AjaxResult.error(message); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTransferMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTransferMapper.java index 1ab26faf..66fefc71 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTransferMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTransferMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberTransfer; import com.hzs.common.domain.member.account.CuMemberTransferExt; @@ -9,12 +8,7 @@ import com.hzs.member.account.vo.CuMemberTransferVO; import java.util.List; /** - *

* 会员转账表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberTransferMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAuthenticationService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAuthenticationService.java index 8858c0ac..d955bd40 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAuthenticationService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAuthenticationService.java @@ -19,14 +19,6 @@ public interface ICuMemberAuthenticationService extends IService * 会员信息-银行卡信息 服务类 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface ICuMemberBankService extends IService { + /** * 根据主键查询银行卡信息 * @@ -36,8 +32,8 @@ public interface ICuMemberBankService extends IService { /** * 解绑银行卡 * - * @param pkId 银行卡ID - * @param pkMember 会员ID + * @param pkId 银行卡ID + * @param pkMember 会员ID * @return Boolean */ Boolean unbindBank(Long pkId, Long pkMember); @@ -50,7 +46,6 @@ public interface ICuMemberBankService extends IService { */ Integer saveMemberBank(CuMemberBankParam cuMemberBankParam); - /** * 查询绑定的银行卡 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java index d04f1282..d22d408e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java @@ -1,24 +1,16 @@ package com.hzs.member.account.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberTransfer; -import com.hzs.common.domain.member.account.CuMemberTransferExt; import com.hzs.common.domain.system.config.BdTransfer; import com.hzs.member.account.vo.CuMemberTransferVO; - - /** - *

* 会员转账表 服务类 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface ICuMemberTransferService extends IService { + /** * 是否在血缘线上 * @@ -81,16 +73,15 @@ public interface ICuMemberTransferService extends IService { */ BdTransfer getBdTransfer(Integer pkCountry); - /** * 保存转账 * * @param cuMemberTransfer 转账信息 - * @param cuMemberAccount 转出的账户信息 - * @param toMemberAccount 转入的账户信息 + * @param cuMemberAccount 转出的账户信息 + * @param toMemberAccount 转入的账户信息 * @return Integer */ - Integer saveMemberTransferInfo(CuMemberTransfer cuMemberTransfer, CuMemberAccount cuMemberAccount,CuMemberAccount toMemberAccount); + Integer saveMemberTransferInfo(CuMemberTransfer cuMemberTransfer, CuMemberAccount cuMemberAccount, CuMemberAccount toMemberAccount); /** * 根据条件查询转账列表 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java index 15c71d15..f1cabfab 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java @@ -1,6 +1,5 @@ package com.hzs.member.account.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberWithdraw; @@ -14,14 +13,10 @@ import java.math.BigDecimal; import java.util.List; /** - *

* 会员提现表 服务类 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface ICuMemberWithdrawService extends IService { + /** * 根据用户ID查询用户的提现次数 * @@ -63,7 +58,6 @@ public interface ICuMemberWithdrawService extends IService { */ Integer updateWithdrawByCode(MemberAccountAudit memberAccountAudit); - /** * 查询列表信息 * @@ -72,7 +66,6 @@ public interface ICuMemberWithdrawService extends IService { */ Object[] selectMemberWithdrawList(CuMemberWithdrawVO cuMemberWithdrawVO); - /** * 查询提现信息详情 * @@ -97,7 +90,6 @@ public interface ICuMemberWithdrawService extends IService { */ Integer withdrawPaymentPositiveByPkId(CuMemberWithdrawVO memberWithdrawVO); - /** * 获取余额 * @@ -214,6 +206,7 @@ public interface ICuMemberWithdrawService extends IService { /** * 提现驳回 + * * @param param */ void withdrawReject(CuMemberWithdrawRejectParam param); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAuthenticationServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAuthenticationServiceImpl.java index f92d2760..e086c43d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAuthenticationServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAuthenticationServiceImpl.java @@ -5,11 +5,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EServiceStatus; import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.account.CuMemberAuthentication; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.mapper.CuMemberAuthenticationMapper; import com.hzs.member.account.service.ICuMemberAuthenticationService; import com.hzs.member.account.vo.CuMemberAuthenticationVO; @@ -18,8 +15,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.time.LocalDate; -import java.time.ZoneId; import java.util.Date; import java.util.List; @@ -60,20 +55,6 @@ public class CuMemberAuthenticationServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.set(CuMember::getServiceAgreement, EServiceStatus.SIGNED.getValue()); - updateWrapper.set(CuMember::getExpireDate, DateUtils.toDate(expireDate.plusYears(1).atStartOfDay())); - updateWrapper.set(CuMember::getModifiedTime, new Date()); - updateWrapper.set(CuMember::getPkModified, pkMember); - updateWrapper.eq(CuMember::getPkId, pkMember); - return iCuMemberService.update(updateWrapper); - } - @Override public CuMemberAuthenticationVO selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO authenticationVO) { CuMemberAuthentication authentication = baseMapper.selectAuthenticationByPkMember(authenticationVO); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBaseServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBaseServiceImpl.java index cf4f290e..8b9e9613 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBaseServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBaseServiceImpl.java @@ -78,7 +78,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { return iCurrencyServiceApi.getByHistoryPkId(pkId).getData(); } - @Override public BdAccount getAccount(Integer pkId) { return iAccountServiceApi.getAccount(pkId).getData(); @@ -95,7 +94,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { return awardsKey == null ? pkAccount : awardsKey.getPkTransactionKey(); } - @Override public Integer getAccountValueById(Integer pkAccount) { BdAccount bdAccount = getAccount(pkAccount); @@ -121,7 +119,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { iCuMemberTradeDetailService.batchInsertMemberTradeDetailFromTrade(sourceCode, cuMemberSettlePeriodByDate.getPkId()); } - @Override public void handleMemberTradeDetailAndBonus(List memberAccountList, String sourceCode, Map idsMap, Integer module) { //查询充值奖金币的交易流水 @@ -135,7 +132,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { } } - @Override public void handleRepeatMemberTradeDetailAndBonus(List memberAccountList, Integer module) { for (CuMemberAccountRechargeExt cuMemberAccount : memberAccountList) { @@ -186,7 +182,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { //插入奖金发放流水 iCuMemberTradeBonusService.save(bonus); } - } @@ -319,11 +314,12 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { @Override public BdTradeWhiteConfig selectConfigWhite(Long pkMember, Integer pkCountry, Integer businessModule) { TradeConfigDTO whiteDTO = TradeConfigDTO.builder().pkMember(pkMember).pkCountry(pkCountry).memberType(ETradeMemberWhite.BLOOD_UNDER_UMBRELLA.getValue()).build(); - //查询个人配置实名认证白名单 + // 查询个人配置实名认证白名单 BdTradeWhiteConfig whiteConfig = tradeConfigServiceApi.selectTradeWhiteConfigByCondition(whiteDTO).getData(); if (null != whiteConfig) { return whiteConfig; - } else {//查询伞下配置白名单 + } else { + // 查询伞下配置白名单 return iCuMemberService.selectMemberByUnderBlood(pkMember, ETradeMemberWhite.BLOOD_UNDER_UMBRELLA.getValue()); } } @@ -340,7 +336,7 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { } else { tradeConfigDTO.setLicenseState(EYesNo.YES.getIntValue()); } - //查询配置是否实名认证 + // 查询配置是否实名认证 return tradeConfigServiceApi.selectTradeConfigByCondition(tradeConfigDTO).getData(); } @@ -362,7 +358,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { return result; } - @Override public void operationLogMQ(List businessLogDTOList) { rabbitTemplate.convertAndSend(RabbitMqConstants.BUSINESS_LOG_EXCHANGE, RabbitMqConstants.BUSINESS_LOG_KEY, businessLogDTOList); @@ -373,7 +368,6 @@ public class CuMemberBaseServiceImpl implements ICuMemberBaseService { return cuMember.getMemberCode(); } - @Override public String getMemberNameByVertex(CuMember cuMember) { return cuMember.getMemberName(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java index 59706847..674758c1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java @@ -34,32 +34,22 @@ import java.math.RoundingMode; import java.util.*; /** - *

* 会员转账表 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service public class CuMemberTransferServiceImpl extends ServiceImpl implements ICuMemberTransferService { @Autowired - private ICuMemberService cuMemberService; - + private ICuMemberService iCuMemberService; @Autowired - private ICuMemberAccountService cuMemberAccountService; - + private ICuMemberAccountService iCuMemberAccountService; @Autowired - private ICuMemberTradeService cuMemberTradeService; + private ICuMemberTradeService iCuMemberTradeService; + @Autowired + private ICuMemberBaseService iCuMemberBaseService; @DubboReference - private ITransferServiceApi transferServiceApi; - - - @Autowired - private ICuMemberBaseService cuMemberBaseService; - + ITransferServiceApi iTransferServiceApi; @Override public Boolean isBloodLine(Long pkMember, Long toPkMember) { @@ -71,14 +61,13 @@ public class CuMemberTransferServiceImpl extends ServiceImpl cuMemberUp = cuMemberService.queryBloodKinshipOnUmbrella(pkMember); + List cuMemberUp = iCuMemberService.queryBloodKinshipOnUmbrella(pkMember); Optional upOptional = cuMemberUp.stream().filter(up -> toPkMember.equals(up.getPkId())).findFirst(); return upOptional.isPresent(); } @@ -86,7 +75,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl cuMemberDown = cuMemberService.queryBloodKinshipUnderUmbrella(pkMember); + List cuMemberDown = iCuMemberService.queryBloodKinshipUnderUmbrella(pkMember); Optional downOptional = cuMemberDown.stream().filter(down -> toPkMember.equals(down.getPkId())).findFirst(); return downOptional.isPresent(); } @@ -102,14 +91,14 @@ public class CuMemberTransferServiceImpl extends ServiceImpl memberPlaceOn = cuMemberService.queryPlaceSponsorOnUmbrella(pkMember); + List memberPlaceOn = iCuMemberService.queryPlaceSponsorOnUmbrella(pkMember); Optional onPlaceOptional = memberPlaceOn.stream().filter(placeOn -> toPkMember.equals(placeOn.getPkId())).findFirst(); return onPlaceOptional.isPresent(); } @Override public Boolean isPlaceSponsorUnderUmbrella(Long pkMember, Long toPkMember) { - List memberPlaceUnder = cuMemberService.queryPlaceSponsorUnderUmbrella(pkMember); + List memberPlaceUnder = iCuMemberService.queryPlaceSponsorUnderUmbrella(pkMember); Optional underPlaceOptional = memberPlaceUnder.stream().filter(placeUnder -> toPkMember.equals(placeUnder.getPkId())).findFirst(); return underPlaceOptional.isPresent(); } @@ -136,7 +125,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl(); memberAccountList.add(cuMemberAccount); idsMap = new HashMap<>(); @@ -144,7 +133,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl(); memberAccountList.add(toMemberAccount); idsMap = new HashMap<>(); @@ -163,13 +152,12 @@ public class CuMemberTransferServiceImpl extends ServiceImpl memberAccountList, Integer type, String businessCode, Map idsMap) { //转出方 if (type.equals(ETransferType.TRANSFER_OUT.getValue())) { - cuMemberBaseService.handleMemberTradeDetailAndBonus(memberAccountList, businessCode, idsMap, EConsumeType.TRANSFER.getValue()); + iCuMemberBaseService.handleMemberTradeDetailAndBonus(memberAccountList, businessCode, idsMap, EConsumeType.TRANSFER.getValue()); } else { - cuMemberBaseService.saveMemberTradeDetail(businessCode); + iCuMemberBaseService.saveMemberTradeDetail(businessCode); } } - /** * 更新交易流水和余额 * @@ -178,7 +166,7 @@ public class CuMemberTransferServiceImpl extends ServiceImpl> grderDate = gradeServiceApi.findAll(); - List grderList = grderDate.getData(); - if (endCreateTime != null) { endCreateTime = DateUtils.getEndTime(endCreateTime); } @@ -376,27 +344,21 @@ public class ApiMemberController extends BaseController { List list = iCuMemberService.parentList(memberId, memberCode, memberName, startCreateTime, endCreateTime, memberInfo); if (CollectionUtil.isNotEmpty(list)) { - Map transactionMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE); - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); + R> gradeDate = iGradeServiceApi.findAll(); + List gradeList = gradeDate.getData(); for (ParentMemberVo cuMember : list) { cuMember.setMemberCode(cuMember.getMemberCode()); cuMember.setMemberName(cuMember.getMemberName()); - for (GradeDTO gradeDTO : grderList) { + for (GradeDTO gradeDTO : gradeList) { if (gradeDTO.getPkId().equals(cuMember.getPkRegisterGrade())) { - cuMember.setPkRegisterGradeStr(transactionMap.get(gradeDTO.getPkTransaction())); + cuMember.setPkRegisterGradeStr(gradeDTO.getGradeName()); } } - for (GradeDTO gradeDTO : grderList) { + for (GradeDTO gradeDTO : gradeList) { if (gradeDTO.getPkId().equals(cuMember.getPkSettleGrade())) { - cuMember.setPkSettleGradeStr(transactionMap.get(gradeDTO.getPkTransaction())); - } - } - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - if (cuMember.getConsumeAchieve() != null) { - cuMember.setConsumeAchieve(cuMember.getConsumeAchieve().multiply(inExchangeRate)); + cuMember.setPkSettleGradeStr(gradeDTO.getGradeName()); } } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index b9a22ec4..58063571 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -3,16 +3,12 @@ package com.hzs.member.base.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.IdcardUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.ColumnAuthority; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.VertexConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -23,9 +19,6 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.account.CuMemberTransfer; -import com.hzs.common.domain.member.account.CuMemberWithdraw; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.system.config.BdAwards; @@ -33,20 +26,14 @@ import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; -import com.hzs.member.account.service.ICuMemberTransferService; -import com.hzs.member.account.service.ICuMemberWithdrawService; -import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.dto.LoginMember; import com.hzs.member.base.dto.MemberBusinessTemplate; import com.hzs.member.base.param.*; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICuMemberTeamService; import com.hzs.member.base.vo.*; import com.hzs.member.login.service.IMemberLoginService; import com.hzs.member.swing.param.CuMemberSwingNetParam; import com.hzs.member.swing.vo.CuMemberRetVO; -import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAwardsServiceApi; @@ -64,7 +51,6 @@ import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.nio.charset.StandardCharsets; import java.util.*; -import java.util.regex.Pattern; import java.util.stream.Collectors; @RequestMapping("/manager/member") @@ -72,17 +58,7 @@ import java.util.stream.Collectors; public class CuMemberController extends BaseController { @Autowired - private ICuMemberWithdrawService memberWithdrawService; - @Autowired - private ICuMemberSettlePeriodService memberSettlePeriodService; - @Autowired - private ICuMemberTransferService memberTransferService; - @Autowired - private ICuMemberService cuMemberService; - @Autowired - private ICuMemberTeamService memberTeamService; - @Autowired - private ICuMemberTreeService memberTreeService; + private ICuMemberService iCuMemberService; @Autowired private ITransactionCommonService iTransactionCommonService; @Autowired @@ -97,15 +73,13 @@ public class CuMemberController extends BaseController { @DubboReference IGradeServiceApi iGradeServiceApi; @DubboReference - IAreaServiceApi iAreaServiceApi; - @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @DubboReference IMenuColumnServiceApi iMenuColumnServiceApi; @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; + public void setCuMemberService(ICuMemberService iCuMemberService) { + this.iCuMemberService = iCuMemberService; } @@ -169,17 +143,12 @@ public class CuMemberController extends BaseController { /** * 真实信息 - * - * @author: zhang jing - * @date: 2022/11/15 17:59 - * @param: [memberParam] - * @return: com.hzs.common.core.web.page.TableDataInfo **/ @Log(module = EOperationModule.MEMBER_INFORMATION, business = EOperationBusiness.MEMBER_INFO_REAL, method = EOperationMethod.SELECT) @PostMapping("/real-member") public TableDataInfo realMember(@RequestBody CuMemberVO memberParam) { memberParam.setPkCountry(SecurityUtils.getPkCountry()); - List cuMemberVOS = cuMemberService.realCuMemberByCondition(memberParam); + List cuMemberVOS = iCuMemberService.realCuMemberByCondition(memberParam); if (CollectionUtil.isNotEmpty(cuMemberVOS)) { for (CuMemberVO cvo : cuMemberVOS) { if (cvo.getSex() == ESex.MAN.getValue()) { @@ -191,18 +160,6 @@ public class CuMemberController extends BaseController { if (cvo.getCardType() == ECardType.CARD.getValue()) { cvo.setCardTypeVal(ECardType.CARD.getLabel()); } - if (cvo.getCardType() == ECardType.OFFICER.getValue()) { - cvo.setCardTypeVal(ECardType.OFFICER.getLabel()); - } - if (cvo.getCardType() == ECardType.STUDENT.getValue()) { - cvo.setCardTypeVal(ECardType.STUDENT.getLabel()); - } - if (cvo.getCardType() == ECardType.DRIVE.getValue()) { - cvo.setCardTypeVal(ECardType.DRIVE.getLabel()); - } - if (cvo.getCardType() == ECardType.PASSPORT.getValue()) { - cvo.setCardTypeVal(ECardType.PASSPORT.getLabel()); - } } } return getDataTable(cuMemberVOS); @@ -210,15 +167,10 @@ public class CuMemberController extends BaseController { /** * 根据会员编号查询会员信息 - * - * @author: zhang jing - * @date: 2022/11/9 18:25 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/getOne/{memberCode}") public AjaxResult getOne(@PathVariable String memberCode) { - CuMember cuMember = cuMemberService.getMember(memberCode); + CuMember cuMember = iCuMemberService.getMember(memberCode); return AjaxResult.success(cuMember); } @@ -277,7 +229,7 @@ public class CuMemberController extends BaseController { * @param param */ private void handleMemberSelect(List resultList, MemberSelectParam param) { - List cuMemberExtList = cuMemberService.queryMemberSelect(param, SecurityUtils.getPkCountry()); + List cuMemberExtList = iCuMemberService.queryMemberSelect(param, SecurityUtils.getPkCountry()); if (CollectionUtil.isNotEmpty(cuMemberExtList)) { for (CuMemberExt cuMemberExt : cuMemberExtList) { MemberSelectVO memberSelectVO = BeanUtil.copyProperties(cuMemberExt, MemberSelectVO.class); @@ -307,41 +259,18 @@ public class CuMemberController extends BaseController { UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); memberRealInfoParam.setVertexList(userAuthorityDTO.getUserVertexList()); memberRealInfoParam.setTeamList(userAuthorityDTO.getUserTeamList()); - if (StringUtils.isNotEmpty(memberRealInfoParam.getBirthDate())) { - memberRealInfoParam.setBirthDate(memberRealInfoParam.getBirthDate().replace("-", "")); - } + startPage(); - List resultList = cuMemberService.selectByMemberRealInfo(memberRealInfoParam); - + List resultList = iCuMemberService.selectByMemberRealInfo(memberRealInfoParam); if (CollectionUtil.isNotEmpty(resultList)) { - //数据库内容翻译 - Map transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, - EnumsPrefixConstants.KEY_AWARD); - - R> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry()); // 奖衔 + R> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry()); List awardsList = awardsListDate.getData(); - R> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry()); // 等级 + R> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry()); List gradeList = gradeListDate.getData(); - Map areaDate = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData(); for (MemberRealInfoVO cuMemberExt : resultList) { - cuMemberExt.setRegisterGradeVal(transactionMap1.get(cuMemberExt.getPkRegisterGrade())); - cuMemberExt.setSettleGradeVal(transactionMap1.get(cuMemberExt.getPkSettleGrade())); - cuMemberExt.setAwardsVal(transactionMap1.get(cuMemberExt.getPkAwards())); - if (cuMemberExt.getPkProvince() != null) { - // 省 - cuMemberExt.setProvinceName(areaDate.get(cuMemberExt.getPkProvince())); - } - if (cuMemberExt.getPkCity() != null) { - // 市 - cuMemberExt.setCityName(areaDate.get(cuMemberExt.getPkCity())); - } - if (cuMemberExt.getPkCounty() != null) { - // 区县 - cuMemberExt.setCountyName(areaDate.get(cuMemberExt.getPkCounty())); - } // 注册等级 if (cuMemberExt.getPkRegisterGrade() != null) { for (GradeDTO grade : gradeList) { @@ -366,215 +295,16 @@ public class CuMemberController extends BaseController { } } } - // 生日 - if (StringUtils.isNotBlank(cuMemberExt.getIdCard()) && (checkIdCard(cuMemberExt.getIdCard()))) { - cuMemberExt.setBirthDate(IdcardUtil.getBirthDate(cuMemberExt.getIdCard())); - } - if (cuMemberExt.getIdType() != null) { - cuMemberExt.setCardTypeVal(EIdType.getLabel(cuMemberExt.getIdType())); - } + cuMemberExt.setCardTypeVal(EIdType.getLabelByValue(cuMemberExt.getIdType())); + cuMemberExt.setSexVal(ESex.getLabelByValue(cuMemberExt.getSex())); } } return getDataTable(resultList); } - - /** - * 会员团队信息 - * - * @return - */ - @AccessPermissions("TeamInfo") - @GetMapping("/member-team-info") - public TableDataInfo memberTeamInfo(MemberTeamInfoParam memberTeamInfoParam) { - String time; - String settleTableName; - CuMemberSettlePeriod csPeriod; - List memberTeamList = new ArrayList<>(); - R> awardsDto = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry()); - if (memberTeamInfoParam.getQueryDate() == null) { - // 昨日 - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtil.offsetDay(new Date(), -1)); - csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } else { - String queryDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate()); - String currentDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.currentDate()); - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate()); - csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - if (queryDate.equals(currentDate)) { - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } else { - // 历史 - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } - } - // 如果表格不存在则返回空数据 - Integer tableNumber = memberTreeService.queryExistOracleTable(settleTableName); - if (tableNumber == null || tableNumber == 0) { - return getDataTable(new ArrayList<>()); - } - memberTeamInfoParam.setSettleTableName(settleTableName); - memberTeamInfoParam.setPeriod(csPeriod.getPkId()); - startPage(); - if (StringUtils.isNotBlank(memberTeamInfoParam.getMemberCode())) { - if (memberTeamInfoParam.getRelaType() != null && memberTeamInfoParam.getRelaType().equals(ERealType.XY.getIntValue())) { - // 血缘 - memberTeamList = memberTeamService.queryMemberTeamInfoList(memberTeamInfoParam); - } else { - // 安置 - memberTeamList = memberTeamService.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam); - } - } - for (MemberTeamVo memberTeamVo : memberTeamList) { - // 查询安置层级 - if (memberTeamVo.getPlaceDept() != null) { - memberTeamVo.setPlaceDept(memberTeamVo.getPlaceDept()); - memberTeamVo.setPlaceDeptStr(EPlaceDept.getEPlaceDept(memberTeamVo.getPlaceDept())); - } - if (memberTeamVo.getPkAwards() != null) { - for (BdAwards date : awardsDto.getData()) { - if (memberTeamVo.getPkAwards().equals(date.getPkId())) { - memberTeamVo.setPkAwardsStr(date.getAwardsName()); - } - } - } - if (memberTeamVo.getPkPlaceParent() != null) { - CuMember member = cuMemberService.getMember(memberTeamVo.getPkPlaceParent()); - if (member != null) { - memberTeamVo.setPlaceParentCode(member.getMemberCode()); - } - } - memberTeamVo.setResettleLevel(memberTeamVo.getLevel()); - //TODO 血缘代数 - memberTeamVo.setConsanguinityAlgebra("第" + memberTeamVo.getLevel() + "代"); - //TODO 奖金大盘占比 - memberTeamVo.setBonusLargeMarketProportion(BigDecimal.ZERO); - // 直推人数 - Long directPushPeopleNumber = memberTreeService.queryCuMemberTreeParentTableCount(settleTableName, memberTeamVo.getMemberId()); - memberTeamVo.setDirectPushPeopleNumber(directPushPeopleNumber); - // 转账次数 - LambdaQueryWrapper qew = new LambdaQueryWrapper<>(); - qew.eq(CuMemberTransfer::getPkMember, memberTeamVo.getMemberId()); - int memberTransferCount = memberTransferService.count(qew); - memberTeamVo.setMemberTransferCount(memberTransferCount); - - // 提现次数 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberWithdraw::getPkMember, memberTeamVo.getMemberId()); - int memberWithdrawCount = memberWithdrawService.count(queryWrapper); - memberTeamVo.setWithdrawalNumber(memberWithdrawCount); - // 最后一次登录时间 - if (memberTeamVo.getLastLoginTime() != null) { - // 计算当前时间和 最后一次登陆时间间隔 - memberTeamVo.setLastLoginTimeIntervalDays(DateUtil.betweenDay(DateUtils.currentDate(), memberTeamVo.getLastLoginTime(), true)); - } - } - return getDataTable(memberTeamList); - } - - /** - * 会员团队信息导出 - */ - @PostMapping("/member-team-info-export") - public void memberTeamInfoExport(MemberTeamInfoParam memberTeamInfoParam, HttpServletResponse response) { - String time; - String settleTableName; - CuMemberSettlePeriod csPeriod; - List memberTeamList = new ArrayList<>(); - R> awardsDto = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry()); - if (memberTeamInfoParam.getQueryDate() == null) { - // 昨日 - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtil.offsetDay(new Date(), -1)); - csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } else { - String queryDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate()); - String currentDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.currentDate()); - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, memberTeamInfoParam.getQueryDate()); - csPeriod = memberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - if (queryDate.equals(currentDate)) { - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } else { - // 历史 - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + csPeriod.getPkId(); - } - } - // 如果表格不存在则返回空数据 - Integer tableNumber = memberTreeService.queryExistOracleTable(settleTableName); - if (tableNumber == null || tableNumber == 0) { - ExcelUtil util = new ExcelUtil<>(MemberTeamVo.class); - util.exportExcel(response, memberTeamList, "会员团队信息"); - } - memberTeamInfoParam.setSettleTableName(settleTableName); - memberTeamInfoParam.setPeriod(csPeriod.getPkId()); - startPage(); - if (StringUtils.isNotBlank(memberTeamInfoParam.getMemberCode())) { - if (memberTeamInfoParam.getRelaType() != null && memberTeamInfoParam.getRelaType().equals(ERealType.XY.getIntValue())) { - // 血缘 - memberTeamList = memberTeamService.queryMemberTeamInfoList(memberTeamInfoParam); - } else { - // 安置 - memberTeamList = memberTeamService.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam); - } - } - for (MemberTeamVo memberTeamVo : memberTeamList) { - // 查询安置层级 - if (memberTeamVo.getPlaceDept() != null) { - memberTeamVo.setPlaceDept(memberTeamVo.getPlaceDept()); - memberTeamVo.setPlaceDeptStr(EPlaceDept.getEPlaceDept(memberTeamVo.getPlaceDept())); - } - if (memberTeamVo.getPkAwards() != null) { - for (BdAwards date : awardsDto.getData()) { - if (memberTeamVo.getPkAwards().equals(date.getPkId())) { - memberTeamVo.setPkAwardsStr(date.getAwardsName()); - } - } - } - if (memberTeamVo.getPkPlaceParent() != null) { - CuMember member = cuMemberService.getMember(memberTeamVo.getPkPlaceParent()); - if (member != null) { - memberTeamVo.setPlaceParentCode(member.getMemberCode()); - } - } - memberTeamVo.setResettleLevel(memberTeamVo.getLevel()); - //血缘代数 - memberTeamVo.setConsanguinityAlgebra("第" + memberTeamVo.getLevel() + "代"); - //奖金大盘占比 - memberTeamVo.setBonusLargeMarketProportion(BigDecimal.ZERO); - // 直推人数 - Long directPushPeopleNumber = memberTreeService.queryCuMemberTreeParentTableCount(settleTableName, memberTeamVo.getMemberId()); - memberTeamVo.setDirectPushPeopleNumber(directPushPeopleNumber); - // 转账次数 - LambdaQueryWrapper qew = new LambdaQueryWrapper<>(); - qew.eq(CuMemberTransfer::getPkMember, memberTeamVo.getMemberId()); - int memberTransferCount = memberTransferService.count(qew); - memberTeamVo.setMemberTransferCount(memberTransferCount); - - // 提现次数 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberWithdraw::getPkMember, memberTeamVo.getMemberId()); - int memberWithdrawCount = memberWithdrawService.count(queryWrapper); - memberTeamVo.setWithdrawalNumber(memberWithdrawCount); - // 最后一次登录时间 - if (memberTeamVo.getLastLoginTime() != null) { - // 计算当前时间和 最后一次登陆时间间隔 - memberTeamVo.setLastLoginTimeIntervalDays(DateUtil.betweenDay(DateUtils.currentDate(), memberTeamVo.getLastLoginTime(), true)); - } - } - ExcelUtil util = new ExcelUtil<>(MemberTeamVo.class, iMenuColumnServiceApi.queryMenuColumn("TeamInfo", SecurityUtils.getUserId()).getData()); - util.exportExcel(response, memberTeamList, "会员团队信息"); - } - - /** * 导出真实信息 - * - * @author: zhang jing - * @date: 2023/7/15 17:02 - * @param: [response, memberRealInfoParam] - * @return: void **/ @Log(module = EOperationModule.MEMBER_INFORMATION, business = EOperationBusiness.MEMBER_INFORMATION, method = EOperationMethod.EXPORT) @PostMapping("/real-info-export") @@ -586,50 +316,51 @@ public class CuMemberController extends BaseController { UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); memberRealInfoParam.setVertexList(userAuthorityDTO.getUserVertexList()); memberRealInfoParam.setTeamList(userAuthorityDTO.getUserTeamList()); - List resultList = cuMemberService.selectByMemberRealInfo(memberRealInfoParam); + List resultList = iCuMemberService.selectByMemberRealInfo(memberRealInfoParam); if (CollectionUtil.isNotEmpty(resultList)) { - // 获取需要翻译的枚举翻译 - Map transactionMap = iTransactionCommonService.exportEnumTransaction(ECardType.values(), - ESex.values() - ); - //数据库内容翻译 - Map transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, - EnumsPrefixConstants.KEY_AWARD); + // 奖衔 + R> awardsListDate = iAwardsServiceApi.queryAwards(SecurityUtils.getPkCountry()); + List awardsList = awardsListDate.getData(); + // 等级 + R> gradeListDate = iGradeServiceApi.queryGradeList(SecurityUtils.getPkCountry()); + List gradeList = gradeListDate.getData(); - Map areaDate = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData(); for (MemberRealInfoVO cuMemberExt : resultList) { - cuMemberExt.setRegisterGradeVal(transactionMap1.get(cuMemberExt.getPkRegisterGrade())); - cuMemberExt.setSettleGradeVal(transactionMap1.get(cuMemberExt.getPkSettleGrade())); - cuMemberExt.setAwardsVal(transactionMap1.get(cuMemberExt.getPkAwards())); - cuMemberExt.setPkMaxAwardsVal(transactionMap1.get(cuMemberExt.getPkMaxAwards())); - if (cuMemberExt.getPkProvince() != null) { - // 省 - cuMemberExt.setProvinceName(areaDate.get(cuMemberExt.getPkProvince())); + // 注册等级 + if (cuMemberExt.getPkRegisterGrade() != null) { + for (GradeDTO grade : gradeList) { + if (grade.getPkId().equals(cuMemberExt.getPkRegisterGrade())) { + cuMemberExt.setRegisterGradeVal(grade.getGradeName()); + } + } } - if (cuMemberExt.getPkCity() != null) { - // 市 - cuMemberExt.setCityName(areaDate.get(cuMemberExt.getPkCity())); + // 结算等级 + if (cuMemberExt.getPkSettleGrade() != null) { + for (GradeDTO grade : gradeList) { + if (grade.getPkId().equals(cuMemberExt.getPkSettleGrade())) { + cuMemberExt.setSettleGradeVal(grade.getGradeName()); + } + } } - if (cuMemberExt.getPkCounty() != null) { - // 区县 - cuMemberExt.setCountyName(areaDate.get(cuMemberExt.getPkCounty())); + // 真实奖衔 + if (cuMemberExt.getPkAwards() != null) { + for (BdAwards awards : awardsList) { + if (awards.getPkId().equals(cuMemberExt.getPkAwards())) { + cuMemberExt.setAwardsVal(awards.getAwardsName()); + } + } } - // 证件类型 - if (cuMemberExt.getCardType() != null) { - cuMemberExt.setCardTypeVal(transactionMap.get(EnumsPrefixConstants.CARD_TYPE + cuMemberExt.getCardType())); - } - // 性别 - if (cuMemberExt.getSex() != null) { - cuMemberExt.setSexVal(transactionMap.get(EnumsPrefixConstants.SEX + cuMemberExt.getSex())); - } - // 生日 - if (StringUtils.isNotBlank(cuMemberExt.getIdCard()) && (checkIdCard(cuMemberExt.getIdCard()))) { - cuMemberExt.setBirthDate(IdcardUtil.getBirthDate(cuMemberExt.getIdCard())); - } - if (cuMemberExt.getIdType() != null) { - cuMemberExt.setCardTypeVal(EIdType.getLabel(cuMemberExt.getIdType())); + // 真实奖衔 + if (cuMemberExt.getPkMaxAwards() != null) { + for (BdAwards awards : awardsList) { + if (awards.getPkId().equals(cuMemberExt.getPkMaxAwards())) { + cuMemberExt.setAwardsVal(awards.getAwardsName()); + } + } } + cuMemberExt.setCardTypeVal(EIdType.getLabelByValue(cuMemberExt.getIdType())); + cuMemberExt.setSexVal(ESex.getLabelByValue(cuMemberExt.getSex())); } } ExcelUtil util = new ExcelUtil<>(MemberRealInfoVO.class, iMenuColumnServiceApi.queryMenuColumn("RealInfo", SecurityUtils.getUserId()).getData()); @@ -651,21 +382,6 @@ public class CuMemberController extends BaseController { util.exportExcel(response, list, "会员编号"); } - - /** - * 校验身份证格式 - * - * @author: zhang jing - * @date: 2023/10/17 14:10 - * @param: [idCard] - * @return: boolean - **/ - public boolean checkIdCard(String idCard) { - // 正则表达式校验身份证号码格式 - String reg = "\\d{17}[\\d|x|X]"; - return Pattern.matches(reg, idCard); - } - /** * 查询顶点会员 * @@ -674,7 +390,7 @@ public class CuMemberController extends BaseController { @GetMapping("/query-top-member") public AjaxResult queryTopMember() { List resultList = new ArrayList<>(); - List list = cuMemberService.queryPlaceMemberList(VertexConstants.GJ30720200CODE, SecurityUtils.getPkCountry()); + List list = iCuMemberService.queryPlaceMemberList(VertexConstants.GJ30720200CODE, SecurityUtils.getPkCountry()); if (CollectionUtil.isNotEmpty(list)) { resultList = BeanUtil.copyToList(list, TopMemberVO.class); } @@ -702,7 +418,7 @@ public class CuMemberController extends BaseController { BigDecimal chinaInExchangeRate = chinaCurrency.getData().getInExchangeRate(); startPage(); memberConsumptionStatParam.setPkCountry(SecurityUtils.getPkCountry()); - List memberConsumptionStatVoList = cuMemberService.getMemberConsumptionStat(memberConsumptionStatParam); + List memberConsumptionStatVoList = iCuMemberService.getMemberConsumptionStat(memberConsumptionStatParam); for (MemberConsumptionStatVo memberConsumptionStatVo : memberConsumptionStatVoList) { memberConsumptionStatVo.setOrderAchieve(memberConsumptionStatVo.getOrderAchieve().multiply(chinaInExchangeRate).setScale(2, BigDecimal.ROUND_HALF_UP)); } @@ -730,7 +446,7 @@ public class CuMemberController extends BaseController { R chinaCurrency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY); BigDecimal chinaInExchangeRate = chinaCurrency.getData().getInExchangeRate(); memberConsumptionStatParam.setPkCountry(SecurityUtils.getPkCountry()); - List memberConsumptionStatVoList = cuMemberService.getMemberConsumptionStat(memberConsumptionStatParam); + List memberConsumptionStatVoList = iCuMemberService.getMemberConsumptionStat(memberConsumptionStatParam); for (MemberConsumptionStatVo memberConsumptionStatVo : memberConsumptionStatVoList) { memberConsumptionStatVo.setOrderAchieve(memberConsumptionStatVo.getOrderAchieve().multiply(chinaInExchangeRate).setScale(2, BigDecimal.ROUND_HALF_UP)); } @@ -745,7 +461,7 @@ public class CuMemberController extends BaseController { @GetMapping("/member_awards_query") public TableDataInfo memberAwardsQuery(MemberAwardsQueryParam param) { startPage(); - List memberAwardsList = cuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry()); + List memberAwardsList = iCuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry()); if (CollectionUtil.isNotEmpty(memberAwardsList)) { // 中国汇率 CurrencyDTO currency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY).getData(); @@ -769,7 +485,7 @@ public class CuMemberController extends BaseController { */ @PostMapping("/member_awards_query_export") public void memberAwardsQueryExport(MemberAwardsQueryParam param, HttpServletResponse response) { - List memberAwardsList = cuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry()); + List memberAwardsList = iCuMemberService.listMemberAwards(param, SecurityUtils.getPkCountry()); if (CollectionUtil.isNotEmpty(memberAwardsList)) { // 中国汇率 CurrencyDTO currency = iCurrencyServiceApi.getCurrency(CountryConstants.CHINA_COUNTRY).getData(); @@ -850,7 +566,7 @@ public class CuMemberController extends BaseController { memberParam.setTeamList(userAuthorityDTO.getUserTeamList()); startPage(); - List cuMemberVOList = cuMemberService.retailMemberList(memberParam); + List cuMemberVOList = iCuMemberService.retailMemberList(memberParam); if (CollectionUtil.isNotEmpty(cuMemberVOList)) { // 获取需要翻译的枚举翻译 @@ -965,7 +681,7 @@ public class CuMemberController extends BaseController { memberParam.setVertexList(userAuthorityDTO.getUserVertexList()); memberParam.setTeamList(userAuthorityDTO.getUserTeamList()); - List cuMemberVOList = cuMemberService.retailMemberList(memberParam); + List cuMemberVOList = iCuMemberService.retailMemberList(memberParam); if (CollectionUtil.isNotEmpty(cuMemberVOList)) { // 获取需要翻译的枚举翻译 @@ -1030,7 +746,7 @@ public class CuMemberController extends BaseController { if (StringUtils.isEmpty(param.getMemberCode())) { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS)); } - CuMember cuMember = cuMemberService.getMember(param.getMemberCode()); + CuMember cuMember = iCuMemberService.getMember(param.getMemberCode()); if (cuMember == null) { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS)); } @@ -1055,7 +771,7 @@ public class CuMemberController extends BaseController { */ @GetMapping("/copy-pwd") public AjaxResult copyPwd(@RequestParam Long pkId) { - CuMember cuMember = cuMemberService.getOne(Wrappers.lambdaQuery() + CuMember cuMember = iCuMemberService.getOne(Wrappers.lambdaQuery() .eq(CuMember::getPkId, pkId) ); String tmpPwd = DateUtils.parseDateToFormat(DateUtils.MM_DD, new Date()) + cuMember.getLoginPassword(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberTeamMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberTeamMapper.java index f4bf82c7..1cf7266e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberTeamMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberTeamMapper.java @@ -3,9 +3,6 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberTeam; import com.hzs.common.domain.member.ext.CuMemberTeamExt; -import com.hzs.common.domain.vertex.BdVertex; -import com.hzs.member.base.param.MemberTeamInfoParam; -import com.hzs.member.base.vo.MemberTeamVo; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -17,22 +14,6 @@ public interface CuMemberTeamMapper extends BaseMapper { List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt); - /** - * 查询会员团队信息 - * - * @param memberTeamInfoParam - * @return - */ - List queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam); - - /** - * 查询会员安置团队信息 - * - * @param memberTeamInfoParam - * @return - */ - List queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam); - /** * 更新团队为空 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberRealInfoParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberRealInfoParam.java index 95d0efa0..37f7d675 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberRealInfoParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberRealInfoParam.java @@ -1,26 +1,9 @@ -package com.hzs.member.base.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/4/26 10:08 - * @Classname: MemberRealInfo - * @PackageName: com.hzs.member.base.param - */ +package com.hzs.member.base.param; -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; -import java.util.Date; import java.util.List; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.param - *@Author: yh - *@CreateTime: 2023-04-26 10:08 - *@Description: TODO - *@Version: 1.0 - */ @Data public class MemberRealInfoParam { @@ -69,47 +52,10 @@ public class MemberRealInfoParam { */ private String birthDate; - /** - * 省id - */ - private Integer pkProvince; - /** - * 市id - */ - private Integer pkCity; - /** - * 区县id - */ - private Integer pkCounty; - /** - * 详细地址 - */ - private String address; - /** * 性别(0=未知,1=男,2=女) */ - private Integer sex; - /** - * 银行名称 - */ - private String bankName; - - /** - * 支行名称 - */ - private String subBankName; - - /** - * 银行卡号 - */ - private String cardNumber; - - /** - * 邮箱 - */ - private String email; /** * 开始认证时间 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberTeamInfoParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberTeamInfoParam.java deleted file mode 100644 index 58de2209..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberTeamInfoParam.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.hzs.member.base.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/29 14:53 - * @Classname: MemberTeamInfoParam - * @PackageName: com.hzs.member.base.param - */ - -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.param - *@Author: yh - *@CreateTime: 2023-05-29 14:53 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class MemberTeamInfoParam { - - /** - * 查询date 时间 - */ - private Date queryDate; - - /** - * 查询业绩表名 - */ - private String settleTableName; - - /** - * 期间值 - */ - private Integer period; - - /** - * 会员编号 - */ - private String memberCode ; - - /** - * 真实奖衔 - */ - private Integer pkAwards; - - /** - * 关系类型 1 血缘 2 安置 - */ - private Integer relaType; - - /** - * 安置部门 - */ - private Integer placeDept; - - /** - * 血缘代数 - */ - private Integer consanguinityAlgebra; - - - /** - * 安置层级 - * 查询当前会员在团队的第几层 (查询伞下的所有人) - */ - private Integer resettleLevel; - - /** - * 安置位置 - */ - private String resettleLocation; - - /** - * 奖金收益 - */ - private BigDecimal realIncomeTotal; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java index 5964e3ff..c3e395b7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java @@ -3,8 +3,6 @@ package com.hzs.member.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMemberTeam; import com.hzs.common.domain.member.ext.CuMemberTeamExt; -import com.hzs.member.base.param.MemberTeamInfoParam; -import com.hzs.member.base.vo.MemberTeamVo; import java.util.List; @@ -41,22 +39,6 @@ public interface ICuMemberTeamService extends IService { **/ void updateCuMemberTeamByVertex(Long pkTeamCode); - /** - * 查询会员团队信息 - * - * @param memberTeamInfoParam - * @return - */ - List queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam); - - /** - * 查询会员安置信息团队 - * - * @param memberTeamInfoParam - * @return - */ - List queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam); - /** * 查询刷新团队数据 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index d5ce407f..df8fb41d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -2453,13 +2453,14 @@ public class CuMemberServiceImpl extends ServiceImpl i @Override public boolean updateMemberNameAndPhone(Long pkMember, String memberName, String phone, Long pkModified) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.set(CuMember::getMemberName, memberName); - updateWrapper.set(CuMember::getPhone, phone); - updateWrapper.set(CuMember::getPkModified, pkModified); - updateWrapper.set(CuMember::getModifiedTime, new Date()); - updateWrapper.eq(CuMember::getPkId, pkMember); - return update(updateWrapper); + CuMember cuMember = new CuMember(); + cuMember.setPkId(pkMember); + cuMember.setMemberName(memberName); + cuMember.setPhone(phone); + cuMember.setBirthDate(null); + cuMember.setPkModified(pkModified); + cuMember.setModifiedTime(new Date()); + return updateById(cuMember); } @Override diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java index 332ce383..b45e29ac 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java @@ -6,9 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberTeam; import com.hzs.common.domain.member.ext.CuMemberTeamExt; import com.hzs.member.base.mapper.CuMemberTeamMapper; -import com.hzs.member.base.param.MemberTeamInfoParam; import com.hzs.member.base.service.ICuMemberTeamService; -import com.hzs.member.base.vo.MemberTeamVo; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -61,16 +59,6 @@ public class CuMemberTeamServiceImpl extends ServiceImpl queryMemberTeamInfoList(MemberTeamInfoParam memberTeamInfoParam) { - return baseMapper.queryMemberTeamInfoList(memberTeamInfoParam); - } - - @Override - public List queryMemberTeamInfoPlaceParentList(MemberTeamInfoParam memberTeamInfoParam) { - return baseMapper.queryMemberTeamInfoPlaceParentList(memberTeamInfoParam); - } - @Override public void flushAllTeam(Integer pkCountry) { List list = this.list(Wrappers.lambdaQuery() diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AccountPointOutVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AccountPointOutVO.java deleted file mode 100644 index c9adcafc..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AccountPointOutVO.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.hzs.member.base.vo; - -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -/** - * - * 账户状态翻译 - * @Description: - * @Author: zhangjing - * @Time: 2023/2/4 14:56 - * @Classname: AccountPointOutVO - * @Package_name: com.hzs.member.base.vo - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class AccountPointOutVO implements Serializable { - /** - * 账户状态 - */ - @Transaction(transactionKey = EnumsPrefixConstants.ACCOUNT_STATUS) - private Integer accountState; - - private String accountStateVal; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AgreementExpireVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AgreementExpireVO.java deleted file mode 100644 index c572d65f..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/AgreementExpireVO.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.hzs.member.base.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -/** - * @Description: 服务有效期返回VO - * @Author: jiang chao - * @Time: 2024/1/15 14:08 - * @Classname: AgreementExpireVO - * @PackageName: com.hzs.member.base.vo - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class AgreementExpireVO { - - /** - * 提示标记(0=弹窗提示,1=不弹窗提示) - */ - private Integer promptFlag; - - /** - * 提示信息 - */ - private String promptMsg; - - /** - * 跳转页面(1=实名认证,2=续约专区) - */ - private Integer jumpPage; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuHonorWallVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuHonorWallVo.java deleted file mode 100644 index d5cde18f..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuHonorWallVo.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/8 11:47 - * @Classname: CuHonorWallVo - * @PackageName: com.hzs.member.base.vo - */ - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2023-06-08 11:47 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class CuHonorWallVo { - - /** - * 用户ID - */ - - private Long pkId; - - /** - * 类型 1 等级 2 奖衔 3 时长 4 推荐月 5 推荐季度 6 推荐年 7 抗衰月 8 抗衰季度 9 抗衰年 - */ - private Integer type; - - /** - * 类型 1 等级 2 奖衔 3 时长 4 推荐月 5 推荐季度 6 推荐年 7 抗衰月 8 抗衰季度 9 抗衰年 - */ - private String typeStr; - - private String name; - /** - * 类型属性值 - */ - private Integer value; - - /** - * 类型属性值 - */ - private String valueStr; - - /** - * 展示图片 - */ - - private String img; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - private String title; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuMemberAchieveLogParentVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuMemberAchieveLogParentVO.java deleted file mode 100644 index cb098aba..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/CuMemberAchieveLogParentVO.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.hzs.member.base.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.web.domain.BaseApprovalEntity; -import com.hzs.member.account.dto.MemberAmountDTO; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import java.util.Set; - -/** - *

- * 注水业绩记录表VO - *

- * - * @author hzs - * @since 2022-08-22 - */ -@Data -public class CuMemberAchieveLogParentVO extends BaseApprovalEntity { - - private static final long serialVersionUID = 1L; - /** - * 注水方式 EInfusingWaterType 1 增加 2减少 3 最终 - */ - private Integer infusingWaterType; - private BigDecimal aSumrealModifyPv; - private BigDecimal bSumrealModifyPv; - /** - * 注水备注 - */ - private String remarks; - - /** - * 业务单号 - */ - private String businessNo; - /** - * 审批业务类型 来源于枚举 EApprovalBusiness - */ - private Integer editType; - - /** - * 审核状态 2 待审核 4 已驳回 5 已完成(审核成功) 枚举 : EApproveStatus - */ - private Integer approveStatus; - - - /** - * 流程类型(1 免签呈 2免付费 3免签呈+免付费 4 需要签呈需要付费) - */ - private Integer processType; - /** - * 扣款币种类型 - */ - private Integer pkAccount; - /** - * 扣款币种类型 - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_ACC) - private Integer pkAccountKey; - /** - * 扣款币种类型 - */ - private String pkAccountKeyVal; - /** - * 会员手续费 - */ - List memberAmountDTOList; - /** - * 错误信息 - */ - private String errorMasg; - /** - * 情况说明 - */ - private String remark; - - /** - * 业务涨及会员ID列表 --提交审核必传 - */ - private Set pkMemberList; - /** - * 期间 - */ - private Integer period; - /** - * 注水业绩记录 - */ - private List cmalvList; - /** - * 国家 - */ - private Integer pkCountry; - - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DirectPushNewVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DirectPushNewVo.java deleted file mode 100644 index f5b8182e..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DirectPushNewVo.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/8/25 15:48 - * @Classname: DirectPushNewVo - * @PackageName: com.hzs.member.base.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2023-08-25 15:48 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class DirectPushNewVo { - - - /** - * 国旗 - */ - private String nationalFlag1; - - /** - * 国家名称 - */ - private String shortName; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员名称 - */ - private String memberName; - - /** - * 联系方式 - */ - private String phone; - /** - * 真实奖衔 - */ - private String awardsVal; - /** - * 隶属体系 - */ - private String vertexVal; - /** - * 隶属团队 - */ - private String teamCode; - /** - * 新增金额 - */ - private String consumeMoney; - - /** - * 新增业绩 - */ - private String consumeAchieve; - - /** - * 支付时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date payTime; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberChargingVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberChargingVo.java deleted file mode 100644 index ab8036b6..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberChargingVo.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/3/29 9:04 - * @Classname: MemberChargingVo - * @PackageName: com.hzs.member.base.vo - */ - -import lombok.Data; - -import java.math.BigDecimal; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2023-03-29 09:04 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class MemberChargingVo { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 变更前推荐编号 - */ - private String editOldParentMemberCode; - /** - * 变更前推荐姓名 - */ - private String editOldParentMemberName; - - /** - * 变更后推荐编号 - */ - private String editNewParentMemberCode; - /** - * 变更后推荐姓名 - */ - private String editNewParentMemberName; - - - /** - * 扣款币种 - */ - private Integer pkAccount; - /** - * 币种名称 - */ - private String accountName; - /** - * 扣费金额 - */ - private BigDecimal accountAmount; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDirectPushVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDirectPushVO.java deleted file mode 100644 index f254c73a..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDirectPushVO.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/1/17 14:10 - * @Classname: MemberDirectPushVO - * @PackageName: com.hzs.member.base.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2024-01-17 14:10 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class MemberDirectPushVO { - /** - * 统计时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "统计时间",dateFormat = "yyyy-MM-dd HH:mm:ss") - private Date payTime; - /** - * 排名 - */ - @Excel(name = "排名") - private Integer ranking; - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员名称 - */ - @Excel(name = "会员名称") - private String memberName; - - /** - * 等级名称 - */ - @Excel(name = "结算等级") - private String gradeName; - /** - * 奖衔名称 - */ - @Excel(name = "真实奖衔") - private String awardsName; - - - - /** - * 会员头像 - */ - - private String headPath; - /** - * 订单达标业绩 - */ - @Excel(name = "直推业绩") - private BigDecimal orderAchieve; - /** - * 脱敏业绩 - */ - private String orderAchieveStr; - - /** - * 是否登录会员 对应 EyesNo 枚举 - */ - private Integer isLoginMember; - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberRealInfoVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberRealInfoVO.java index 8fdb1415..b239a937 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberRealInfoVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberRealInfoVO.java @@ -62,13 +62,11 @@ public class MemberRealInfoVO { /** * 证件类型 ECardType */ - @Transaction(transactionKey = EnumsPrefixConstants.CARD_TYPE) private Integer cardType; /** * 性别(0=未知,1=男,2=女)Esex */ - @Transaction(transactionKey = EnumsPrefixConstants.SEX) private Integer sex; /** @@ -325,53 +323,11 @@ public class MemberRealInfoVO { */ private String idBack; - /** - * 省id - */ - private Integer pkProvince; - /** - * 省名称 - */ - @Excel(name = "省", sort = 11) - private String provinceName; - /** - * 市id - */ - private Integer pkCity; - /** - * 市名称 - */ - @Excel(name = "市", sort = 12) - private String cityName; - /** - * 区县id - */ - private Integer pkCounty; - /** - * 区县名 - */ - @Excel(name = "区/县", sort = 13) - private String countyName; /** * 详细地址 */ @Excel(name = "详细地址", sort = 14) private String address; - /** - * 银行名称 - */ - @Excel(name = "银行名称", sort = 15) - private String bankName; - /** - * 支行名称 - */ - @Excel(name = "支行名称", sort = 16) - private String subBankName; - /** - * 真实姓名(开户姓名) - */ - @Excel(name = "开户姓名", sort = 17) - private String accountName; /** * 证件类型 字符 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberTeamVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberTeamVo.java deleted file mode 100644 index 4be32f5e..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberTeamVo.java +++ /dev/null @@ -1,285 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/29 16:02 - * @Classname: MemberTeamVo - * @PackageName: com.hzs.member.base.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2023-05-29 16:02 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class MemberTeamVo { - - /** - * 会员主键 - */ - private Long memberId; - /** - * 安置人主键 - */ - private Long pkPlaceParent; - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员名称 - */ - @Excel(name = "会员姓名") - private String memberName; - - - /** - * 真实奖衔 - */ - private Integer pkAwards; - /** - * 真实奖衔 str - */ - @Excel(name = "真实奖衔") - private String pkAwardsStr; - - - /** - * 安置层数 - * 查询当前会员在团队的第几层 (查询伞下的所有人) - */ - @Excel(name = "安置层数") - private Integer resettleLevel; - - /** - * 安置部门 str - */ - @Excel(name = "安置位置") - private String placeDeptStr; - /** - * 安置位置 - */ - private String resettleLocation; - - /** - * 安置人编号 - */ - @Excel(name = "安置编号") - private String placeParentCode; - - /** - * 血缘代数 - */ - @Excel(name = "血缘代数") - private String consanguinityAlgebra; - - - /** - * 左区首购业绩 - */ - @Excel(name = "左区首购业绩($)") - private BigDecimal afirstPv; - - /** - * 右区首购业绩 - */ - @Excel(name = "右区首购业绩($)") - private BigDecimal bfirstPv; - - /** - * 安置部门 - */ - private Integer placeDept; - - - /** - * 血缘首购业绩 - */ - @Excel(name = "血缘首购业绩($)") - private BigDecimal consanguinityFirstPv; - - /** - * 左区复购业绩 - */ - @Excel(name = "左区复购业绩($)") - private BigDecimal repASumPv; - - /** - * 右区复购业绩 - */ - @Excel(name = "右区复购业绩($)") - private BigDecimal repBSumPv; - - /** - * 血缘复购业绩 - */ - @Excel(name = "血缘复购业绩($)") - private BigDecimal consanguinityRepBSumPv; - - /** - *左区真实业绩(PV) - */ - @Excel(name = "左区真实业绩($)") - private BigDecimal aSumRealPv; - - /** - * B区真实业绩(PV) - */ - @Excel(name = "右区真实业绩($)") - private BigDecimal bSumRealPv; - - /** - * 血缘真实业绩(pv) - */ - @Excel(name = "血缘真实业绩($)") - private BigDecimal consanguinityRealPv; - - /** - * 奖金收益 - */ - // @Excel(name = "奖金收益($)") - private BigDecimal realIncomeTotal; - - /** - * 奖金团队占比 - */ - @Excel(name = "奖金团队占比(%)",suffix = "%") - private BigDecimal bonusTeamProportion; - - /** - * 奖金大盘占比 - */ - @Excel(name = "奖金大盘占比%") - private BigDecimal bonusLargeMarketProportion; - - /** - * 直推人数 - */ - @Excel(name = "直推人数") - private Long directPushPeopleNumber; - /** - * 直推业绩 - */ - @Excel(name = "直推业绩") - private Long directPushPeoplePv; - /** - * 复购金额 - */ - @Excel(name = "复购金额$") - private BigDecimal repurchaseAmount; - - /** - * 复购业绩 - */ - @Excel(name = "复购业绩") - private BigDecimal repurchasePv; - - /** - * 复购积分 - */ - @Excel(name = "复购积分") - private BigDecimal repurchaseIntegral; - - /** - * 福利金额($) - */ - @Excel(name = "福利金额($)") - private BigDecimal benefitAmount; - - /** - * 福利业绩(pv) - */ - @Excel(name = "福利业绩($)") - private BigDecimal benefitPv; - - /** - * 福利积分 - */ - @Excel(name = "福利积分") - private BigDecimal welfarePoints; - - /** - * 转账次数 - */ - @Excel(name = "转账次数") - private Integer memberTransferCount; - - /** - * 转账金额($) - */ - @Excel(name = "转账金额($)") - private BigDecimal transferAmount; - - /** - * 充值金额($) - */ - @Excel(name = "充值金额($)") - private BigDecimal rechargeAmount; - - /** - * 提现次数 - */ - @Excel(name = "提现次数") - private Integer withdrawalNumber; - - /** - * 提现金额($) - */ - @Excel(name = "提现金额($)") - private Integer withdrawalAmount; - - /** - * 登录次数 - */ - // @Excel(name = "登录次数") - private Integer loginNumber; - - /** - * 最后一次登录时间 - */ - @Excel(name = "最近登录",dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date lastLoginTime; - - /** - * 最后一次登录时间间隔天数 - */ - // @Excel(name = "最后一次登录时间间隔天数") - private Long lastLoginTimeIntervalDays; - - /** - * 创建时间 - */ - @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - /** - * 支付时间 - */ - @Excel(name = "支付时间",dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date payTime; - - /** - * 修改直推次数 - */ - @Excel(name = "修改直推次数") - private Integer directPushNumber; - /** - * 层级 - */ - private Integer level; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/TheLableVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/TheLableVO.java deleted file mode 100644 index 80119160..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/TheLableVO.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.hzs.member.base.vo; - -import lombok.AllArgsConstructor; -import lombok.Data; - -/** - * @Description: 列表筛选显现隐藏实体vo - * @Author: zhangjing - * @Time: 2022/10/13 11:21 - * @Classname: CuMemberVO - * @PackageName: com.hzs.member.base.vo - */ -@Data -@AllArgsConstructor -public class TheLableVO { - private static final long serialVersionUID = 1L; - - /** - * 表头名称 - */ - private String titel; - - /** - * 对应字段 - */ - private String prop; - - /** - * key键 - */ - private Integer keyId; - - /** - * 显示隐藏 - */ - private String show; - - -} - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/WaresAuthorityParentVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/WaresAuthorityParentVo.java deleted file mode 100644 index 5995be39..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/WaresAuthorityParentVo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hzs.member.base.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/30 15:11 - * @Classname: WaresAuthorityParentVo - * @PackageName: com.hzs.member.base.vo - */ - -import lombok.Data; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.base.vo - *@Author: yh - *@CreateTime: 2024-04-30 15:11 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class WaresAuthorityParentVo { - - /** - * 会员主键 - */ - private Integer pkMember; - - /** - * 会员编号 - */ - private Long memberCount; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiDomicileChangeController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiDomicileChangeController.java index 5c14b9f3..e0e093e8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiDomicileChangeController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiDomicileChangeController.java @@ -2,14 +2,12 @@ package com.hzs.member.self.controller.api; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.self.CuSelfServiceLog; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.service.ICuMemberAuthenticationService; @@ -18,14 +16,10 @@ import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.self.service.ICuSelfServiceLogService; import com.hzs.member.self.vo.DomicileChangeVO; import com.hzs.member.sms.service.IApiAliSmsService; -import com.hzs.system.config.IServiceChargeServiceApi; -import com.hzs.system.config.dto.ServiceChargeDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.math.BigDecimal; import java.util.List; /** @@ -41,12 +35,9 @@ public class ApiDomicileChangeController extends BaseController { @Autowired private ICuMemberService iCuMemberService; @Autowired - private IApiAliSmsService iApiAliSmsService; - @Autowired private ICuSelfServiceLogService iCuSelfServiceLogService; - - @DubboReference - IServiceChargeServiceApi iServiceChargeServiceApi; + @Autowired + private IApiAliSmsService iApiAliSmsService; /** * 查询可申请信息 @@ -55,45 +46,45 @@ public class ApiDomicileChangeController extends BaseController { */ @GetMapping("/application-info-list") public AjaxResult applicationInformation() { - Long pkMember = SecurityUtils.getUserId(); - CuMemberExt member = iCuMemberService.getMemberById(pkMember); - DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().memberCode(member.getMemberCode()) - .memberName(member.getMemberName()).phone(member.getPhone()) - .changeNum(MagicNumberConstants.CHANGE_NUM).build(); + CuMemberExt member = iCuMemberService.getMemberById(SecurityUtils.getUserId()); + DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder() + .memberCode(member.getMemberCode()) + .memberName(member.getMemberName()) + .phone(member.getPhone()) + .changeNum(MagicNumberConstants.CHANGE_NUM) + .build(); return AjaxResult.success(domicileChangeVO); } - - @GetMapping("/application-info-detail") - public AjaxResult applicationInformationDetail() { - return AjaxResult.success(iCuSelfServiceLogService.selectDomicileChangeByPkMember(SecurityUtils.getUserId(), EApprovalBusiness.DOMICILE_CHANGE.getValue(), SecurityUtils.getPkCountry())); - } - /** - * 查询已申请信息 + * 显示户籍变更信息 * * @return AjaxResult */ - @GetMapping("/applied-info-list") - public AjaxResult appliedInformation() { - DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().pkMember(SecurityUtils.getUserId()) - .pkCountry(SecurityUtils.getPkCountry()).editType(EApprovalBusiness.DOMICILE_CHANGE.getValue()).build(); - List domicileChangeVOList = (List) iCuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1]; - return AjaxResult.success(domicileChangeVOList); + @GetMapping("/show-change-domicile") + public AjaxResult showChangeDomicile() { + String idBack = null; + String idFront = null; + Long pkMember = SecurityUtils.getUserId(); + Integer pkCountry = SecurityUtils.getPkCountry(); + CuMemberExt member = iCuMemberService.getMemberById(pkMember); + //查询实名认证信息原证件图 + CuMemberAuthenticationVO authenticationVO = CuMemberAuthenticationVO.builder().pkCountry(pkCountry).pkMember(pkMember).build(); + CuMemberAuthenticationVO cuMemberAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(authenticationVO); + if (null != cuMemberAuthenticationVO) { + idBack = cuMemberAuthenticationVO.getIdBack(); + idFront = cuMemberAuthenticationVO.getIdFront(); + } + DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder() + .memberCode(member.getMemberCode()) + .memberName(member.getMemberName()) + .phone(member.getPhone()) + .idBack(idBack) + .idFront(idFront) + .build(); + return AjaxResult.success(domicileChangeVO); } - - /** - * 自助服务是否显示户籍认证 - * - * @return AjaxResult - */ - @GetMapping("/show-index-domicile") - public AjaxResult showIndexDomicile() { - return AjaxResult.success(iCuSelfServiceLogService.showIndexDomicile(SecurityUtils.getPkCountry(), SecurityUtils.getUserId())); - } - - /** * 申请户籍变更 * @@ -125,13 +116,8 @@ public class ApiDomicileChangeController extends BaseController { } domicileChangeVO.setPkCountry(pkCountry); domicileChangeVO.setPkMember(pkMember); - //是否有正在审批业务 - AjaxResult existApprovalData = isExistApprovalData(domicileChangeVO); - if (!existApprovalData.equals(AjaxResult.success())) { - return existApprovalData; - } // 校验短信验证码 - String message = iApiAliSmsService.checkCode(domicileChangeVO.getChangePhone(), domicileChangeVO.getVerificationCode(), null); + String message = iApiAliSmsService.checkCode(domicileChangeVO.getChangePhone(), domicileChangeVO.getVerificationCode(), null, pkMember); if (null != message) { return AjaxResult.error(message); } @@ -139,63 +125,19 @@ public class ApiDomicileChangeController extends BaseController { } /** - * 显示户籍变更信息 + * 查询已申请信息 * * @return AjaxResult */ - @GetMapping("/show-change-domicile") - public AjaxResult showChangeDomicile() { - String idBack = null; - String idFront = null; - Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - CuMemberExt member = iCuMemberService.getMemberById(pkMember); - //查询实名认证信息原证件图 - CuMemberAuthenticationVO authenticationVO = CuMemberAuthenticationVO.builder().pkCountry(pkCountry).pkMember(pkMember).build(); - CuMemberAuthenticationVO cuMemberAuthenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(authenticationVO); - if (null != cuMemberAuthenticationVO) { - idBack = cuMemberAuthenticationVO.getIdBack(); - idFront = cuMemberAuthenticationVO.getIdFront(); - } - ServiceChargeDTO serviceChargeInfo = getServiceChargeInfo(pkCountry); - BigDecimal cost = null != serviceChargeInfo ? serviceChargeInfo.getCost() : BigDecimal.ZERO; - DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().memberCode(member.getMemberCode()) - .memberName(member.getMemberName()).phone(member.getPhone()).amount(cost).pkAccount(serviceChargeInfo.getPkAccount()) - .idBack(idBack).idFront(idFront).build(); - return AjaxResult.success(domicileChangeVO); - } - - /** - * 是否存在审核的数据 - * - * @param domicileChangeVO 户籍变更信息 - * @return AjaxResult - */ - private AjaxResult isExistApprovalData(DomicileChangeVO domicileChangeVO) { - CuSelfServiceLog cuSelfServiceLog = new CuSelfServiceLog(); - cuSelfServiceLog.setPkCountry(domicileChangeVO.getPkCountry()); - cuSelfServiceLog.setEditType(EApprovalBusiness.DOMICILE_CHANGE.getValue()); - cuSelfServiceLog.setPkMember(domicileChangeVO.getPkMember()); - Integer check = iCuSelfServiceLogService.checkSelfService(cuSelfServiceLog); - if (check > 0) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_UPDATE_CODE_REPEAT)); - } - return AjaxResult.success(); - } - - /** - * 查询手续费 - * - * @param pkCountry 国家pID - * @return ServiceChargeDTO - */ - private ServiceChargeDTO getServiceChargeInfo(Integer pkCountry) { - //查询扣费金额,账户信息 - ServiceChargeDTO serviceChargeDTO = new ServiceChargeDTO(); - serviceChargeDTO.setType(EApprovalBusiness.DOMICILE_CHANGE.getValue()); - serviceChargeDTO.setPkCountry(pkCountry); - serviceChargeDTO.setQuantity(MagicNumberConstants.CHANGE_NUM); - return iServiceChargeServiceApi.getServiceChargeByType(serviceChargeDTO).getData(); + @GetMapping("/applied-info-list") + public AjaxResult appliedInformation() { + DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder() + .pkMember(SecurityUtils.getUserId()) + .pkCountry(SecurityUtils.getPkCountry()) + .editType(EApprovalBusiness.DOMICILE_CHANGE.getValue()) + .build(); + List domicileChangeVOList = (List) iCuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1]; + return AjaxResult.success(domicileChangeVOList); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfController.java index 554721fe..3f7475fb 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfController.java @@ -1,19 +1,12 @@ package com.hzs.member.self.controller.api; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.self.service.ICuSelfServiceLogService; import com.hzs.member.self.vo.SelfVO; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -27,44 +20,23 @@ import org.springframework.web.bind.annotation.RestController; @RestController public class ApiSelfController extends BaseController { - @Autowired - private ICuMemberService iCuMemberService; @Autowired private ICuSelfServiceLogService iCuSelfServiceLogService; - @DubboReference - IGradeServiceApi iGradeServiceApi; - /** * 自助权限查询 */ @GetMapping("/authority") public AjaxResult validateSelfAuthority() { - CuMemberExt cuMember = iCuMemberService.getMenuMember(SecurityUtils.getUserId()); - - // 获取等级 - GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - if (EGrade.START_UP.getValue() == gradeDTO.getGradeValue()) { - // 会员等级,需要【实名认证】 - return AjaxResult.success(SelfVO.builder() - .existRealName(EYesNo.YES.getIntValue()) - .build()); - } - + Long userId = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); - Integer showAddress = iCuSelfServiceLogService.showHiddenAddress(cuMember.getPkId(), pkCountry); + Integer showAddress = iCuSelfServiceLogService.showHiddenAddress(userId, pkCountry); SelfVO selfVO = SelfVO.builder() .existAddress(showAddress) - .existOrderSelf(showAddress) .selfRevokeOrder(showAddress) - .existDomicile(iCuSelfServiceLogService.showIndexDomicile(pkCountry, cuMember.getPkId())) + .existDomicile(iCuSelfServiceLogService.showIndexDomicile(pkCountry, userId)) .existRealName(EYesNo.YES.getIntValue()) - .existMemberMonth(EYesNo.YES.getIntValue()) .build(); - if (!pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - selfVO.setSelfRevokeOrder(EYesNo.NO.getIntValue()); - } - return AjaxResult.success(selfVO); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/manage/DomicileChangeController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/manage/DomicileChangeController.java index b90b45c7..7353e6b7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/manage/DomicileChangeController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/manage/DomicileChangeController.java @@ -1,24 +1,17 @@ package com.hzs.member.self.controller.manage; - import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; - import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.self.CuSelfServiceLogExt; -import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; import com.hzs.member.self.service.ICuSelfServiceLogService; import com.hzs.member.self.vo.DomicileChangeVO; -import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -28,12 +21,6 @@ import java.util.List; /** * 变理户籍 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/18 10:07 - * @Classname: ApiDomicileChangeController - * @Package_name: com.hzs.member.self.controller.api */ @Slf4j @RequestMapping("/manage/change-domicile") @@ -43,10 +30,6 @@ public class DomicileChangeController extends BaseController { @Autowired private ICuSelfServiceLogService serviceLogService; - @Autowired - private UserTokenService userTokenService; - - /** * 户籍变更列表 * @@ -64,7 +47,6 @@ public class DomicileChangeController extends BaseController { return tableDataInfo; } - /** * 户籍变更列表 * @@ -77,35 +59,4 @@ public class DomicileChangeController extends BaseController { } - /** - * 驳回 - * - * @return AjaxResult - */ - @PostMapping("/domicile-change-reject") - @Log(module = EOperationModule.DOMICILE_CHANGE, business = EOperationBusiness.DOMICILE_CHANGE, method = EOperationMethod.REJECT) - public AjaxResult domicileChangeReject(@RequestBody DomicileChangeVO domicileChangeVO) { - if (StringUtils.isEmpty(domicileChangeVO.getRejectMsg())) { - return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.REJECT_MSG_NOT_NULL)); - } - return AjaxResult.success(serviceLogService.domicileChangeRejectById(domicileChangeVO, SecurityUtils.getUserId())); - } - - - /** - * 同意 - * - * @return AjaxResult - */ - @PostMapping("/domicile-change-agree") - @Log(module = EOperationModule.DOMICILE_CHANGE, business = EOperationBusiness.DOMICILE_CHANGE, method = EOperationMethod.AGREE) - public AjaxResult domicileChangeAgree(@RequestBody DomicileChangeVO domicileChangeVO) { - LoginUser loginUser = userTokenService.getLoginUser(); - domicileChangeVO.setLoginUser(loginUser); - domicileChangeVO.setPkModified(SecurityUtils.getUserId()); - domicileChangeVO.setPkCountry(SecurityUtils.getPkCountry()); - return AjaxResult.success(serviceLogService.domicileChangeAgree(domicileChangeVO)); - } - - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/mapper/CuSelfServiceLogMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/mapper/CuSelfServiceLogMapper.java index 082a2e69..243bf70a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/mapper/CuSelfServiceLogMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/mapper/CuSelfServiceLogMapper.java @@ -1,10 +1,8 @@ package com.hzs.member.self.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.self.CuSelfServiceLog; import com.hzs.common.domain.member.self.CuSelfServiceLogExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.member.self.vo.MyOrderItemsVO; import com.hzs.member.self.vo.SelfModifyAddressVO; import com.hzs.member.self.vo.DomicileChangeVO; @@ -13,48 +11,22 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 自助服务日志表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-04-17 */ public interface CuSelfServiceLogMapper extends BaseMapper { /** - * @description: 自助服务-查询已申请修改收货地址 - * @author: zhang jing - * @date: 2023/4/17 14:36 - * @param: [selfModifyAddressVO] - * @return: java.util.List + * 自助服务-查询已申请修改收货地址 **/ List querySelfModifyAddressList(SelfModifyAddressVO selfModifyAddressVO); + /** - * @description: 自助服务-查询已申请修改收货地址(管理端) - * @author: zhang jing - * @date: 2023/7/24 11:43 - * @param: [selfModifyAddressVO] - * @return: java.util.List + * 自助服务-查询已申请修改收货地址(管理端) **/ List querySelfModifyAddressManageList(SelfModifyAddressVO selfModifyAddressVO); - /** - * @description: 自助服务-校验是否存在重复审核 - * @author: zhang jing - * @date: 2023/4/17 16:40 - * @param: [selfModifyAddressVO] - * @return: java.lang.Integer - **/ - Integer checkSelfService(CuSelfServiceLog cuSelfServiceLog); - - /** - * @description: 自助服务-查询申请的最大次数 - * @author: zhang jing - * @date: 2023/4/17 17:08 - * @param: [selfModifyAddressVO] - * @return: java.lang.Integer + * 自助服务-查询申请的最大次数 **/ Integer selectByMaxApproveNumber(CuSelfServiceLog cuSelfServiceLog); @@ -74,16 +46,6 @@ public interface CuSelfServiceLogMapper extends BaseMapper { */ CuSelfServiceLogExt selectDomicileChangeDetail(@Param("pkId") Long pkId); - /** - * 根据用户ID和类型查询自动服务 - * - * @param editType 服务类型 - * @param pkMember 会员ID - * @param pkCountry 国家ID - * @return CuSelfServiceLogExt - */ - CuSelfServiceLogExt selectDomicileChangeByPkMember(@Param("editType") Integer editType, @Param("pkMember") Long pkMember, @Param("pkCountry") Integer pkCountry); - /** * 根据业务类型、业务编号查询自助信息 * @@ -93,12 +55,6 @@ public interface CuSelfServiceLogMapper extends BaseMapper { */ CuSelfServiceLog selectSelfServiceByBusinessNo(@Param("editType") Integer editType, @Param("businessNo") String businessNo); - /** - * 根据业务编号更新审批信息 - */ - - Integer updateSelfServiceByBusinessNo(DomicileChangeVO domicileChangeVO); - /** * 根据订单ID查询订单明细列表(前台使用,尽量只查能用到的) * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/provider/ICuSelfServiceServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/provider/ICuSelfServiceServiceProvider.java index d304978f..c678c28a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/provider/ICuSelfServiceServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/provider/ICuSelfServiceServiceProvider.java @@ -5,7 +5,6 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EModifyRecordStatus; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; @@ -14,7 +13,6 @@ import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.self.ICuSelfServiceServiceApi; import com.hzs.member.self.dto.SelfServiceDataDTO; import com.hzs.member.self.service.ICuSelfServiceLogService; -import com.hzs.member.self.vo.DomicileChangeVO; import com.hzs.member.self.vo.SelfModifyAddressVO; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; @@ -23,17 +21,10 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.List; import java.util.Map; /** * 自助服务Dubbo 服务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/19 16:24 - * @Classname: ICuSelfServiceServiceProvider - * @Package_name: com.hzs.member.self.provider */ @Slf4j @DubboService @@ -53,9 +44,6 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi { public R analysisSelfServiceData(SelfServiceDataDTO selfServiceDataDTO) { EApprovalBusiness eApprovalBusiness = EApprovalBusiness.getEnumByValue(selfServiceDataDTO.getEditType()); switch (eApprovalBusiness) { - case DOMICILE_CHANGE: - //户籍变更数据 - return R.ok(getDomicileChangeData(selfServiceDataDTO)); case SELF_MODIFY_ADDRESS: //修改地址 return R.ok(getSelfModifyAddress(selfServiceDataDTO)); @@ -65,24 +53,7 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi { } /** - * 户籍变更数据 - * - * @param selfServiceDataDTO 自助服务参数 - * @return List - */ - private List getDomicileChangeData(SelfServiceDataDTO selfServiceDataDTO) { - DomicileChangeVO domicileChangeVO = DomicileChangeVO.builder().editType(selfServiceDataDTO.getEditType()) - .pkCountry(selfServiceDataDTO.getPkCountry()) - .businessNo(selfServiceDataDTO.getBusinessNo()).build(); - return (List) cuSelfServiceLogService.selectSelfServiceByPkMember(domicileChangeVO)[1]; - } - - /** - * @description: 自助服务-修改收货地址 - * @author: zhang jing - * @date: 2023/4/20 16:18 - * @param: [selfServiceDataDTO] - * @return: java.util.List + * 自助服务-修改收货地址 **/ private SelfModifyAddressVO getSelfModifyAddress(SelfServiceDataDTO selfServiceDataDTO) { SelfModifyAddressVO selMad = SelfModifyAddressVO.builder() @@ -144,17 +115,6 @@ public class ICuSelfServiceServiceProvider implements ICuSelfServiceServiceApi { } try { switch (eApprovalBusiness) { - //户籍变更数据 - case DOMICILE_CHANGE: - //审批通过 - if (approveOperation.equals(EModifyRecordStatus.APPROVE.getValue())) { - return R.ok(cuSelfServiceLogService.domicileChangeApproved(approvalBusinessResultDTO, selfServiceLog)); - } - //审批驳回 - if (approveOperation.equals(EModifyRecordStatus.REJECT.getValue())) { - //横冲手续费 - return R.ok(cuSelfServiceLogService.domicileChangeReject(approvalBusinessResultDTO, selfServiceLog)); - } case SELF_MODIFY_ADDRESS: //修改地址 return R.ok(cuSelfServiceLogService.selfExamine(approvalBusinessResultDTO)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/ICuSelfServiceLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/ICuSelfServiceLogService.java index 300ecdf2..13f995bd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/ICuSelfServiceLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/ICuSelfServiceLogService.java @@ -24,11 +24,6 @@ public interface ICuSelfServiceLogService extends IService { **/ List querySelfModifyAddressManageList(SelfModifyAddressVO selfModifyAddressVO); - /** - * 自助服务-校验是否存在重复审核 - **/ - Integer checkSelfService(CuSelfServiceLog cuSelfServiceLog); - /** * **/ @@ -52,7 +47,6 @@ public interface ICuSelfServiceLogService extends IService { **/ boolean selfExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /** * 根据业务类型、用户ID查询自助服务 * @@ -78,16 +72,6 @@ public interface ICuSelfServiceLogService extends IService { */ DomicileChangeVO selectDomicileChangeDetail(Long pkId); - /** - * 根据用户ID和类型查询自动服务 - * - * @param editType 服务类型 - * @param pkMember 会员ID - * @param pkCountry 国家ID - * @return CuSelfServiceLogExt - */ - DomicileChangeVO selectDomicileChangeByPkMember(Long pkMember, Integer editType, Integer pkCountry); - /** * 根据业务类型、业务编号查询自助信息 * @@ -97,41 +81,6 @@ public interface ICuSelfServiceLogService extends IService { */ CuSelfServiceLog selectSelfServiceByBusinessNo(Integer editType, String businessNo); - /** - * 户籍变更审批通过 - * - * @param approvalBusinessResultDTO 审核参数 - * @param selfServiceLog 自助信息 - * @return Boolean - */ - Integer domicileChangeApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog); - - /** - * 户籍变更审批驳回 - * - * @param approvalBusinessResultDTO 审核参数 - * @param selfServiceLog 自助信息 - * @return Integer - */ - Integer domicileChangeReject(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog); - - /** - * 户籍变更审批驳回 - * - * @param domicileChangeVO ID - * @param pkMember 会员ID - * @return Integer - */ - Boolean domicileChangeRejectById(DomicileChangeVO domicileChangeVO, Long pkMember); - - /** - * 户籍变更审批同意(后台列表操作) - * - * @param domicileChangeVO 户籍变更 - * @return - */ - Integer domicileChangeAgree(DomicileChangeVO domicileChangeVO); - /** * **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/impl/CuSelfServiceLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/impl/CuSelfServiceLogServiceImpl.java index 2026d1ff..48694465 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/impl/CuSelfServiceLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/service/impl/CuSelfServiceLogServiceImpl.java @@ -5,12 +5,11 @@ import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.constant.RabbitMqConstants; -import com.hzs.common.core.constant.SystemFieldConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; @@ -18,14 +17,12 @@ import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.utils.CommonUtil; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.account.CuMemberAccount; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.member.self.CuSelfServiceLog; import com.hzs.common.domain.member.self.CuSelfServiceLogExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; -import com.hzs.member.account.dto.MemberAmountDTO; import com.hzs.member.account.service.*; import com.hzs.member.base.service.ICuMemberBusinessService; import com.hzs.member.base.service.ICuMemberService; @@ -39,9 +36,7 @@ import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; -import com.hzs.system.sys.dto.BusinessLogDTO; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -67,17 +62,13 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl querySelfModifyAddressList(SelfModifyAddressVO selfModifyAddressVO) { @@ -89,11 +80,6 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EDelFlag.DELETE.getValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.eq("PK_ID", cuSelfServiceLogExt.getPkId()); - update(updateWrapper); - } + + //更新业务 + iCuMemberService.updateMemberNameAndPhone(pkMember, domicileChangeVO.getChangeMemberName(), domicileChangeVO.getChangePhone(), pkMember); + // 注销实名认证、营业执照 + changeBusinessByChangeName(pkMember, pkMember); + //重置银行卡 + BusinessMemberVO businessMemberVO = BusinessMemberVO.builder().pkMember(pkMember).build(); +// iCuMemberBankService.batchUpdateBankBypkMembers(Collections.singletonList(businessMemberVO), pkModified); + //修改会员的变更次数 + List pkMembers = Collections.singletonList(businessMemberVO.getPkMember()); + iCuMemberService.updateMemberEditNumber(pkMembers, pkMember); + //变更前值 - DomicileChangeVO oldValue = DomicileChangeVO.builder().memberName(domicileChangeVO.getMemberName()) - .phone(domicileChangeVO.getPhone()).idFront(domicileChangeVO.getIdFront()).idBack(domicileChangeVO.getIdBack()).build(); + DomicileChangeVO oldValue = DomicileChangeVO.builder() + .memberName(domicileChangeVO.getMemberName()) + .phone(domicileChangeVO.getPhone()) + .idFront(domicileChangeVO.getIdFront()) + .idBack(domicileChangeVO.getIdBack()) + .build(); //变更后的值 - DomicileChangeVO newValue = DomicileChangeVO.builder().changeMemberName(domicileChangeVO.getChangeMemberName()) - .changePhone(domicileChangeVO.getChangePhone()).changeIdFront(domicileChangeVO.getChangeIdFront()).changeIdBack(domicileChangeVO.getChangeIdBack()).build(); + DomicileChangeVO newValue = DomicileChangeVO.builder() + .changeMemberName(domicileChangeVO.getChangeMemberName()) + .changePhone(domicileChangeVO.getChangePhone()) + .changeIdFront(domicileChangeVO.getChangeIdFront()) + .changeIdBack(domicileChangeVO.getChangeIdBack()) + .build(); String businessNo = CommonUtil.createSerialNumber(EOrderPrefix.SELF_SERVICE.getValue()); - CuSelfServiceLog oldServiceLog = CuSelfServiceLog.builder().pkMember(pkMember) - .editType(editType).oldValue(JSONUtil.toJsonStr(oldValue)).selfRemark(domicileChangeVO.getRemark()).description(domicileChangeVO.getDescription()) - .newValue(JSONUtil.toJsonStr(newValue)).businessNo(businessNo).approveStatus(EApproveRechargeStatus.SUBMIT.getValue()).pkAccount(domicileChangeVO.getPkAccount()) - .approveNumber(MagicNumberConstants.CHANGE_NUM).singleAmount(domicileChangeVO.getAmount()).editTypePay(ETradeType.getValueByApprovalValue(editType)).build(); - oldServiceLog.setPkCreator(pkMember); - oldServiceLog.setPkCountry(pkCountry); - //保存 - this.save(oldServiceLog); - //扣费 - return Charging(domicileChangeVO, businessNo); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Integer domicileChangeAgree(DomicileChangeVO domicileChangeVO) { - String businessNo = domicileChangeVO.getBusinessNo(); - Long pkMember = domicileChangeVO.getPkMember(); - Long pkModified = domicileChangeVO.getPkModified(); - //更新审核状态 - DomicileChangeVO domicileChange = DomicileChangeVO.builder().businessNo(businessNo) - .approveStatus(EApproveRechargeStatus.WAIT.getValue()).approveTime(new Date()) - .pkModified(pkModified).build(); - Integer result = baseMapper.updateSelfServiceByBusinessNo(domicileChange); - //调用审批接口,修改审批状态 - ApprovalSubmitDTO approvalSubmitDTO = ApprovalSubmitDTO.builder().eApprovalBusiness(EApprovalBusiness.DOMICILE_CHANGE) - .businessCode(businessNo).signSource(ESignSource.MANAGE) - .signType(ESignType.GENERAL).userIdList(domicileChangeVO.getUserIdList()) - .remark(domicileChangeVO.getRemark()).pkMemberList(Collections.singleton(pkMember)) - .sendIdList(domicileChangeVO.getSendIdList()).fileList(domicileChangeVO.getFileList()) + CuSelfServiceLog oldServiceLog = CuSelfServiceLog.builder() + .pkMember(pkMember) + .editType(EApprovalBusiness.DOMICILE_CHANGE.getValue()) + .oldValue(JSONUtil.toJsonStr(oldValue)) + .newValue(JSONUtil.toJsonStr(newValue)) + .businessNo(businessNo) + .selfRemark(domicileChangeVO.getRemark()) + .description(domicileChangeVO.getDescription()) + .approveStatus(EApproveRechargeStatus.AGREE.getValue()) + .pkAccount(domicileChangeVO.getPkAccount()) + .approveNumber(MagicNumberConstants.CHANGE_NUM) + .singleAmount(domicileChangeVO.getAmount()) + .editTypePay(ETradeType.getValueByApprovalValue(EApprovalBusiness.DOMICILE_CHANGE.getValue())) .build(); - R submit = iApprovalServiceApi.submit(approvalSubmitDTO, domicileChangeVO.getLoginUser()); - if (!submit.isSuccess()) { - throw new RuntimeException(submit.getMsg()); - } - //MQ户籍变更操作日志 - CuSelfServiceLog cuSelfServiceLog = baseMapper.selectSelfServiceByBusinessNo(EApprovalBusiness.DOMICILE_CHANGE.getValue(), businessNo); - packageDomicileOperationLog(cuSelfServiceLog, businessNo, "同意", pkModified, false); - return result; + oldServiceLog.setPkCreator(pkMember); + oldServiceLog.setPkCountry(CountryConstants.CHINA_COUNTRY); + return this.save(oldServiceLog); } - /** - * 户籍变更操作日志 - * - * @param cuSelfServiceLog 入参 - * @param businessNo 业务编号 - * @param operationType 操作类型 - */ - private void packageDomicileOperationLog(CuSelfServiceLog cuSelfServiceLog, String businessNo, String operationType, Long pkMember, Boolean freeSignFlag) { - DomicileChangeVO oldValue = JSONUtil.toBean(cuSelfServiceLog.getOldValue(), DomicileChangeVO.class); - DomicileChangeVO newValue = JSONUtil.toBean(cuSelfServiceLog.getNewValue(), DomicileChangeVO.class); - CuMemberExt cumember = cuMemberService.getMemberById(cuSelfServiceLog.getPkMember()); - String sb = "会员编号:" + cumember.getMemberCode() + - " 变更前的会员姓名:" + oldValue.getMemberName() + - " 变更后的会员姓名:" + newValue.getChangeMemberName() + - " 变更前的联系方式:" + oldValue.getPhone() + - " 变更后的联系方式:" + newValue.getChangePhone() + - " 操作类型:" + operationType; - BusinessLogDTO businessLog = BusinessLogDTO.builder() - .businessType(EApprovalBusiness.DOMICILE_CHANGE.getValue()) - .businessCode(businessNo).pkMember(cuSelfServiceLog.getPkMember()) - .content(sb).pkCreator(pkMember) - .pkCountry(cuSelfServiceLog.getPkCountry()) - .freeSignFlag(freeSignFlag).build(); - rabbitTemplate.convertAndSend(RabbitMqConstants.BUSINESS_LOG_EXCHANGE, RabbitMqConstants.BUSINESS_LOG_KEY, Collections.singleton(businessLog)); - } - - - /** - * 扣费 - * - * @param domicileChangeVO 户籍变更信息 - * @param businessNo 业务编号 - */ - public Boolean Charging(DomicileChangeVO domicileChangeVO, String businessNo) { - MemberAmountDTO memberAmountDTO = MemberAmountDTO.builder().pkMember(domicileChangeVO.getPkMember()).tradeAmount(domicileChangeVO.getAmount()).build(); - List memberAmountDTOList = new ArrayList<>(); - memberAmountDTOList.add(memberAmountDTO); - - BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().pkAccount(domicileChangeVO.getPkAccount()) - .tradeType(EApprovalBusiness.DOMICILE_CHANGE.getValue()) - .tradeCode(businessNo) - .pkCountry(domicileChangeVO.getPkCountry()) - .pkCreator(domicileChangeVO.getPkModified()).build(); - businessCommissionDTO.setMemberAmountDTOList(memberAmountDTOList); - return cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO); - } - - @Override public Object[] selectSelfServiceByPkMember(DomicileChangeVO domicileChangeVO) { DomicileChangeVO domicileChange; @@ -290,11 +215,11 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_MEMBER", pkMember); - queryWrapper.eq("PK_COUNTRY", pkCountry); - queryWrapper.eq("EDIT_TYPE", EApprovalBusiness.DOMICILE_CHANGE.getValue()); - queryWrapper.eq("APPROVE_STATUS", EApproveRechargeStatus.AGREE.getValue()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuSelfServiceLog::getPkMember, pkMember); + queryWrapper.eq(CuSelfServiceLog::getPkCountry, pkCountry); + queryWrapper.eq(CuSelfServiceLog::getEditType, EApprovalBusiness.DOMICILE_CHANGE.getValue()); + queryWrapper.eq(CuSelfServiceLog::getApproveStatus, EApproveRechargeStatus.AGREE.getValue()); Integer count = baseMapper.selectCount(queryWrapper); return count > 0 ? EYesNo.NO.getIntValue() : EYesNo.YES.getIntValue(); } @@ -303,18 +228,8 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl pkMembers = Collections.singletonList(businessMemberVO.getPkMember()); - cuMemberService.updateMemberEditNumber(pkMembers, pkModified); - //更新状态 - return updateApprovalStatus(approvalBusinessResultDTO, pkModified); - } - /** * 更新姓名删除相关实名操作 * @@ -372,73 +266,19 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl pkMembers = Collections.singletonList(pkMember); //更新实名认证 - Boolean auth = cuMemberAuthenticationService.deleteByPkMembers(pkMembers, pkModified); + Boolean auth = iCuMemberAuthenticationService.deleteByPkMembers(pkMembers, pkModified); //更新会员是否实名 if (auth) { - cuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.REAL_NAME.getValue()); + iCuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.REAL_NAME.getValue()); } //更新营业执照 - Boolean license = cuMemberBusinessLicenseService.updateMemberLicenseByPkMembers(pkMembers, pkModified); + Boolean license = iCuMemberBusinessLicenseService.updateMemberLicenseByPkMembers(pkMembers, pkModified); //更新会员是否营业执照 if (license) { - cuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.BUS_LICENSE.getValue()); + iCuMemberService.updateMemberStatusByPkIds(pkMembers, pkModified, EAuthType.BUS_LICENSE.getValue()); } } - @Override - @Transactional(rollbackFor = Exception.class) - public Integer domicileChangeReject(ApprovalBusinessResultDTO approvalBusinessResultDTO, CuSelfServiceLog selfServiceLog) { - Long userId = approvalBusinessResultDTO.getLoginUser().getUserId(); - //扣费横冲 - EApprovalBusiness eApprovalBusiness = approvalBusinessResultDTO.getEApprovalBusiness(); - String businessCode = approvalBusinessResultDTO.getBusinessCode(); - BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().tradeType(eApprovalBusiness.getValue()) - .tradeCode(businessCode).pkCountry(selfServiceLog.getPkCountry()) - .pkCreator(userId).build(); - cuMemberTradeService.businessCommissionReject(businessCommissionDTO); - //更新状态 - return updateApprovalStatus(approvalBusinessResultDTO, userId); - } - - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean domicileChangeRejectById(DomicileChangeVO domicileChangeVO, Long pkMember) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.set("approve_status", EApproveRechargeStatus.REJECT.getValue()); - updateWrapper.set("approve_time", new Date()); - updateWrapper.set("REJECT_MSG", domicileChangeVO.getRejectMsg()); - updateWrapper.eq("PK_ID", domicileChangeVO.getPkId()); - //更新状态 - update(updateWrapper); - CuSelfServiceLog selfServiceLog = baseMapper.selectById(domicileChangeVO.getPkId()); - //扣费横冲 - BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder().tradeType(selfServiceLog.getEditType()) - .tradeCode(selfServiceLog.getBusinessNo()).pkCountry(selfServiceLog.getPkCountry()) - .pkCreator(pkMember).build(); - Boolean result = cuMemberTradeService.businessCommissionReject(businessCommissionDTO); - // MQ户籍变更操作日志 - packageDomicileOperationLog(selfServiceLog, selfServiceLog.getBusinessNo(), "驳回", pkMember, true); - return result; - } - - /** - * 更新审核状态 - * - * @param approvalBusinessResultDTO 审核参数 - * @param pkModified 修改人ID - * @return Integer - */ - public Integer updateApprovalStatus(ApprovalBusinessResultDTO approvalBusinessResultDTO, Long pkModified) { - DomicileChangeVO domicileChange = DomicileChangeVO.builder().businessNo(approvalBusinessResultDTO.getBusinessCode()) - .approveStatus(approvalBusinessResultDTO.getApproveOperation() + 1).approveTime(new Date()) - .pkModified(pkModified).build(); - return baseMapper.updateSelfServiceByBusinessNo(domicileChange); - } - - @Transactional(rollbackFor = Exception.class) @Override public boolean selfExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -490,7 +330,7 @@ public class CuSelfServiceLogServiceImpl extends ServiceImpl cuMemberList = iCuMemberService.listMemberByPhone(phone); - if (CollectionUtil.isEmpty(cuMemberList)) { - return AjaxResult.error("会员联系方式不存在"); + CuMember cuMember = iCuMemberService.getMember(memberCode); + if (null == cuMember) { + return AjaxResult.error("会员或联系方式不存在"); } - return toAjax(iApiCodeService.sendRecoverCode(phone)); + return toAjax(iApiAliSmsService.sendRecoverCode(phone, cuMember.getPkId())); } /** @@ -72,7 +70,7 @@ public class ApiSmsController extends BaseController { return AjaxResult.error("会员信息不存在"); } - return toAjax(iApiCodeService.resetPayPasswordCode(cuMemberExt.getPhone())); + return toAjax(iApiAliSmsService.resetPayPasswordCode(cuMemberExt.getPhone(), cuMemberExt.getPkId())); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiAliSmsService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiAliSmsService.java index f5d40803..96dedfd7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiAliSmsService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiAliSmsService.java @@ -11,9 +11,10 @@ public interface IApiAliSmsService { * @param phone 手机号码 * @param checkKey 验证码KEY -- 为空使用默认 * @param sendTimKey 验证码重复发送间隔KEY -- 为空使用默认 + * @param pkMember 会员ID -- 如果有值,优先缓存使用 * @return */ - String sendCode(String phone, String checkKey, String sendTimKey); + String sendCode(String phone, String checkKey, String sendTimKey, Long pkMember); /** * 校验短信验证码 @@ -21,9 +22,10 @@ public interface IApiAliSmsService { * @param phone 手机号码 * @param smsCode 短信验证码 * @param checkKey 验证码KEY -- 为空使用默认 + * @param pkMember 会员ID -- 如果有值,优先缓存使用 * @return */ - String checkCode(String phone, String smsCode, String checkKey); + String checkCode(String phone, String smsCode, String checkKey, Long pkMember); // /** // * 登录发送验证码 @@ -63,34 +65,38 @@ public interface IApiAliSmsService { * 找回密码发送验证码 * * @param phone 手机号码 + * @param pkMember 会员ID * @return */ - String sendRecoverCode(String phone); + String sendRecoverCode(String phone, Long pkMember); /** * 校验找回密码验证码 * * @param phone 手机号码 * @param smsCode 短信验证码 + * @param pkMember 会员ID * @return */ - String checkRecoverCode(String phone, String smsCode); + String checkRecoverCode(String phone, String smsCode, Long pkMember); /** * 重置支付密码发送验证码 * * @param phone 手机号码 + * @param pkMember 会员ID * @return */ - String resetPayPasswordCode(String phone); + String resetPayPasswordCode(String phone, Long pkMember); /** * 校验重置支付密码验证码 * * @param phone 手机号码 * @param smsCode 短信验证码 + * @param pkMember 会员ID * @return */ - String checkPayPasswordCode(String phone, String smsCode); + String checkPayPasswordCode(String phone, String smsCode, Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiCodeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiCodeService.java deleted file mode 100644 index 2489f9b2..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/IApiCodeService.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.hzs.member.sms.service; - -/** - * 验证码服务 - */ -public interface IApiCodeService { - - /** - * 短信验证码 - * - * @param phone 联系方式 - * @param checkKey 验证码KEY -- 为空使用默认 - * @param sendTimKey 验证码重复发送间隔KEY -- 为空使用默认 - * @return - */ - String sendCode(String phone, String checkKey, String sendTimKey); - - /** - * 校验短信验证码 - * - * @param phone 联系方式 - * @param smsCode 短信验证码 - * @param checkKey 验证码KEY -- 为空使用默认 - * @return - */ - String checkCode(String phone, String smsCode, String checkKey); - - /** - * 注册发送验证码 - * - * @param phone 联系方式 - * @return - */ - String sendRegisterCode(String phone); - - /** - * 校验注册验证码 - * - * @param phone 联系方式 - * @param smsCode 短信验证码 - * @return - */ - String checkRegisterCode(String phone, String smsCode); - - /** - * 找回密码发送验证码 - * - * @param phone 联系方式 - * @return - */ - String sendRecoverCode(String phone); - - /** - * 校验找回密码验证码 - * - * @param phone 联系方式 - * @param smsCode 短信验证码 - * @return - */ - String checkRecoverCode(String phone, String smsCode); - - /** - * 重置支付密码发送验证码 - * - * @param phone 联系方式 - * @return - */ - String resetPayPasswordCode(String phone); - - /** - * 校验重置支付密码验证码 - * - * @param phone 联系方式 - * @param smsCode 短信验证码 - * @return - */ - String checkPayPasswordCode(String phone, String smsCode); - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiAliSmsServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiAliSmsServiceImpl.java index 501821f2..80b18eec 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiAliSmsServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiAliSmsServiceImpl.java @@ -33,12 +33,12 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { ISmsServiceApi iSmsServiceApi; @Override - public String sendCode(String phone, String checkKey, String sendTimKey) { - // 每个手机号每天只能获取30次短信验证码 + public String sendCode(String phone, String checkKey, String sendTimKey, Long pkMember) { + // 每个手机号每天只能获取20次短信验证码 String smsCountKey = String.format(CacheConstants.SMS_COUNT, DateUtil.format(new Date(), DatePattern.PURE_DATE_PATTERN)); Object smsCountObj = redisService.getCacheMapValue(smsCountKey, phone); if (smsCountObj != null) { - if (Integer.parseInt(smsCountObj.toString()) >= 30) { + if (Integer.parseInt(smsCountObj.toString()) > 20) { return "当前手机号码获取短信已达当日上限"; } } @@ -64,12 +64,11 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { if (sendResult.isSuccess()) { // 返回成功,验证码放入缓存 // 验证码缓存有效期5分钟 - redisService.setCacheObject(checkKey + phone, code, 5L, TimeUnit.MINUTES); + redisService.setCacheObject(checkKey + (null != pkMember ? pkMember : phone), code, 5L, TimeUnit.MINUTES); // 验证码发送间隔不能低于1分钟 redisService.setCacheObject(sendTimKey + phone, "", 1L, TimeUnit.MINUTES); - // 每天只能发送30次短信验证码 if (smsCountObj == null) { redisService.setCacheMapValue(smsCountKey, phone, 1); redisService.expire(smsCountKey, 1, TimeUnit.DAYS); @@ -84,7 +83,7 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { } @Override - public String checkCode(String phone, String smsCode, String checkKey) { + public String checkCode(String phone, String smsCode, String checkKey, Long pkMember) { if (EEnv.TEST.getValue().equals(BdConfig.getEnv()) && "ASDF".equals(smsCode)) { // 测试环境暂时不发放短信 return null; @@ -95,16 +94,16 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { checkKey = CacheConstants.DEFAULT_CHECK; } - String cacheSmsCode = redisService.getCacheObject(checkKey + phone); + String cacheSmsCode = redisService.getCacheObject(checkKey + (null != pkMember ? pkMember : phone)); if (null == cacheSmsCode) { return "验证码已失效"; } if (!cacheSmsCode.equals(smsCode)) { - // 验证码错误,需不需要清除缓存验证码??会不会存在暴力破解情况?? + // TODO 验证码错误,需不需要清除缓存验证码??会不会存在暴力破解情况?? return "验证码错误"; } // 校验通过,删除验证码缓存 - redisService.deleteObject(checkKey + phone); + redisService.deleteObject(checkKey + (null != pkMember ? pkMember : phone)); return null; } @@ -125,12 +124,12 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { @Override public String sendRegisterCode(String phone) { - return this.sendCode(phone, CacheConstants.REGISTER_CHECK, CacheConstants.REGISTER_SEND_TIME); + return this.sendCode(phone, CacheConstants.REGISTER_CHECK, CacheConstants.REGISTER_SEND_TIME, null); } @Override public String checkRegisterCode(String phone, String smsCode) { - String str = this.checkCode(phone, smsCode, CacheConstants.REGISTER_CHECK); + String str = this.checkCode(phone, smsCode, CacheConstants.REGISTER_CHECK, null); if (null == str) { // 删除验证码间隔时间缓存 redisService.deleteObject(CacheConstants.REGISTER_SEND_TIME + phone); @@ -139,13 +138,13 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { } @Override - public String sendRecoverCode(String phone) { - return this.sendCode(phone, CacheConstants.RECOVER_CHECK, CacheConstants.RECOVER_SEND_TIME); + public String sendRecoverCode(String phone, Long pkMember) { + return this.sendCode(phone, CacheConstants.RECOVER_CHECK, CacheConstants.RECOVER_SEND_TIME, pkMember); } @Override - public String checkRecoverCode(String phone, String smsCode) { - String str = this.checkCode(phone, smsCode, CacheConstants.RECOVER_CHECK); + public String checkRecoverCode(String phone, String smsCode, Long pkMember) { + String str = this.checkCode(phone, smsCode, CacheConstants.RECOVER_CHECK, pkMember); if (null == str) { // 删除验证码间隔时间缓存 redisService.deleteObject(CacheConstants.RECOVER_SEND_TIME + phone); @@ -154,13 +153,13 @@ public class ApiAliSmsServiceImpl implements IApiAliSmsService { } @Override - public String resetPayPasswordCode(String phone) { - return this.sendCode(phone, CacheConstants.RESET_CHECK, CacheConstants.RESET_SEND_TIME); + public String resetPayPasswordCode(String phone, Long pkMember) { + return this.sendCode(phone, CacheConstants.RESET_CHECK, CacheConstants.RESET_SEND_TIME, pkMember); } @Override - public String checkPayPasswordCode(String phone, String smsCode) { - String str = this.checkCode(phone, smsCode, CacheConstants.RESET_CHECK); + public String checkPayPasswordCode(String phone, String smsCode, Long pkMember) { + String str = this.checkCode(phone, smsCode, CacheConstants.RESET_CHECK, pkMember); if (null == str) { // 删除验证码间隔时间缓存 redisService.deleteObject(CacheConstants.RESET_SEND_TIME + phone); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiCodeServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiCodeServiceImpl.java deleted file mode 100644 index 24c0b2a2..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/sms/service/impl/ApiCodeServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.member.sms.service.impl; - -import com.hzs.member.sms.service.IApiAliSmsService; -import com.hzs.member.sms.service.IApiCodeService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -/** - * 验证码服务 - */ -@Slf4j -@Service -public class ApiCodeServiceImpl implements IApiCodeService { - - @Autowired - private IApiAliSmsService iApiAliSmsService; - - @Override - public String sendCode(String phone, String checkKey, String sendTimKey) { - return iApiAliSmsService.sendCode(phone, checkKey, sendTimKey); - } - - @Override - public String checkCode(String phone, String smsCode, String checkKey) { - return iApiAliSmsService.checkCode(phone, smsCode, checkKey); - } - - @Override - public String sendRegisterCode(String phone) { - return iApiAliSmsService.sendRegisterCode(phone); - } - - @Override - public String checkRegisterCode(String phone, String smsCode) { - return iApiAliSmsService.checkRegisterCode(phone, smsCode); - } - - @Override - public String sendRecoverCode(String phone) { - return iApiAliSmsService.sendRecoverCode(phone); - } - - @Override - public String checkRecoverCode(String phone, String smsCode) { - return iApiAliSmsService.checkRecoverCode(phone, smsCode); - } - - @Override - public String resetPayPasswordCode(String phone) { - return iApiAliSmsService.resetPayPasswordCode(phone); - } - - @Override - public String checkPayPasswordCode(String phone, String smsCode) { - return iApiAliSmsService.checkPayPasswordCode(phone, smsCode); - } - -} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index bf57e173..d001e385 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -1264,40 +1264,29 @@ cm.MEMBER_CODE as memberCode, cm.MEMBER_NAME memberName, cm.PHONE phone, - bg.PK_TRANSACTION as pkRegisterGrade, - bgg.PK_TRANSACTION as pkSettleGrade, - ba.PK_TRANSACTION as pkAwards, - bamax.PK_TRANSACTION as pkMaxAwards, + cm.pk_register_grade as pkRegisterGrade, + cm.pk_settle_grade as pkSettleGrade, + cm.pk_awards as pkAwards, + cm.PK_MAX_AWARDS as pkMaxAwards, ma.SEX as sex, cm.birth_date birthDate, ma.ID_TYPE idType, ma.ID_CARD idCard, ma.ID_FRONT idFront, ma.ID_BACK idBack, - ma.PK_PROVINCE pkProvince, - ma.PK_CITY pkCity, - ma.PK_COUNTY pkCounty, ma.ADDRESS address, - bb.BANK_NAME bankName, - ma.SUB_BANK_NAME subBankName, - ma.ACCOUNT_NAME accountName, ma.PHONE reservedPhone, ma.CARD_NUMBER cardNumber, - cm.EMAIL email, ma.CREATION_TIME certificationTime, cm.CREATION_TIME creationTime, cm.PAY_TIME payTime, cm.DIRECT_PUSH_NUMBER directPushNumber - from CU_MEMBER cm - left join CU_MEMBER_AUTHENTICATION ma on ma.PK_MEMBER = cm.PK_ID and ma.del_flag = 0 - left join BD_BANK bb on bb.PK_ID = ma.pk_bank - left join BD_GRADE bg on bg.pk_id=cm.PK_REGISTER_GRADE - left join BD_GRADE bgg on bgg.pk_id=cm.PK_SETTLE_GRADE - left join BD_AWARDS ba on ba.pk_id=cm.PK_AWARDS - left join BD_AWARDS baMax on baMax.pk_id=cm.PK_MAX_AWARDS + from CU_MEMBER_AUTHENTICATION ma + left join CU_MEMBER cm on ma.PK_MEMBER = cm.PK_ID left join bd_vertex ver on cm.pk_vertex = ver.pk_id LEFT JOIN cu_member_team ct ON ct.pk_id = cm.pk_team_code where cm.del_flag = 0 + and ma.del_flag = 0 and cm.PK_SETTLE_COUNTRY = #{pkCountry} @@ -1310,8 +1299,8 @@ and cm.MEMBER_NAME like #{memberName} ||'%' - - and ma.ID_CARD like '%' || #{birthDate} ||'%' + + and cm.birth_date = to_date(#{birthDate}, 'yyyy-mm-dd') and cm.PHONE = #{phone} @@ -1331,33 +1320,9 @@ and ma.ID_CARD = #{idCard} - - and ma.PK_PROVINCE = #{pkProvince} - - - and ma.PK_CITY = #{pkCity} - - - and ma.PK_COUNTY = #{pkCounty} - - - and ma.ADDRESS like #{address} ||'%' - and ma.SEX = #{sex} - - and bb.BANK_NAME like #{bankName}||'%' - - - and ma.SUB_BANK_NAME like #{subBankName}||'%' - - - and ma.CARD_NUMBER like #{cardNumber}||'%' - - - and cm.EMAIL like #{email}||'%' - and ma.CREATION_TIME >= to_date(#{startCertificationTime}, 'yyyy-mm-dd') @@ -2448,7 +2413,6 @@ ) - - - - - update cu_member diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml index 604953f4..9c5934db 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml @@ -58,7 +58,6 @@ - @@ -69,20 +68,8 @@ - - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_MEMBER, EDIT_TYPE, OLD_VALUE, NEW_VALUE, BUSINESS_NO, APPROVE_STATUS, APPROVE_NUMBER, EDIT_TYPE_PAY, SINGLE_AMOUNT - - - select l.*, m.member_code memberCode - from cu_self_service_log l - left join cu_member m - on l.pk_member = m.pk_id - and m.del_flag = 0 - where l.del_flag = 0 - and l.pk_id = #{pkId} + from cu_self_service_log l + left join cu_member m + on l.pk_member = m.pk_id + and m.del_flag = 0 + where l.del_flag = 0 + and l.pk_id = #{pkId} - - - - - - - - - update cu_self_service_log - - approve_status = #{approveStatus}, - approve_time = #{approveTime}, - pk_modified = #{pkModified}, - modified_time = sysdate - - where BUSINESS_NO = #{businessNo} - - diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java index df9c67a6..fd7fac8d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdTradeConfig; import com.hzs.system.config.vo.BdTradeConfigVO; @@ -8,16 +7,10 @@ import com.hzs.system.config.vo.BdTradeConfigVO; import java.util.List; /** - *

* 交易配置表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface BdTradeConfigMapper extends BaseMapper { - /** * 查询交易配置列表 * @@ -26,7 +19,6 @@ public interface BdTradeConfigMapper extends BaseMapper { */ List selectTradeConfigList(BdTradeConfigVO tradeConfigVO); - /** * 根据条件查询交易配置列表 * @@ -35,5 +27,4 @@ public interface BdTradeConfigMapper extends BaseMapper { */ BdTradeConfig selectTradeConfigByCondition(BdTradeConfigVO tradeConfigVO); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java index 453589ac..e8f6c9f7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.common.domain.system.config.ext.BdTradeWhiteConfigExt; @@ -9,12 +8,7 @@ import com.hzs.system.config.vo.BdTradeWhiteConfigVO; import java.util.List; /** - *

* 交易白名单配置表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface BdTradeWhiteConfigMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java index 06ae1616..5fcd15ef 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java @@ -16,46 +16,34 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/8/21 15:10 - * @Classname: ITradeConfigServiceProvider - * @Package_name: com.hzs.system.config.provider - */ @DubboService public class ITradeConfigServiceProvider implements ITradeConfigServiceApi { - @Autowired - private IBdTradeConfigService bdTradeConfigService; - @Autowired - private IBdTradeWhiteConfigService bdTradeWhiteConfigService; - - + private IBdTradeConfigService iBdTradeConfigService; @Autowired - private ICuMemberTransferWhiteService cuMemberTransferWhiteService; + private IBdTradeWhiteConfigService iBdTradeWhiteConfigService; + @Autowired + private ICuMemberTransferWhiteService iCuMemberTransferWhiteService; @Override public R selectTradeConfigByCondition(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeConfigService.selectTradeConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeConfigVO.class))); + return R.ok(iBdTradeConfigService.selectTradeConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeConfigVO.class))); } @Override public R selectTradeWhiteConfigByCondition(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeWhiteConfigService.selectTradeWhiteConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); + return R.ok(iBdTradeWhiteConfigService.selectTradeWhiteConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); } - @Override public R> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry) { - return R.ok(cuMemberTransferWhiteService.selectTransferWhiteByPkMember(pkMember, pkCountry)); + return R.ok(iCuMemberTransferWhiteService.selectTransferWhiteByPkMember(pkMember, pkCountry)); } - @Override public R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeWhiteConfigService.selectTradeWhiteConfigByUnderBlood(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); + return R.ok(iBdTradeWhiteConfigService.selectTradeWhiteConfigByUnderBlood(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java index e1b39a2d..120e34b7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTradeConfig; import com.hzs.system.config.vo.BdTradeConfigVO; @@ -8,12 +7,7 @@ import com.hzs.system.config.vo.BdTradeConfigVO; import java.util.List; /** - *

* 交易配置表 服务类 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface IBdTradeConfigService extends IService { @@ -33,7 +27,6 @@ public interface IBdTradeConfigService extends IService { */ List showTradeConfigList(BdTradeConfigVO tradeConfigVO); - /** * 更新交易配置 * @@ -61,11 +54,10 @@ public interface IBdTradeConfigService extends IService { /** * 查询详情 * - * @param pkId 主键ID + * @param pkId 主键ID * @param pkCountry 国家ID * @return BdTradeConfigVO */ BdTradeConfigVO selectTradeConfigDetail(Integer pkId, Integer pkCountry); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java index ab8d742a..2325e3b5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.system.config.vo.BdTradeWhiteConfigVO; @@ -8,16 +7,10 @@ import com.hzs.system.config.vo.BdTradeWhiteConfigVO; import java.util.List; /** - *

* 交易白名单配置表 服务类 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface IBdTradeWhiteConfigService extends IService { - /** * 保存交易配置 * @@ -26,7 +19,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Integer addTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO); - /** * 查询交易白名单配置列表 * @@ -35,7 +27,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Object[] showTradeWhiteConfigList(BdTradeWhiteConfigVO tradeWhiteConfigVO); - /** * 更新交易配置白名单 * @@ -53,7 +44,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Boolean deleteTradeWhiteConfig(String pkId, Long pkCreator); - /** * 根据条件查询交易白名单配置 * @@ -70,7 +60,6 @@ public interface IBdTradeWhiteConfigService extends IService */ BdTradeWhiteConfig selectTradeWhiteConfigByPkMember(Long pkMember); - /** * 查询配置伞下白名单的会员 * @@ -78,4 +67,5 @@ public interface IBdTradeWhiteConfigService extends IService * @return List */ List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java index b3df7626..aecaae9b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java @@ -1,16 +1,10 @@ package com.hzs.system.config.service.impl; - import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.enums.EBusinessModule; -import com.hzs.common.core.enums.EVerificationModule; import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; @@ -29,28 +23,17 @@ import java.util.*; import java.util.stream.Collectors; /** - *

* 交易配置表 服务实现类 - *

- * - * @author hzs - * @since 2023-08-18 */ @Slf4j @Service public class BdTradeConfigServiceImpl extends ServiceImpl implements IBdTradeConfigService { - @Autowired IBdAwardsService iBdAwardsService; - @Autowired IBdGradeService iBdGradeService; - - @Autowired - private RedisService redisService; - @Override public Integer addTradeConfig(BdTradeConfigVO tradeConfigVO) { BdTradeConfig bdTradeConfig = conversionTradeConfig(tradeConfigVO); @@ -58,7 +41,6 @@ public class BdTradeConfigServiceImpl extends ServiceImpl pkAwardsList = tradeConfigVO.getPkAwardsList(); List pkGradeList = tradeConfigVO.getPkGradeList(); @@ -83,14 +64,13 @@ public class BdTradeConfigServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.eq(SystemFieldConstants.PK_ID, pkId); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(BdTradeConfig::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(BdTradeConfig::getPkModified, pkMember); + updateWrapper.set(BdTradeConfig::getModifiedTime, new Date()); + updateWrapper.eq(BdTradeConfig::getPkId, pkId); return update(updateWrapper); } @@ -117,7 +97,6 @@ public class BdTradeConfigServiceImpl extends ServiceImpl * 交易白名单配置表 服务实现类 - *

- * - * @author hzs - * @since 2023-08-18 */ @Service public class BdTradeWhiteConfigServiceImpl extends ServiceImpl implements IBdTradeWhiteConfigService { - @DubboReference - IMemberServiceApi iMemberServiceApi; - - - @Autowired - private RedisService redisService; - @Override public Integer addTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO) { BdTradeWhiteConfig bdTradeWhiteConfig = BeanUtil.copyProperties(tradeWhiteConfigVO, BdTradeWhiteConfig.class); return baseMapper.insert(bdTradeWhiteConfig); } - @Override public Integer updateTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO) { BdTradeWhiteConfig bdTradeWhiteConfig = BeanUtil.copyProperties(tradeWhiteConfigVO, BdTradeWhiteConfig.class); @@ -62,20 +41,19 @@ public class BdTradeWhiteConfigServiceImpl extends ServiceImpl pkIdList = Arrays.stream(pkId.split(",")) .map(Integer::parseInt) .collect(Collectors.toList()); - for(Integer id:pkIdList){ - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkCreator); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.eq(SystemFieldConstants.PK_ID, id); - baseMapper.update(null,updateWrapper); + for (Integer id : pkIdList) { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(BdTradeWhiteConfig::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(BdTradeWhiteConfig::getPkModified, pkCreator); + updateWrapper.set(BdTradeWhiteConfig::getModifiedTime, new Date()); + updateWrapper.eq(BdTradeWhiteConfig::getPkId, id); + baseMapper.update(null, updateWrapper); } return true; } @@ -95,7 +73,6 @@ public class BdTradeWhiteConfigServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_MEMBER", pkMember); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdTradeWhiteConfig::getPkMember, pkMember); return this.getOne(queryWrapper); - } - @Override public List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO) { - return baseMapper.selectTradeWhiteConfigByUnderBlood(tradeWhiteConfigVO); + return baseMapper.selectTradeWhiteConfigByUnderBlood(tradeWhiteConfigVO); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index af2a8b73..2ac1b09d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -296,11 +296,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 性别 - for (ESex value : ESex.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 打印状态 for (EPrintStatus value : EPrintStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -587,13 +582,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 证件类型 - */ - for (EIdType value : EIdType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 只读状态 */ diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml index 06216287..3f005586 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml @@ -18,18 +18,6 @@ - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_GRADE, PK_AWARDS, BUSINESS_MODULE, REAL_NAME_STATE, LICENSE_STATE - - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml index 06f2f0a5..3a77a3cd 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml @@ -17,18 +17,6 @@ - - - DEL_FLAG - , - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_MEMBER, WITHDRAWAL_STATE, TRANSFER_STATE - - - - - - - update cu_member diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml index 604953f4..9c5934db 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/self/CuSelfServiceLogMapper.xml @@ -58,7 +58,6 @@ - @@ -69,20 +68,8 @@ - - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_MEMBER, EDIT_TYPE, OLD_VALUE, NEW_VALUE, BUSINESS_NO, APPROVE_STATUS, APPROVE_NUMBER, EDIT_TYPE_PAY, SINGLE_AMOUNT - - - select l.*, m.member_code memberCode - from cu_self_service_log l - left join cu_member m - on l.pk_member = m.pk_id - and m.del_flag = 0 - where l.del_flag = 0 - and l.pk_id = #{pkId} + from cu_self_service_log l + left join cu_member m + on l.pk_member = m.pk_id + and m.del_flag = 0 + where l.del_flag = 0 + and l.pk_id = #{pkId} - - - - - - - - - update cu_self_service_log - - approve_status = #{approveStatus}, - approve_time = #{approveTime}, - pk_modified = #{pkModified}, - modified_time = sysdate - - where BUSINESS_NO = #{businessNo} - - diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java index df9c67a6..fd7fac8d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeConfigMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdTradeConfig; import com.hzs.system.config.vo.BdTradeConfigVO; @@ -8,16 +7,10 @@ import com.hzs.system.config.vo.BdTradeConfigVO; import java.util.List; /** - *

* 交易配置表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface BdTradeConfigMapper extends BaseMapper { - /** * 查询交易配置列表 * @@ -26,7 +19,6 @@ public interface BdTradeConfigMapper extends BaseMapper { */ List selectTradeConfigList(BdTradeConfigVO tradeConfigVO); - /** * 根据条件查询交易配置列表 * @@ -35,5 +27,4 @@ public interface BdTradeConfigMapper extends BaseMapper { */ BdTradeConfig selectTradeConfigByCondition(BdTradeConfigVO tradeConfigVO); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java index 453589ac..e8f6c9f7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.common.domain.system.config.ext.BdTradeWhiteConfigExt; @@ -9,12 +8,7 @@ import com.hzs.system.config.vo.BdTradeWhiteConfigVO; import java.util.List; /** - *

* 交易白名单配置表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface BdTradeWhiteConfigMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java index 06ae1616..5fcd15ef 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java @@ -16,46 +16,34 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/8/21 15:10 - * @Classname: ITradeConfigServiceProvider - * @Package_name: com.hzs.system.config.provider - */ @DubboService public class ITradeConfigServiceProvider implements ITradeConfigServiceApi { - @Autowired - private IBdTradeConfigService bdTradeConfigService; - @Autowired - private IBdTradeWhiteConfigService bdTradeWhiteConfigService; - - + private IBdTradeConfigService iBdTradeConfigService; @Autowired - private ICuMemberTransferWhiteService cuMemberTransferWhiteService; + private IBdTradeWhiteConfigService iBdTradeWhiteConfigService; + @Autowired + private ICuMemberTransferWhiteService iCuMemberTransferWhiteService; @Override public R selectTradeConfigByCondition(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeConfigService.selectTradeConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeConfigVO.class))); + return R.ok(iBdTradeConfigService.selectTradeConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeConfigVO.class))); } @Override public R selectTradeWhiteConfigByCondition(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeWhiteConfigService.selectTradeWhiteConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); + return R.ok(iBdTradeWhiteConfigService.selectTradeWhiteConfigByCondition(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); } - @Override public R> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry) { - return R.ok(cuMemberTransferWhiteService.selectTransferWhiteByPkMember(pkMember, pkCountry)); + return R.ok(iCuMemberTransferWhiteService.selectTransferWhiteByPkMember(pkMember, pkCountry)); } - @Override public R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO) { - return R.ok(bdTradeWhiteConfigService.selectTradeWhiteConfigByUnderBlood(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); + return R.ok(iBdTradeWhiteConfigService.selectTradeWhiteConfigByUnderBlood(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java index e1b39a2d..120e34b7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeConfigService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTradeConfig; import com.hzs.system.config.vo.BdTradeConfigVO; @@ -8,12 +7,7 @@ import com.hzs.system.config.vo.BdTradeConfigVO; import java.util.List; /** - *

* 交易配置表 服务类 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface IBdTradeConfigService extends IService { @@ -33,7 +27,6 @@ public interface IBdTradeConfigService extends IService { */ List showTradeConfigList(BdTradeConfigVO tradeConfigVO); - /** * 更新交易配置 * @@ -61,11 +54,10 @@ public interface IBdTradeConfigService extends IService { /** * 查询详情 * - * @param pkId 主键ID + * @param pkId 主键ID * @param pkCountry 国家ID * @return BdTradeConfigVO */ BdTradeConfigVO selectTradeConfigDetail(Integer pkId, Integer pkCountry); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java index ab8d742a..2325e3b5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.system.config.vo.BdTradeWhiteConfigVO; @@ -8,16 +7,10 @@ import com.hzs.system.config.vo.BdTradeWhiteConfigVO; import java.util.List; /** - *

* 交易白名单配置表 服务类 - *

- * - * @author hzs - * @since 2023-08-18 */ public interface IBdTradeWhiteConfigService extends IService { - /** * 保存交易配置 * @@ -26,7 +19,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Integer addTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO); - /** * 查询交易白名单配置列表 * @@ -35,7 +27,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Object[] showTradeWhiteConfigList(BdTradeWhiteConfigVO tradeWhiteConfigVO); - /** * 更新交易配置白名单 * @@ -53,7 +44,6 @@ public interface IBdTradeWhiteConfigService extends IService */ Boolean deleteTradeWhiteConfig(String pkId, Long pkCreator); - /** * 根据条件查询交易白名单配置 * @@ -70,7 +60,6 @@ public interface IBdTradeWhiteConfigService extends IService */ BdTradeWhiteConfig selectTradeWhiteConfigByPkMember(Long pkMember); - /** * 查询配置伞下白名单的会员 * @@ -78,4 +67,5 @@ public interface IBdTradeWhiteConfigService extends IService * @return List */ List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java index b3df7626..aecaae9b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java @@ -1,16 +1,10 @@ package com.hzs.system.config.service.impl; - import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.enums.EBusinessModule; -import com.hzs.common.core.enums.EVerificationModule; import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; @@ -29,28 +23,17 @@ import java.util.*; import java.util.stream.Collectors; /** - *

* 交易配置表 服务实现类 - *

- * - * @author hzs - * @since 2023-08-18 */ @Slf4j @Service public class BdTradeConfigServiceImpl extends ServiceImpl implements IBdTradeConfigService { - @Autowired IBdAwardsService iBdAwardsService; - @Autowired IBdGradeService iBdGradeService; - - @Autowired - private RedisService redisService; - @Override public Integer addTradeConfig(BdTradeConfigVO tradeConfigVO) { BdTradeConfig bdTradeConfig = conversionTradeConfig(tradeConfigVO); @@ -58,7 +41,6 @@ public class BdTradeConfigServiceImpl extends ServiceImpl pkAwardsList = tradeConfigVO.getPkAwardsList(); List pkGradeList = tradeConfigVO.getPkGradeList(); @@ -83,14 +64,13 @@ public class BdTradeConfigServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkMember); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.eq(SystemFieldConstants.PK_ID, pkId); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(BdTradeConfig::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(BdTradeConfig::getPkModified, pkMember); + updateWrapper.set(BdTradeConfig::getModifiedTime, new Date()); + updateWrapper.eq(BdTradeConfig::getPkId, pkId); return update(updateWrapper); } @@ -117,7 +97,6 @@ public class BdTradeConfigServiceImpl extends ServiceImpl * 交易白名单配置表 服务实现类 - *

- * - * @author hzs - * @since 2023-08-18 */ @Service public class BdTradeWhiteConfigServiceImpl extends ServiceImpl implements IBdTradeWhiteConfigService { - @DubboReference - IMemberServiceApi iMemberServiceApi; - - - @Autowired - private RedisService redisService; - @Override public Integer addTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO) { BdTradeWhiteConfig bdTradeWhiteConfig = BeanUtil.copyProperties(tradeWhiteConfigVO, BdTradeWhiteConfig.class); return baseMapper.insert(bdTradeWhiteConfig); } - @Override public Integer updateTradeWhiteConfig(BdTradeWhiteConfigVO tradeWhiteConfigVO) { BdTradeWhiteConfig bdTradeWhiteConfig = BeanUtil.copyProperties(tradeWhiteConfigVO, BdTradeWhiteConfig.class); @@ -62,20 +41,19 @@ public class BdTradeWhiteConfigServiceImpl extends ServiceImpl pkIdList = Arrays.stream(pkId.split(",")) .map(Integer::parseInt) .collect(Collectors.toList()); - for(Integer id:pkIdList){ - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set(SystemFieldConstants.DEL_FLAG, EYesNo.NO.getIntValue()); - updateWrapper.set(SystemFieldConstants.PK_MODIFIED, pkCreator); - updateWrapper.set(SystemFieldConstants.MODIFIED_TIME, new Date()); - updateWrapper.eq(SystemFieldConstants.PK_ID, id); - baseMapper.update(null,updateWrapper); + for (Integer id : pkIdList) { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(BdTradeWhiteConfig::getDelFlag, EYesNo.NO.getIntValue()); + updateWrapper.set(BdTradeWhiteConfig::getPkModified, pkCreator); + updateWrapper.set(BdTradeWhiteConfig::getModifiedTime, new Date()); + updateWrapper.eq(BdTradeWhiteConfig::getPkId, id); + baseMapper.update(null, updateWrapper); } return true; } @@ -95,7 +73,6 @@ public class BdTradeWhiteConfigServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_MEMBER", pkMember); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdTradeWhiteConfig::getPkMember, pkMember); return this.getOne(queryWrapper); - } - @Override public List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO) { - return baseMapper.selectTradeWhiteConfigByUnderBlood(tradeWhiteConfigVO); + return baseMapper.selectTradeWhiteConfigByUnderBlood(tradeWhiteConfigVO); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index af2a8b73..2ac1b09d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -296,11 +296,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 性别 - for (ESex value : ESex.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 打印状态 for (EPrintStatus value : EPrintStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -587,13 +582,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 证件类型 - */ - for (EIdType value : EIdType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 只读状态 */ diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml index 06216287..3f005586 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeConfigMapper.xml @@ -18,18 +18,6 @@ - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_GRADE, PK_AWARDS, BUSINESS_MODULE, REAL_NAME_STATE, LICENSE_STATE - - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml index 06f2f0a5..3a77a3cd 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml @@ -17,18 +17,6 @@ - - - DEL_FLAG - , - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_MEMBER, WITHDRAWAL_STATE, TRANSFER_STATE - - @@ -468,6 +463,15 @@ #{item}
+ + and (bwe.pre_sale_status = 0 + + or soi.pk_wares in + + #{item} + + + ) and so.rec_province in @@ -822,7 +826,6 @@ oi.SPECS_NAME specsName, bp.WEIGHT weight, bp.SHIPPING_CHANNEL shippingChannel, - bc.IN_EXCHANGE_RATE inExchangeRate, oi.LOGISTICS_CODE logisticsCode, oi.LOGISTICS_COMPANY logisticsCompany, m.MEMBER_CODE buyMemberCode, @@ -836,7 +839,6 @@ so.SYSTEM_TYPE from sa_order_items oi left join sa_order so on oi.PK_ORDER = so.PK_ID - left join BD_CURRENCY bc on bc.PK_ID = so.PK_RATE left join CU_MEMBER cm on cm.PK_ID = so.PK_MEMBER left join BD_WARES_EXTEND we on we.PK_WARES = oi.PK_WARES left join BD_WARES bw on bw.PK_ID = we.PK_WARES diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 6b34ddfd..73a92519 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -487,4 +487,31 @@ (select pk_member from bd_vertex bv where bv.pk_id = #{pkVertex}) + + + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 2ac1b09d..61ba0717 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -251,11 +251,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - //发货方式 - for (EDelivery value : EDelivery.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - //发货状态 for (EDeliveryStatus value : EDeliveryStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -370,14 +365,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - - /** - * 供应方式 - */ - for (ESupplyWay value : ESupplyWay.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 订单状态 */ @@ -385,20 +372,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 预售状态 - */ - for (EPresaleStatus value : EPresaleStatus.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - - /** - * 订单支付方式 - */ - for (EOrderPayType value : EOrderPayType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 交易类型 */ @@ -512,13 +485,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 产品发货渠道 - */ - for (EShippingChannel value : EShippingChannel.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 支付业务类型 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java index fcc7e7dc..40dd0905 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,27 +13,17 @@ public enum EDelivery { /** * */ - EMPTY(0, "未知", 1, EnumsPrefixConstants.DELIVERY + "0"), + EMPTY(0, "未知", 1), /** * 快递发货 */ - FAST_MAIL(1, "快递发货", 0, EnumsPrefixConstants.DELIVERY + "1"), + FAST_MAIL(1, "快递发货", 0), /** * 公司自提 */ - COMPANY_PICKED_UP(2, "公司自提", 0, EnumsPrefixConstants.DELIVERY + "2"), - - /** - * 店铺自提 - */ - SHOP_PICKED_UP(3, "店铺自提", 0, EnumsPrefixConstants.DELIVERY + "3"), - - /** - * 店铺配送 - */ - SHOP_DELIVERY(4, "店铺配送", 0, EnumsPrefixConstants.DELIVERY + "4"), + COMPANY_PICKED_UP(2, "公司自提", 0), ; @@ -50,10 +39,6 @@ public enum EDelivery { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static EDelivery getDelivery(int value) { for (EDelivery eDelivery : EDelivery.values()) { @@ -63,4 +48,17 @@ public enum EDelivery { } return EDelivery.EMPTY; } + + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EDelivery enums : EDelivery.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java index 9ab5961b..cd5040cb 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java @@ -1,15 +1,10 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; /** - * @Description: 订单支付方式 - * @Author: jiang chao - * @Time: 2022/11/4 14:11 - * @Classname: EOrderPayType - * @PackageName: com.hzs.common.core.enums + * 订单支付方式 */ @AllArgsConstructor @Getter @@ -18,12 +13,12 @@ public enum EOrderPayType { /** * 钱包 */ - WALLET(0, "钱包", 0,EnumsPrefixConstants.ORDER_PAY_TYPE + "0"), + WALLET(0, "钱包", 0), /** * 在线 */ - ONLINE(1, "在线", 0,EnumsPrefixConstants.ORDER_PAY_TYPE + "1"), + ONLINE(1, "在线", 0), ; @@ -39,24 +34,17 @@ public enum EOrderPayType { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; - - /** - * 根据值获取枚举 - * - * @param value - * @return - */ - public static EOrderPayType getEnumByValue(int value) { + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } for (EOrderPayType enums : EOrderPayType.values()) { - if (enums.getValue() == value) { - return enums; + if (enums.value == value) { + return enums.getLabel(); } } - return null; + return ""; } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java index 0def30bd..232bf5ca 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java @@ -4,9 +4,6 @@ import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; -import java.util.ArrayList; -import java.util.List; - /** * 订单状态 */ @@ -63,27 +60,6 @@ public enum EOrderStatus { */ private final String key; - /** - * 会员前端列表 - */ - private static List apiList; - - /** - * 获取会员前端列表 - * - * @return - */ - public static List getApiList() { - if (null == apiList) { - apiList = new ArrayList<>(); - apiList.add(WAIT_PAY); - apiList.add(PAY); - apiList.add(DELIVERED); - apiList.add(RECEIVED); - } - return apiList; - } - public static EOrderStatus getEOrderStatus(int value) { for (EOrderStatus eOrderStatus : EOrderStatus.values()) { if (eOrderStatus.value == value) { @@ -93,4 +69,16 @@ public enum EOrderStatus { return null; } + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EOrderStatus enums : EOrderStatus.values()) { + if (enums.value == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java index 878b0ec4..95bf897e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,17 +13,17 @@ public enum EPresaleStatus { /** * 在售 */ - ON_SALE(0, "在售", 0, EnumsPrefixConstants.PRESALE_STATUS + "0"), + ON_SALE(0, "在售", 0), /** * 预售 */ - PRESALE(1, "预售", 0, EnumsPrefixConstants.PRESALE_STATUS + "1"), + PRESALE(1, "预售", 0), /** * 缺货 */ - OUT_STOCK(3, "缺货", 0, EnumsPrefixConstants.PRESALE_STATUS + "3"), + OUT_STOCK(3, "缺货", 0), ; @@ -40,10 +39,6 @@ public enum EPresaleStatus { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static EPresaleStatus getEPresaleStatus(int value) { for (EPresaleStatus ePresaleStatus : EPresaleStatus.values()) { @@ -54,12 +49,12 @@ public enum EPresaleStatus { return null; } - public static String getEnumLabelByValue(Integer value) { + public static String getLabelByValue(Integer value) { if (null == value) { return ""; } for (EPresaleStatus enums : EPresaleStatus.values()) { - if (enums.value == value) { + if (enums.getValue() == value) { return enums.getLabel(); } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java index b8e07cf3..abf67919 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -11,9 +10,9 @@ import lombok.Getter; @Getter public enum EShippingChannel { - TOTAL_WAREHOUSE(1, "总仓发货", 0, EnumsPrefixConstants.E_SHIPPING_CHANNEL + "1"), + TOTAL_WAREHOUSE(1, "总仓发货", 0), - A_PIECE(2, "一件代发", 0, EnumsPrefixConstants.E_SHIPPING_CHANNEL + "2"), + A_PIECE(2, "一件代发", 0), ; @@ -23,10 +22,6 @@ public enum EShippingChannel { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 根据值,返回枚举 @@ -42,4 +37,18 @@ public enum EShippingChannel { } return TOTAL_WAREHOUSE; } + + + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EShippingChannel enums : EShippingChannel.values()) { + if (enums.value == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index f188b689..130cc4ab 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -99,6 +99,18 @@ public enum ESpecialArea { */ private final int menuDetailValue; + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ESpecialArea eSpecialArea : ESpecialArea.values()) { + if (eSpecialArea.getValue() == value) { + return eSpecialArea.getLabel(); + } + } + return ""; + } + public static String getESpecialArea(Integer value) { if (null == value) { return ""; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java index c76ad860..63404a4c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,12 +13,12 @@ public enum ESupplyWay { /** * 自营 */ - SELF(0, "自营", 0, EnumsPrefixConstants.SUPPLY_WAY + "0"), + SELF(0, "自营", 0), /** * 非自营 */ - NO_SELF(1, "非自营", 0, EnumsPrefixConstants.SUPPLY_WAY + "1"), + NO_SELF(1, "非自营", 0), ; @@ -35,10 +34,6 @@ public enum ESupplyWay { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static ESupplyWay getESupplyWay(int value) { for (ESupplyWay eSupplyWay : ESupplyWay.values()) { @@ -49,13 +44,13 @@ public enum ESupplyWay { return null; } - public static String getEnumLabelByValue(Integer value) { + public static String getLabelByVal(Integer value) { if (null == value) { return ""; } - for (ESupplyWay enums : ESupplyWay.values()) { - if (enums.value == value) { - return enums.getLabel(); + for (ESupplyWay eSupplyWay : ESupplyWay.values()) { + if (eSupplyWay.getValue() == value) { + return eSupplyWay.getLabel(); } } return ""; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java new file mode 100644 index 00000000..709b4e5c --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -0,0 +1,53 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 系统名称 + */ +@AllArgsConstructor +@Getter +public enum ESysName { + + MANAGE("manage", "后台管理"), + + /** + * 新零售 + */ + BF("bf", "新零售BF"), + /** + * 新零售店铺 + */ + BL("bl", "新零售店铺BL"), + + ; + + /** + * 实际值 + */ + private final String value; + /** + * 显示标签 + */ + private final String label; + + public static ESysName getEnumByValue(String value) { + for (ESysName enums : ESysName.values()) { + if (enums.getValue().equals(value)) { + return enums; + } + } + return null; + } + + public static String getLabelByValue(String value) { + for (ESysName enums : ESysName.values()) { + if (enums.getValue().equals(value)) { + return enums.getLabel(); + } + } + return ""; + } + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java index b551a1b4..713eb38e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java @@ -44,12 +44,16 @@ public enum ETransportType { private final String key; - public static ETransportType getETransportType(int value){ - for (ETransportType eTransportType : ETransportType.values()) { - if (eTransportType.getValue() == value){ - return eTransportType; + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ETransportType enums : ETransportType.values()) { + if (enums.value == value) { + return enums.getLabel(); } } - return null; + return ""; } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java index 3dbbd066..053704b0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java @@ -12,11 +12,6 @@ import java.util.concurrent.*; @Component public class ThreadUtils { - /** - * 初始化创建4个长度的固定线程池 - */ - public static ExecutorService executorService = Executors.newFixedThreadPool(4); - /** * 创建线程池 */ From 4660893952cb907172880f7b137793621e361f79 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 14:48:26 +0800 Subject: [PATCH 110/362] =?UTF-8?q?##=20=E5=85=A8=E7=BD=91=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E5=BA=93=E5=AD=98=E5=90=8C=E6=AD=A5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 63 ++++++++++++++++++- .../com/hzs/common/core/config/BdConfig.java | 40 ++++++++++++ .../common/domain/sale/order/SaOrderTemp.java | 3 - 3 files changed, 101 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index f7cd7d24..2a07d262 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -1,15 +1,20 @@ package com.hzs.retail.sale.controller.service.impl; +import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; @@ -17,6 +22,7 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.*; +import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.config.BdAwards; @@ -34,6 +40,7 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; import com.hzs.sale.order.service.impl.SaOrderHandle; +import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.wares.service.IBdWaresDetailService; import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.sale.wares.service.IBdWaresRangeService; @@ -84,6 +91,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { private ISaOrderTempService iSaOrderTempService; @Autowired private ISaOrderWaresLimitService iSaOrderWaresLimitService; + @Autowired + private IBdProductService iBdProductService; @Autowired private RedisService redisService; @@ -704,6 +713,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private void pushOrderMq(SaOrderExt saOrderExt) { try { + // 同步全网产品库存 + this.allProductSync(saOrderExt); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() @@ -723,8 +735,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public String onlinePaymentCallBack(Long pkMember, String orderCode) { String resultStr; - // 临时订单信息 - SaOrderTemp saOrderTemp = null; // 获取缓存订单 SaOrderExt saOrderExt = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode); @@ -1045,4 +1055,53 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } + /** + * 同步全网产品库存 + * + * @param saOrderExt + */ + private void allProductSync(SaOrderExt saOrderExt) { + if (EYesNo.NO.getIntValue() == BdConfig.getProductSync()) { + return; + } + Map productMap = iBdProductService.queryProductMap(saOrderExt.getOrderItemsList().stream().map(SaOrderItems::getPkProduct).collect(Collectors.toSet()), null); + // 开启线程调用全网产品库存 + // 请求参数 + Map bodyMap = new HashMap<>(); + bodyMap.put("source", BdConfig.getSysName()); + bodyMap.put("orderCode", saOrderExt.getOrderCode()); + List> bodyDetailList = new ArrayList<>(); + for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { + Map detailMap = new HashMap<>(); + detailMap.put("wmsCode", productMap.get(saOrderItems.getPkProduct()).getWmsCode()); + detailMap.put("changeNum", saOrderItems.getQuantity()); + bodyDetailList.add(detailMap); + } + bodyMap.put("detailList", bodyDetailList); + // 请求头 + String header = Base64Encoder.encode(BdConfig.getSysName() + "!" + saOrderExt.getOrderCode()); + ThreadUtils.threadPoolExecutor.submit(() -> { + log.info("同步产品,header: {}", header); + log.info("同步产品,bodyMap: {}", bodyMap); + HttpRequest httpRequest = HttpUtil.createPost(BdConfig.getProductSyncUrl()); + httpRequest.header("authorization", header); + httpRequest.body(JSONUtil.toJsonStr(bodyMap)); + httpRequest.setReadTimeout(5000); + String resultStr; + try { + resultStr = httpRequest.execute().body(); + AjaxResult ajaxResult = JSONUtil.toBean(resultStr, AjaxResult.class); + log.info("同步产品,resultStr: {}", resultStr); + if (!ajaxResult.isSuccess()) { + resultStr = httpRequest.execute().body(); + log.info("同步产品失败重试,resultStr: {}", resultStr); + } + } catch (Exception e) { + log.error("同步产品库存失败", e); + resultStr = httpRequest.execute().body(); + log.info("同步产品异常重试,resultStr: {}", resultStr); + } + }); + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java index 06279ca0..bda8dfbe 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java @@ -10,6 +10,11 @@ import org.springframework.stereotype.Component; @ConfigurationProperties(prefix = "bd") public class BdConfig { + /** + * 系统名称(ESysName) + */ + private static String sysName; + /** * 当前环境 */ @@ -34,6 +39,23 @@ public class BdConfig { private static Integer enable; + /** + * 商品同步是否开启(0=开启,1=不开启) + */ + private static Integer productSync; + /** + * 商品同步地址 + */ + private static String productSyncUrl; + + public static String getSysName() { + return sysName; + } + + public void setSysName(String sysName) { + BdConfig.sysName = sysName; + } + public static String getEnv() { return env; } @@ -81,4 +103,22 @@ public class BdConfig { public void setEnable(Integer enable) { BdConfig.enable = enable; } + + + public static Integer getProductSync() { + return productSync; + } + + public void setProductSync(Integer productSync) { + BdConfig.productSync = productSync; + } + + public static String getProductSyncUrl() { + return productSyncUrl; + } + + public void setProductSyncUrl(String productSyncUrl) { + BdConfig.productSyncUrl = productSyncUrl; + } + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java index 50d9fd18..52a8f3fe 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java @@ -13,9 +13,6 @@ import lombok.experimental.Accessors; /** * 订单缓存数据临时表 - * - * @author hzs - * @since 2025-02-25 */ @Builder @AllArgsConstructor From 0b71fbbc5b5fdfc4e5b3e3b0e9a97101104bde79 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 14:45:24 +0800 Subject: [PATCH 111/362] =?UTF-8?q?##=20=E6=9C=AA=E5=90=88=E5=8D=95?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=9D=9E=E5=9C=A8=E5=94=AE=E5=95=86=E5=93=81?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ApiCuMemberBusinessLicenseController.java | 54 +---- .../manage/SaDeliverUnhandledController.java | 43 +--- .../deliver/param/DeliverUnhandledParam.java | 14 +- .../sale/deliver/vo/DeliverUnhandledVO.java | 6 - .../controller/ParentOrderController.java | 6 +- .../manager/SaOrderChargeLogController.java | 68 ++---- .../controller/manager/SaOrderController.java | 198 ++++-------------- .../hzs/sale/order/vo/WaresOrderInfoVo.java | 10 +- .../com/hzs/sale/order/vo/WaresOrderVo.java | 11 - .../controller/manage/BdWaresController.java | 34 ++- .../hzs/sale/wares/mapper/BdWaresMapper.java | 9 + .../param/ConfirmOrderWaresInfoList.java | 40 ---- .../param/ConfirmOrderWaresInfoParams.java | 26 --- .../sale/wares/param/WaresNoSaleParam.java | 24 +++ .../sale/wares/service/IBdWaresService.java | 9 + .../service/impl/BdWaresServiceImpl.java | 6 + .../com/hzs/sale/wares/vo/WaresNoSaleVO.java | 49 +++++ .../mapper/sale/order/SaOrderItemsMapper.xml | 52 ++--- .../mapper/sale/wares/BdWaresMapper.xml | 27 +++ .../enums/controller/EnumsInitController.java | 34 --- .../com/hzs/common/core/enums/EDelivery.java | 34 ++- .../hzs/common/core/enums/EOrderPayType.java | 34 +-- .../hzs/common/core/enums/EOrderStatus.java | 36 ++-- .../hzs/common/core/enums/EPresaleStatus.java | 15 +- .../common/core/enums/EShippingChannel.java | 23 +- .../hzs/common/core/enums/ESpecialArea.java | 12 ++ .../com/hzs/common/core/enums/ESupplyWay.java | 17 +- .../com/hzs/common/core/enums/ESysName.java | 53 +++++ .../hzs/common/core/enums/ETransportType.java | 14 +- .../hzs/common/core/utils/ThreadUtils.java | 5 - 30 files changed, 404 insertions(+), 559 deletions(-) delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoList.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoParams.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresNoSaleParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/WaresNoSaleVO.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBusinessLicenseController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBusinessLicenseController.java index 103667db..fb769fb1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBusinessLicenseController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBusinessLicenseController.java @@ -4,23 +4,16 @@ import cn.hutool.core.bean.BeanUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.enums.EApproveStatus; -import com.hzs.common.core.enums.EVerificationModule; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberBusinessLicense; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.system.config.BdTradeConfig; -import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.service.ICuMemberAuthenticationService; -import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.service.ICuMemberBusinessLicenseService; import com.hzs.member.account.vo.CuMemberAuthenticationVO; import com.hzs.member.account.vo.CuMemberBusinessLicenseVO; -import com.hzs.member.base.service.ICuMemberService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -34,13 +27,9 @@ import java.util.Date; public class ApiCuMemberBusinessLicenseController extends BaseController { @Autowired - private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; + private ICuMemberBusinessLicenseService iCuMemberBusinessLicenseService; @Autowired - private ICuMemberService iCuMemberService; - @Autowired - private ICuMemberBaseService iCuMemberBaseService; - @Autowired - private ICuMemberAuthenticationService authenticationService; + private ICuMemberAuthenticationService iCuMemberAuthenticationService; /** @@ -57,7 +46,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); //查询是否已实名认证 - CuMemberAuthenticationVO authenticationVO = authenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); + CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(pkMember).pkCountry(pkCountry).build()); //验证实名认证的真实姓名与法人的姓名是否一致 if (null != authenticationVO) { String accountName = authenticationVO.getAccountName(); @@ -72,11 +61,10 @@ public class ApiCuMemberBusinessLicenseController extends BaseController { CuMemberBusinessLicense memberBusinessLicense = BeanUtil.copyProperties(businessLicense, CuMemberBusinessLicense.class); memberBusinessLicense.setApproveStatus(EApproveStatus.ALREADY_SUBMIT.getValue()); memberBusinessLicense.setPkCreator(pkMember); - return toAjax(cuMemberBusinessLicenseService.save(memberBusinessLicense)); + return toAjax(iCuMemberBusinessLicenseService.save(memberBusinessLicense)); } else { return VerifyParameters(businessLicense); } - } @@ -92,7 +80,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController { //参数校验 if (VerifyParameters(businessLicense).equals(AjaxResult.success())) { //查询是否已实名认证 - CuMemberAuthenticationVO authenticationVO = authenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).build()); + CuMemberAuthenticationVO authenticationVO = iCuMemberAuthenticationService.selectCuMemberAuthenticationByPkMember(CuMemberAuthenticationVO.builder().pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).build()); //验证实名认证的真实姓名与法人的姓名是否一致 if (null != authenticationVO) { String accountName = authenticationVO.getAccountName(); @@ -106,7 +94,7 @@ public class ApiCuMemberBusinessLicenseController extends BaseController { memberBusinessLicense.setModifiedTime(new Date()); memberBusinessLicense.setPkModified(SecurityUtils.getUserId()); memberBusinessLicense.setApproveStatus(EApproveStatus.ALREADY_SUBMIT.getValue()); - return toAjax(cuMemberBusinessLicenseService.updateById(memberBusinessLicense)); + return toAjax(iCuMemberBusinessLicenseService.updateById(memberBusinessLicense)); } else { return VerifyParameters(businessLicense); } @@ -121,37 +109,9 @@ public class ApiCuMemberBusinessLicenseController extends BaseController { */ @GetMapping("/detail") public AjaxResult showDetail() { - return AjaxResult.success(cuMemberBusinessLicenseService.selectBusinessLicenseById(SecurityUtils.getUserId(), SecurityUtils.getPkCountry())); + return AjaxResult.success(iCuMemberBusinessLicenseService.selectBusinessLicenseById(SecurityUtils.getUserId(), SecurityUtils.getPkCountry())); } - - /** - * 是否上传营业执照 - * - * @param businessModule 1:提现 2:转账 (来源枚举EBusinessModule) - * @return AjaxResult - */ - @GetMapping("/is-exist") - public AjaxResult isExistBusinessLicence(Integer businessModule) { - String flag = EYesNo.YES.getValue(); - Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - //查询配置白名单 - BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, businessModule); - if (null == bdTradeWhiteConfig) { - //查询是否配置营业执照 - BdTradeConfig bdTradeConfig = iCuMemberBaseService.selectConfigTrade(pkMember, pkCountry, businessModule, EVerificationModule.BUSINESS_LICENSE); - //配置后才进行验证 - if (null != bdTradeConfig) { - //查询是否完成经销商认证 - CuMember cuMember = iCuMemberService.queryMember(pkMember); - flag = null != cuMember && cuMember.getIsDealer().equals(EYesNo.YES.getIntValue()) ? EYesNo.YES.getValue() : EYesNo.NO.getValue(); - } - } - return AjaxResult.success().put("flag", flag); - } - - /** * 校验参数 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java index 3a6a034e..c37f3c18 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java @@ -50,11 +50,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 发货清单未合单控制器 - * @Author: jiang chao - * @Time: 2022/10/28 11:24 - * @Classname: SaDeliverOrderController - * @PackageName: com.hzs.sale.deliver.controller.manage + * 发货清单未合单控制器 */ @RestController @RequestMapping("/manage/deliver-unhandled") @@ -102,22 +98,10 @@ public class SaDeliverUnhandledController extends BaseController { param.setSystemType(SecurityUtils.getSystemType()); // 未合单目前查询状态(已付款) param.setOrderStatusList(Collections.singletonList(EOrderStatus.PAY.getValue())); + // 查询语句已经写死查询【在售】,此处可以直接赋空 + param.setPreSaleStatus(null); Integer pkCountry = SecurityUtils.getPkCountry(); - // 返回数据 - List resultList = new ArrayList<>(); - - if (StringUtils.isNotEmpty(param.getOriginalOrderCode())) { - // 原单号不为空,则需要查询 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(SaOrder::getOrderCode, param.getOriginalOrderCode()); - queryWrapper.eq(SaOrder::getPkCountry, pkCountry); - SaOrder querySaOrder = iSaOrderService.getOne(queryWrapper); - if (null == querySaOrder) { - return getDataTable(resultList); - } - param.setPkOriginalOrder(querySaOrder.getPkId()); - } // 获取管理员权限(角色地区范围、体系列表、团队列表) UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); @@ -126,7 +110,7 @@ public class SaDeliverUnhandledController extends BaseController { param.setTeamList(userAuthorityDTO.getUserTeamList()); startPage(); - resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); + List resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); // 当查询有数据才进行处理 if (resultList.size() > 0) { @@ -157,23 +141,10 @@ public class SaDeliverUnhandledController extends BaseController { param.setSystemType(SecurityUtils.getSystemType()); // 未合单目前查询状态(已付款) param.setOrderStatusList(Collections.singletonList(EOrderStatus.PAY.getValue())); + // 查询语句已经写死查询【在售】,此处可以直接赋空 + param.setPreSaleStatus(null); Integer pkCountry = SecurityUtils.getPkCountry(); - // 返回数据 - List resultList = new ArrayList<>(); - if (StringUtils.isNotEmpty(param.getOriginalOrderCode())) { - // 原单号不为空,则需要查询 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(SaOrder::getOrderCode, param.getOriginalOrderCode()); - queryWrapper.eq(SaOrder::getPkCountry, pkCountry); - SaOrder querySaOrder = iSaOrderService.getOne(queryWrapper); - if (null == querySaOrder) { - ExcelUtil util = new ExcelUtil<>(DeliverUnhandledVO.class); - util.exportExcel(response, resultList, "发货清单未合单导出"); - return; - } - param.setPkOriginalOrder(querySaOrder.getPkId()); - } // 获取管理员权限(角色地区范围、体系列表、团队列表) UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); @@ -181,7 +152,7 @@ public class SaDeliverUnhandledController extends BaseController { param.setVertexIdList(userAuthorityDTO.getVertexIdList()); param.setTeamList(userAuthorityDTO.getUserTeamList()); - resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); + List resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); // 当查询有数据才进行处理 if (resultList.size() > 0) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/param/DeliverUnhandledParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/param/DeliverUnhandledParam.java index 962a20ba..6385dcb7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/param/DeliverUnhandledParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/param/DeliverUnhandledParam.java @@ -149,15 +149,6 @@ public class DeliverUnhandledParam extends BaseAuthorityEntity { */ private String specsName; - /** - * 原单号 - */ - private String originalOrderCode; - /** - * 原单号ID - */ - private Long pkOriginalOrder; - /** * 发货仓库 */ @@ -187,4 +178,9 @@ public class DeliverUnhandledParam extends BaseAuthorityEntity { */ private Long pkVertex; + /** + * 非售商品列表 + */ + private List pkWaresList; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java index d602ba53..755d15fe 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java @@ -236,12 +236,6 @@ public class DeliverUnhandledVO { @Excel(name = "预售状态") private String preSaleStatusVal; - /** - * 原单号 - */ - @Excel(name = "原单号") - private String originalOrderCode; - /** * 备注 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java index 0ce6b996..bf96bdd6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java @@ -31,7 +31,6 @@ import com.hzs.sale.shopping.vo.ProductGroup; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.system.base.IAreaServiceApi; -import com.hzs.system.base.ICurrencyServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; @@ -45,8 +44,6 @@ public abstract class ParentOrderController extends BaseController { @DubboReference IAreaServiceApi iAreaServiceApi; - @DubboReference - ICurrencyServiceApi currencyServiceApi; private ISaOrderService orderService; @@ -405,8 +402,7 @@ public abstract class ParentOrderController extends BaseController { * @return boolean */ protected Boolean checkRecMsgBoolean(OrderParam orderParam) { - if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay() || - EDelivery.SHOP_PICKED_UP.getValue() == orderParam.getDeliveryWay())) { + if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay())) { orderParam.setTransType(null); return orderParam.getSpecialArea() != null && orderParam.getOrderItemsParams() != null diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java index 80fdec48..bf31667d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java @@ -34,27 +34,19 @@ import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.sale.order.controller.manage - * @Author: yh - * @CreateTime: 2023-04-11 10:22 - * @Description: - * @Version: 1.0 - */ @RestController @RequestMapping("/manage/order-charge-log") public class SaOrderChargeLogController extends BaseController { @Autowired - private ITransactionCommonService transactionCommonService; + private ITransactionCommonService iTransactionCommonService; @Autowired - private ISaOrderChargeLogService orderChargeLogService; + private ISaOrderChargeLogService iSaOrderChargeLogService; @DubboReference - IVertexServiceApi vertexServiceApi; + IVertexServiceApi iVertexServiceApi; @DubboReference - IAreaServiceApi areaServiceApi; + IAreaServiceApi iAreaServiceApi; /** * 撤单信息列表 @@ -96,18 +88,18 @@ public class SaOrderChargeLogController extends BaseController { } startPage(); - List list = orderChargeLogService.cancellationList(orderChargeLogParam); + List list = iSaOrderChargeLogService.cancellationList(orderChargeLogParam); List resultList = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { // 地区 - R> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()); + R> areaMap = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()); // 体系 - R> vertexAll = vertexServiceApi.findAll(); + R> vertexAll = iVertexServiceApi.findAll(); Map vertexMap = vertexAll.getData().stream().collect(Collectors.toMap(VertexDTO::getPkId, Function.identity())); - Map transactionMap = transactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EPresaleStatus.values(), - ESupplyWay.values(), EDelivery.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), + Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), + EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { @@ -195,13 +187,9 @@ public class SaOrderChargeLogController extends BaseController { // 发货时间 orderChargeLogVo.setDeliveryTime(orderChargeLogExt.getDeliveryTime()); // 发货方式 - if (orderChargeLogExt.getDeliveryWay() != null) { - orderChargeLogVo.setDeliveryWayStr(transactionMap.get(EDelivery.getDelivery(orderChargeLogExt.getDeliveryWay()).getKey())); - } + orderChargeLogVo.setDeliveryWayStr(EDelivery.getLabelByValue(orderChargeLogExt.getDeliveryWay())); //销售方式 - if (orderChargeLogExt.getOperateScope() != null && ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()) != null) { - orderChargeLogVo.setOperateScopeStr(transactionMap.get(ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()).getKey())); - } + orderChargeLogVo.setOperateScopeStr(ESupplyWay.getLabelByVal(orderChargeLogExt.getOperateScope())); // 运输方式 List tranList = new ArrayList<>(); if (orderChargeLogExt.getIsLandTrans() != null && orderChargeLogExt.getIsLandTrans().equals(0)) { @@ -213,13 +201,9 @@ public class SaOrderChargeLogController extends BaseController { } orderChargeLogVo.setTranTypeStr(StringUtils.join(tranList, ",")); // 预售状态 - if (orderChargeLogExt.getPreSaleStatus() != null) { - orderChargeLogVo.setPreSaleStatusStr(transactionMap.get(EPresaleStatus.getEPresaleStatus(orderChargeLogExt.getPreSaleStatus()).getKey())); - } + orderChargeLogVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(orderChargeLogExt.getPreSaleStatus())); // 支付方式 - if (orderChargeLogExt.getPayType() != null && EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()) != null) { - orderChargeLogVo.setPayTypeStr(EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()).getLabel()); - } + orderChargeLogVo.setPayTypeStr(EOrderPayType.getLabelByValue(orderChargeLogExt.getPayType())); // 撤单人 orderChargeLogVo.setCreatorName(orderChargeLogExt.getCancelTheOrderName()); // 终审 @@ -278,18 +262,18 @@ public class SaOrderChargeLogController extends BaseController { orderChargeLogParam.setEndCancelOrderTime(DateUtils.getEndTime(orderChargeLogParam.getEndCancelOrderTime())); } - List list = orderChargeLogService.cancellationList(orderChargeLogParam); + List list = iSaOrderChargeLogService.cancellationList(orderChargeLogParam); List resultList = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { // 地区 - R> areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()); + R> areaMap = iAreaServiceApi.getAreaMap(SecurityUtils.getPkCountry()); // 体系 - R> vertexAll = vertexServiceApi.findAll(); + R> vertexAll = iVertexServiceApi.findAll(); Map vertexMap = vertexAll.getData().stream().collect(Collectors.toMap(VertexDTO::getPkId, Function.identity())); - Map transactionMap = transactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EPresaleStatus.values(), - ESupplyWay.values(), EDelivery.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), + Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), + EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { @@ -377,13 +361,9 @@ public class SaOrderChargeLogController extends BaseController { // 发货时间 orderChargeLogVo.setDeliveryTime(orderChargeLogExt.getDeliveryTime()); // 发货方式 - if (orderChargeLogExt.getDeliveryWay() != null) { - orderChargeLogVo.setDeliveryWayStr(transactionMap.get(EDelivery.getDelivery(orderChargeLogExt.getDeliveryWay()).getKey())); - } + orderChargeLogVo.setDeliveryWayStr(EDelivery.getLabelByValue(orderChargeLogExt.getDeliveryWay())); //销售方式 - if (orderChargeLogExt.getOperateScope() != null && ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()) != null) { - orderChargeLogVo.setOperateScopeStr(transactionMap.get(ESupplyWay.getESupplyWay(orderChargeLogExt.getOperateScope()).getKey())); - } + orderChargeLogVo.setOperateScopeStr(ESupplyWay.getLabelByVal(orderChargeLogExt.getOperateScope())); // 运输方式 List tranList = new ArrayList<>(); if (orderChargeLogExt.getIsLandTrans() != null && orderChargeLogExt.getIsLandTrans().equals(0)) { @@ -395,13 +375,9 @@ public class SaOrderChargeLogController extends BaseController { } orderChargeLogVo.setTranTypeStr(StringUtils.join(tranList, ",")); // 预售状态 - if (orderChargeLogExt.getPreSaleStatus() != null) { - orderChargeLogVo.setPreSaleStatusStr(transactionMap.get(EPresaleStatus.getEPresaleStatus(orderChargeLogExt.getPreSaleStatus()).getKey())); - } + orderChargeLogVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(orderChargeLogExt.getPreSaleStatus())); // 支付方式 - if (orderChargeLogExt.getPayType() != null && EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()) != null) { - orderChargeLogVo.setPayTypeStr(EOrderPayType.getEnumByValue(orderChargeLogExt.getPayType()).getLabel()); - } + orderChargeLogVo.setPayTypeStr(EOrderPayType.getLabelByValue(orderChargeLogExt.getPayType())); // 撤单人 orderChargeLogVo.setCreatorName(orderChargeLogExt.getCancelTheOrderName()); // 终审 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java index 9e4947f1..044a559f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java @@ -5,7 +5,6 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; @@ -15,7 +14,6 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrderRemarks; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.sale.order.controller.ParentOrderController; import com.hzs.sale.order.dto.OrderBusinessTemplate; import com.hzs.sale.order.param.*; @@ -41,20 +39,12 @@ import java.util.stream.Collectors; /** * 订单控制类 - * - * @author: sui q - * @time: 2022/8/27 16:20 - * @description: - * @classname: OrderController - * @package_name: com.hzs.sale.order.controller */ @RestController @RequestMapping("/manage/order") @Slf4j public class SaOrderController extends ParentOrderController { - @Autowired - private ITransactionCommonService iTransactionCommonService; @Autowired private ISaOrderService orderService; @Autowired @@ -116,49 +106,18 @@ public class SaOrderController extends ParentOrderController { if (waresOrderVo.getRecCountry() != null) { waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry())); } - // 发货方式 - if (null != waresOrderVo.getDeliveryWay()) { - EDelivery eDelivery = EDelivery.getDelivery(waresOrderVo.getDeliveryWay()); - if (null != eDelivery) { - waresOrderVo.setDeliveryWayStr(eDelivery.getLabel()); - } - } - // 运输方式 - if (waresOrderVo.getTranType() != null) { - waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel()); - } - // 预售状态 - if (waresOrderVo.getPreSaleStatus() != null) { - waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel()); - } - // 订单状态 - if (waresOrderVo.getOrderStatus() != null) { - EOrderStatus orderStatusEnum = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus()); - if (orderStatusEnum != null) { - waresOrderVo.setOrderStatusStr(orderStatusEnum.getLabel()); - } - } - // 支付方式 - if (waresOrderVo.getPayType() != null) { - EOrderPayType eOrderPayType = EOrderPayType.getEnumByValue(waresOrderVo.getPayType()); - if (null != eOrderPayType) { - waresOrderVo.setPayTypeStr(eOrderPayType.getLabel()); - } - } // 订单类型 - if (waresOrderVo.getOrderType() != null) { - EOrderType eOrderType = EOrderType.getEnumByValue(waresOrderVo.getOrderType()); - if (null != eOrderType) { - waresOrderVo.setOrderTypeStr(eOrderType.getLabel()); - } - } - // 供应方式 - if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) { - ESupplyWay eSupplyWay = ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())); - if (null != eSupplyWay) { - waresOrderVo.setOperateScope(eSupplyWay.getLabel()); - } - } + waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType())); + // 发货方式 + waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay())); + // 运输方式 + waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType())); + // 预售状态 + waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus())); + // 订单状态 + waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus())); + // 支付方式 + waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType())); } return getDataTable(resultList); } @@ -192,10 +151,7 @@ public class SaOrderController extends ParentOrderController { waresOrderParam.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); waresOrderParam.setVertexIdList(userAuthorityDTO.getVertexIdList()); waresOrderParam.setTeamList(userAuthorityDTO.getUserTeamList()); - // startPage(); List resultList = orderService.selectByOrderInfoList(waresOrderParam); - // 获取需要翻译的枚举翻译 - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values(), ETransportType.values(), EPresaleStatus.values(), EOrderType.values(), EOrderStatus.values(), EOrderPayType.values(), ESaleType.values(), EShippingChannel.values()); for (WaresOrderVo waresOrderVo : resultList) { // 省 if (waresOrderVo.getRecProvince() != null) { @@ -209,39 +165,18 @@ public class SaOrderController extends ParentOrderController { if (waresOrderVo.getRecCountry() != null) { waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry())); } - // 发货方式 - waresOrderVo.setDeliveryWayStr(EDelivery.getDelivery(waresOrderVo.getDeliveryWay()).getLabel()); - // 运输方式 - if (waresOrderVo.getTranType() != null && ETransportType.getETransportType(waresOrderVo.getTranType()) != null) { - waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel()); - } - // 预售状态 - if (waresOrderVo.getPreSaleStatus() != null && EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()) != null) { - waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel()); - } - // 订单状态 - if (waresOrderVo.getOrderStatus() != null) { - EOrderStatus orderStatusEnum = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus()); - if (orderStatusEnum != null) { - waresOrderVo.setOrderStatusStr(orderStatusEnum.getLabel()); - } - } - // 支付方式 - if (waresOrderVo.getPayType() != null) { - waresOrderVo.setPayTypeStr(EOrderPayType.getEnumByValue(waresOrderVo.getPayType()).getLabel()); - } // 订单类型 - if (waresOrderVo.getOrderType() != null) { - waresOrderVo.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + waresOrderVo.getOrderType())); - } - // 供应方式 - if (StringUtils.isNotBlank(waresOrderVo.getOperateScope()) && ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())) != null) { - waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel()); - } - // 发货类型 - waresOrderVo.setShippingChannelVal(transactionMap.get(EnumsPrefixConstants.E_SHIPPING_CHANNEL + waresOrderVo.getShippingChannel())); - waresOrderVo.setLogisticsCode(waresOrderVo.getLogisticsCode()); - waresOrderVo.setLogisticsCompany(waresOrderVo.getLogisticsCompany()); + waresOrderVo.setOrderTypeVal(EOrderType.getLabelByValue(waresOrderVo.getOrderType())); + // 发货方式 + waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay())); + // 运输方式 + waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType())); + // 预售状态 + waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus())); + // 订单状态 + waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus())); + // 支付方式 + waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType())); } ExcelUtil util = new ExcelUtil(WaresOrderVo.class, iMenuColumnServiceApi.queryMenuColumn("Commodity", SecurityUtils.getUserId()).getData()); util.exportExcel(response, resultList, "商品订单导出"); @@ -273,8 +208,6 @@ public class SaOrderController extends ParentOrderController { startPage(); List resultList = orderItemsService.selectByInvestmentList(waresOrderParam); - // 获取需要翻译的枚举翻译 - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values()); Map areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData(); for (WaresOrderVo waresOrderVo : resultList) { // 省 @@ -290,41 +223,23 @@ public class SaOrderController extends ParentOrderController { waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry())); } // 发货方式 - if (null != waresOrderVo.getDeliveryWay()) { - waresOrderVo.setDeliveryWayStr(transactionMap.get(EnumsPrefixConstants.DELIVERY + waresOrderVo.getDeliveryWay())); - } + waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay())); // 运输方式 - if (waresOrderVo.getTranType() != null) { - waresOrderVo.setTranTypeStr(ETransportType.getETransportType(waresOrderVo.getTranType()).getLabel()); - } + waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType())); // 预售状态 - if (waresOrderVo.getPreSaleStatus() != null) { - waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()).getLabel()); - } + waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus())); // 订单状态 - if (waresOrderVo.getOrderStatus() != null) { - waresOrderVo.setOrderStatusStr(EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus()).getLabel()); - } + waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus())); // 支付方式 - if (waresOrderVo.getPayType() != null) { - waresOrderVo.setPayTypeStr(EOrderPayType.getEnumByValue(waresOrderVo.getPayType()).getLabel()); - } + waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType())); // 订单类型 - if (waresOrderVo.getOrderType() != null) { - waresOrderVo.setOrderTypeStr(EOrderType.getEnumByValue(waresOrderVo.getOrderType()).getLabel()); - } + waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType())); // 供应方式 if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) { - waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel()); - } - // 计算汇率 - if (null != waresOrderVo.getInExchangeRate()) { - waresOrderVo.setOrderAchieve(waresOrderVo.getInExchangeRate().multiply(waresOrderVo.getOrderAchieve())); + waresOrderVo.setOperateScope(ESupplyWay.getLabelByVal(Integer.parseInt(waresOrderVo.getOperateScope()))); } // 发货类型 - if (waresOrderVo.getShippingChannel() != null) { - waresOrderVo.setShippingChannelStr(EShippingChannel.getEnumByValue(waresOrderVo.getShippingChannel()).getLabel()); - } + waresOrderVo.setShippingChannelStr(EShippingChannel.getLabelByValue(waresOrderVo.getShippingChannel())); // 计算产品总计 waresOrderVo.setProductPriceTotal(waresOrderVo.getProductPrice().multiply(BigDecimal.valueOf(waresOrderVo.getQuantity()))); } @@ -360,8 +275,6 @@ public class SaOrderController extends ParentOrderController { List resultList = orderItemsService.selectByInvestmentList(waresOrderParam); Map areaMap = areaServiceApi.getAreaMap(SecurityUtils.getPkCountry()).getData(); - // 获取需要翻译的枚举翻译 - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EDelivery.values(), ESupplyWay.values()); for (WaresOrderVo waresOrderVo : resultList) { // 省 @@ -377,56 +290,23 @@ public class SaOrderController extends ParentOrderController { waresOrderVo.setRecCountryName(areaMap.get(waresOrderVo.getRecCountry())); } // 发货方式 - if (waresOrderVo.getDeliveryWay() != null) { - waresOrderVo.setDeliveryWayStr(transactionMap.get(EnumsPrefixConstants.DELIVERY + waresOrderVo.getDeliveryWay())); - } - + waresOrderVo.setDeliveryWayStr(EDelivery.getLabelByValue(waresOrderVo.getDeliveryWay())); // 运输方式 - if (waresOrderVo.getTranType() != null) { - ETransportType transportType = ETransportType.getETransportType(waresOrderVo.getTranType()); - if (transportType != null) { - waresOrderVo.setTranTypeStr(transportType.getLabel()); - } - } - + waresOrderVo.setTranTypeStr(ETransportType.getLabelByValue(waresOrderVo.getTranType())); // 预售状态 - if (waresOrderVo.getPreSaleStatus() != null) { - EPresaleStatus presaleStatus = EPresaleStatus.getEPresaleStatus(waresOrderVo.getPreSaleStatus()); - if (presaleStatus != null) { - waresOrderVo.setPreSaleStatusStr(presaleStatus.getLabel()); - } - } + waresOrderVo.setPreSaleStatusStr(EPresaleStatus.getLabelByValue(waresOrderVo.getPreSaleStatus())); // 订单状态 - if (waresOrderVo.getOrderStatus() != null) { - EOrderStatus orderStatus = EOrderStatus.getEOrderStatus(waresOrderVo.getOrderStatus()); - if (orderStatus != null) { - waresOrderVo.setOrderStatusStr(orderStatus.getLabel()); - } - } + waresOrderVo.setOrderStatusStr(EOrderStatus.getLabelByValue(waresOrderVo.getOrderStatus())); // 支付方式 - if (waresOrderVo.getPayType() != null) { - EOrderPayType orderPayType = EOrderPayType.getEnumByValue(waresOrderVo.getPayType()); - if (orderPayType != null) { - waresOrderVo.setPayTypeStr(orderPayType.getLabel()); - } - } + waresOrderVo.setPayTypeStr(EOrderPayType.getLabelByValue(waresOrderVo.getPayType())); // 订单类型 - if (waresOrderVo.getOrderType() != null) { - EOrderType orderType = EOrderType.getEnumByValue(waresOrderVo.getOrderType()); - if (orderType != null) { - waresOrderVo.setOrderTypeStr(orderType.getLabel()); - } - } + waresOrderVo.setOrderTypeStr(EOrderType.getLabelByValue(waresOrderVo.getOrderType())); // 供应方式 - if (StringUtils.isNotBlank(waresOrderVo.getOperateScope()) && ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())) != null) { - waresOrderVo.setOperateScope(ESupplyWay.getESupplyWay(Integer.parseInt(waresOrderVo.getOperateScope())).getLabel()); + if (StringUtils.isNotBlank(waresOrderVo.getOperateScope())) { + waresOrderVo.setOperateScope(ESupplyWay.getLabelByVal(Integer.parseInt(waresOrderVo.getOperateScope()))); } - // 计算汇率 - waresOrderVo.setOrderAchieve(waresOrderVo.getInExchangeRate().multiply(waresOrderVo.getOrderAchieve())); // 发货类型 - if (waresOrderVo.getShippingChannel() != null) { - waresOrderVo.setShippingChannelStr(EShippingChannel.getEnumByValue(waresOrderVo.getShippingChannel()).getLabel()); - } + waresOrderVo.setShippingChannelStr(EShippingChannel.getLabelByValue(waresOrderVo.getShippingChannel())); } List waresOrderInfoList = resultList.stream().map(a -> { WaresOrderInfoVo waresOrderInfoVo = BeanUtil.copyProperties(a, WaresOrderInfoVo.class); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderInfoVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderInfoVo.java index 50cd7b31..40ef55d7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderInfoVo.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderInfoVo.java @@ -1,6 +1,7 @@ package com.hzs.sale.order.vo; import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.core.annotation.Excel; import lombok.Data; @@ -8,14 +9,6 @@ import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.sale.order.vo - * @Author: yh - * @CreateTime: 2023-08-02 16:32 - * @Description: TODO - * @Version: 1.0 - */ @Data public class WaresOrderInfoVo implements Serializable { @@ -45,6 +38,7 @@ public class WaresOrderInfoVo implements Serializable { /** * 重量 */ + @BigDecimalFormat @Excel(name = "重量(KG)") private BigDecimal weight; /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderVo.java index c782b931..b4c3c1f8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderVo.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresOrderVo.java @@ -10,13 +10,6 @@ import java.math.BigDecimal; import java.util.Date; import java.util.List; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/31 14:09 - * @Classname: WaresOrderVo - * @PackageName: com.hzs.sale.order.vo - */ @Data public class WaresOrderVo implements Serializable { @@ -312,10 +305,6 @@ public class WaresOrderVo implements Serializable { * 重量 */ private BigDecimal weight; - /** - * 展示汇率 - */ - private BigDecimal inExchangeRate; /** * 产品订单明细列表 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index 39df481e..7e4c51c6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -16,6 +16,7 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; +import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsRelationExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.product.BdAreaClassify; @@ -55,6 +56,8 @@ public class BdWaresController extends BaseController { @DubboReference IRangeServiceApi iRangeServiceApi; + @Autowired + private IBdWaresService iBdWaresService; @Autowired private IBdWaresAuthorizeService iBdWaresAuthorizeService; @Autowired @@ -72,8 +75,6 @@ public class BdWaresController extends BaseController { @Autowired private IBdWaresSpecsPackService iBdWaresSpecsPackService; @Autowired - private IBdWaresService iBdWaresService; - @Autowired private IBdWaresLabelService iBdWaresLabelService; @Autowired private IBdWaresExtendService iBdWaresExtendService; @@ -140,9 +141,9 @@ public class BdWaresController extends BaseController { // 所属专区 waresVo.setSpecialAreaVal(ESpecialArea.getESpecialArea(waresVo.getSpecialArea())); // 供应方式 - waresVo.setOperateScopeVal(ESupplyWay.getEnumLabelByValue(waresVo.getOperateScope())); + waresVo.setOperateScopeVal(ESupplyWay.getLabelByVal(waresVo.getOperateScope())); // 预售状态 - waresVo.setPreSaleStatusVal(EPresaleStatus.getEnumLabelByValue(waresVo.getPreSaleStatus())); + waresVo.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(waresVo.getPreSaleStatus())); WaresAuthorityVo waresAuthorityVo = iBdWaresService.getWaresAuthorityFirst(waresVo.getPkWares()); if (waresAuthorityVo != null) { @@ -959,4 +960,29 @@ public class BdWaresController extends BaseController { return AjaxResult.success(); } + /** + * 非在售商品列表 + * + * @param param + * @return + */ + @GetMapping("/list-no-sale") + public TableDataInfo listNoSale(WaresNoSaleParam param) { + List resultList = new ArrayList<>(); + + List list = iBdWaresService.listWaresNoSale(param); + if (CollectionUtil.isNotEmpty(list)) { + for (BdWaresExt bdWaresExt : list) { + WaresNoSaleVO vo = BeanUtil.copyProperties(bdWaresExt, WaresNoSaleVO.class); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); + vo.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(vo.getPreSaleStatus())); + resultList.add(vo); + } + } + + TableDataInfo tableDataInfo = getDataTable(list); + tableDataInfo.setRows(resultList); + return tableDataInfo; + } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index a5bf4493..87f53037 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -6,6 +6,7 @@ import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.retail.wares.param.RetailWaresParam; +import com.hzs.sale.wares.param.WaresNoSaleParam; import com.hzs.sale.wares.param.WaresParams; import com.hzs.sale.wares.vo.WaresAuthorityVo; import com.hzs.sale.wares.vo.WaresVo; @@ -157,4 +158,12 @@ public interface BdWaresMapper extends BaseMapper { */ List listWaresCodeByVertex(@Param("pkVertex") Long pkVertex); + /** + * 查询非在售商品 + * + * @param param + * @return + */ + List listWaresNoSale(@Param("param") WaresNoSaleParam param); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoList.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoList.java deleted file mode 100644 index 3e164bd0..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoList.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.hzs.sale.wares.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/22 14:22 - * @Classname: ConfirmOrderWaresInfoParams - * @PackageName: com.hzs.sale.wares.param - */ - -import lombok.Data; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.wares.param - *@Author: yh - *@CreateTime: 2023-05-22 14:22 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class ConfirmOrderWaresInfoList { - - - /** - * 商品外键 - */ - private Long pkTWares; - /** - * 商品sku外键 - */ - private Long pkTWaresSku; - /** - * 商品数量 - */ - private Integer quantity; - - /** - * 渠道 - */ - private Integer source; -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoParams.java deleted file mode 100644 index ecc7d7a6..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/ConfirmOrderWaresInfoParams.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.sale.wares.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/23 15:21 - * @Classname: ConfirmOrderWaresInfoParams - * @PackageName: com.hzs.sale.wares.param - */ - -import lombok.Data; - -import java.util.List; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.wares.param - *@Author: yh - *@CreateTime: 2023-05-23 15:21 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class ConfirmOrderWaresInfoParams { - - - private List confirmOrderWaresInfoParamsList; -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresNoSaleParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresNoSaleParam.java new file mode 100644 index 00000000..ee10d5af --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/WaresNoSaleParam.java @@ -0,0 +1,24 @@ +package com.hzs.sale.wares.param; + +import lombok.Data; + +/** + * 非在售商品查询 + */ +@Data +public class WaresNoSaleParam { + + /** + * 商品编号 + */ + private String waresCode; + /** + * 商品名称 + */ + private String waresName; + /** + * 商品状态 + */ + private Integer preSaleStatus; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 5f7fa13f..9c42e2be 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -9,6 +9,7 @@ import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.retail.wares.param.RetailWaresParam; import com.hzs.sale.wares.param.ComputeWaresPrice; +import com.hzs.sale.wares.param.WaresNoSaleParam; import com.hzs.sale.wares.param.WaresParams; import com.hzs.sale.wares.vo.WaresAuthorityVo; import com.hzs.sale.wares.vo.WaresVo; @@ -229,4 +230,12 @@ public interface IBdWaresService extends IService { */ List listWaresCodeByVertex(Long pkVertex); + /** + * 查询非在售商品 + * + * @param param + * @return + */ + List listWaresNoSale(WaresNoSaleParam param); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index a329f4e5..fd4025d9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1175,4 +1175,10 @@ public class BdWaresServiceImpl extends ServiceImpl impl public List listWaresCodeByVertex(Long pkVertex) { return baseMapper.listWaresCodeByVertex(pkVertex); } + + @Override + public List listWaresNoSale(WaresNoSaleParam param) { + return baseMapper.listWaresNoSale(param); + } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/WaresNoSaleVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/WaresNoSaleVO.java new file mode 100644 index 00000000..9f1fe3d8 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/WaresNoSaleVO.java @@ -0,0 +1,49 @@ +package com.hzs.sale.wares.vo; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +/** + * 非在售商品查询返回 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class WaresNoSaleVO implements Serializable { + + /** + * 商品ID + */ + private Integer pkId; + + /** + * 商品图 + */ + private String cover1; + + /** + * 商品编号 + */ + private String waresCode; + /** + * 商品名称 + */ + private String waresName; + /** + * 商品专区 + */ + private Integer specialArea; + private String specialAreaVal; + /** + * 商品状态 + */ + private Integer preSaleStatus; + private String preSaleStatusVal; + + +} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 9188de2e..6c78b2c4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -71,14 +71,6 @@ so.remark, soi.creation_time, so.pay_time, - case - when so.PK_ORIGINAL_ORDER is not null then - (select sot.order_code - from sa_order sot - where sot.pk_id = so.PK_ORIGINAL_ORDER) - else - null - end original_order_code, bs.name storehouse_name, bu.name unit_name, so.SYSTEM_TYPE, @@ -126,6 +118,15 @@ and bs.pk_id = #{param.pkStorehouse} + + and (bwe.pre_sale_status = 0 + + or soi.pk_wares in + + #{item} + + + ) and so.rec_province in @@ -143,10 +144,6 @@ and cm.pk_vertex = #{param.pkVertex} - - and so.PK_ORIGINAL_ORDER = #{param.pkOriginalOrder} - - order by creation_time desc, order_code desc @@ -183,14 +180,6 @@ so.remark, soi.creation_time, so.pay_time, - case - when so.PK_ORIGINAL_ORDER is not null then - (select sot.order_code - from sa_order sot - where sot.pk_id = so.PK_ORIGINAL_ORDER) - else - null - end original_order_code, bs.name storehouse_name, bu.name unit_name, so.SYSTEM_TYPE, @@ -245,6 +234,15 @@ ) + + and (bwe.pre_sale_status = 0 + + or soi.pk_wares in + + #{item} + + + ) and so.rec_province in @@ -262,9 +260,6 @@ and cm.pk_vertex = #{param.pkVertex} - - and so.PK_ORIGINAL_ORDER = #{param.pkOriginalOrder} - order by soi.creation_time desc, so.order_code desc @@ -468,6 +463,15 @@ #{item}
+ + and (bwe.pre_sale_status = 0 + + or soi.pk_wares in + + #{item} + + + ) and so.rec_province in @@ -822,7 +826,6 @@ oi.SPECS_NAME specsName, bp.WEIGHT weight, bp.SHIPPING_CHANNEL shippingChannel, - bc.IN_EXCHANGE_RATE inExchangeRate, oi.LOGISTICS_CODE logisticsCode, oi.LOGISTICS_COMPANY logisticsCompany, m.MEMBER_CODE buyMemberCode, @@ -836,7 +839,6 @@ so.SYSTEM_TYPE from sa_order_items oi left join sa_order so on oi.PK_ORDER = so.PK_ID - left join BD_CURRENCY bc on bc.PK_ID = so.PK_RATE left join CU_MEMBER cm on cm.PK_ID = so.PK_MEMBER left join BD_WARES_EXTEND we on we.PK_WARES = oi.PK_WARES left join BD_WARES bw on bw.PK_ID = we.PK_WARES diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 6b34ddfd..73a92519 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -487,4 +487,31 @@ (select pk_member from bd_vertex bv where bv.pk_id = #{pkVertex}) + + + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 2ac1b09d..61ba0717 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -251,11 +251,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - //发货方式 - for (EDelivery value : EDelivery.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - //发货状态 for (EDeliveryStatus value : EDeliveryStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -370,14 +365,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - - /** - * 供应方式 - */ - for (ESupplyWay value : ESupplyWay.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 订单状态 */ @@ -385,20 +372,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 预售状态 - */ - for (EPresaleStatus value : EPresaleStatus.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - - /** - * 订单支付方式 - */ - for (EOrderPayType value : EOrderPayType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 交易类型 */ @@ -512,13 +485,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 产品发货渠道 - */ - for (EShippingChannel value : EShippingChannel.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 支付业务类型 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java index fcc7e7dc..40dd0905 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelivery.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,27 +13,17 @@ public enum EDelivery { /** * */ - EMPTY(0, "未知", 1, EnumsPrefixConstants.DELIVERY + "0"), + EMPTY(0, "未知", 1), /** * 快递发货 */ - FAST_MAIL(1, "快递发货", 0, EnumsPrefixConstants.DELIVERY + "1"), + FAST_MAIL(1, "快递发货", 0), /** * 公司自提 */ - COMPANY_PICKED_UP(2, "公司自提", 0, EnumsPrefixConstants.DELIVERY + "2"), - - /** - * 店铺自提 - */ - SHOP_PICKED_UP(3, "店铺自提", 0, EnumsPrefixConstants.DELIVERY + "3"), - - /** - * 店铺配送 - */ - SHOP_DELIVERY(4, "店铺配送", 0, EnumsPrefixConstants.DELIVERY + "4"), + COMPANY_PICKED_UP(2, "公司自提", 0), ; @@ -50,10 +39,6 @@ public enum EDelivery { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static EDelivery getDelivery(int value) { for (EDelivery eDelivery : EDelivery.values()) { @@ -63,4 +48,17 @@ public enum EDelivery { } return EDelivery.EMPTY; } + + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EDelivery enums : EDelivery.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java index 9ab5961b..cd5040cb 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderPayType.java @@ -1,15 +1,10 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; /** - * @Description: 订单支付方式 - * @Author: jiang chao - * @Time: 2022/11/4 14:11 - * @Classname: EOrderPayType - * @PackageName: com.hzs.common.core.enums + * 订单支付方式 */ @AllArgsConstructor @Getter @@ -18,12 +13,12 @@ public enum EOrderPayType { /** * 钱包 */ - WALLET(0, "钱包", 0,EnumsPrefixConstants.ORDER_PAY_TYPE + "0"), + WALLET(0, "钱包", 0), /** * 在线 */ - ONLINE(1, "在线", 0,EnumsPrefixConstants.ORDER_PAY_TYPE + "1"), + ONLINE(1, "在线", 0), ; @@ -39,24 +34,17 @@ public enum EOrderPayType { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; - - /** - * 根据值获取枚举 - * - * @param value - * @return - */ - public static EOrderPayType getEnumByValue(int value) { + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } for (EOrderPayType enums : EOrderPayType.values()) { - if (enums.getValue() == value) { - return enums; + if (enums.value == value) { + return enums.getLabel(); } } - return null; + return ""; } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java index 0def30bd..232bf5ca 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderStatus.java @@ -4,9 +4,6 @@ import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; -import java.util.ArrayList; -import java.util.List; - /** * 订单状态 */ @@ -63,27 +60,6 @@ public enum EOrderStatus { */ private final String key; - /** - * 会员前端列表 - */ - private static List apiList; - - /** - * 获取会员前端列表 - * - * @return - */ - public static List getApiList() { - if (null == apiList) { - apiList = new ArrayList<>(); - apiList.add(WAIT_PAY); - apiList.add(PAY); - apiList.add(DELIVERED); - apiList.add(RECEIVED); - } - return apiList; - } - public static EOrderStatus getEOrderStatus(int value) { for (EOrderStatus eOrderStatus : EOrderStatus.values()) { if (eOrderStatus.value == value) { @@ -93,4 +69,16 @@ public enum EOrderStatus { return null; } + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EOrderStatus enums : EOrderStatus.values()) { + if (enums.value == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java index 878b0ec4..95bf897e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPresaleStatus.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,17 +13,17 @@ public enum EPresaleStatus { /** * 在售 */ - ON_SALE(0, "在售", 0, EnumsPrefixConstants.PRESALE_STATUS + "0"), + ON_SALE(0, "在售", 0), /** * 预售 */ - PRESALE(1, "预售", 0, EnumsPrefixConstants.PRESALE_STATUS + "1"), + PRESALE(1, "预售", 0), /** * 缺货 */ - OUT_STOCK(3, "缺货", 0, EnumsPrefixConstants.PRESALE_STATUS + "3"), + OUT_STOCK(3, "缺货", 0), ; @@ -40,10 +39,6 @@ public enum EPresaleStatus { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static EPresaleStatus getEPresaleStatus(int value) { for (EPresaleStatus ePresaleStatus : EPresaleStatus.values()) { @@ -54,12 +49,12 @@ public enum EPresaleStatus { return null; } - public static String getEnumLabelByValue(Integer value) { + public static String getLabelByValue(Integer value) { if (null == value) { return ""; } for (EPresaleStatus enums : EPresaleStatus.values()) { - if (enums.value == value) { + if (enums.getValue() == value) { return enums.getLabel(); } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java index b8e07cf3..abf67919 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShippingChannel.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -11,9 +10,9 @@ import lombok.Getter; @Getter public enum EShippingChannel { - TOTAL_WAREHOUSE(1, "总仓发货", 0, EnumsPrefixConstants.E_SHIPPING_CHANNEL + "1"), + TOTAL_WAREHOUSE(1, "总仓发货", 0), - A_PIECE(2, "一件代发", 0, EnumsPrefixConstants.E_SHIPPING_CHANNEL + "2"), + A_PIECE(2, "一件代发", 0), ; @@ -23,10 +22,6 @@ public enum EShippingChannel { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 根据值,返回枚举 @@ -42,4 +37,18 @@ public enum EShippingChannel { } return TOTAL_WAREHOUSE; } + + + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (EShippingChannel enums : EShippingChannel.values()) { + if (enums.value == value) { + return enums.getLabel(); + } + } + return ""; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index f188b689..130cc4ab 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -99,6 +99,18 @@ public enum ESpecialArea { */ private final int menuDetailValue; + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ESpecialArea eSpecialArea : ESpecialArea.values()) { + if (eSpecialArea.getValue() == value) { + return eSpecialArea.getLabel(); + } + } + return ""; + } + public static String getESpecialArea(Integer value) { if (null == value) { return ""; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java index c76ad860..63404a4c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESupplyWay.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,12 +13,12 @@ public enum ESupplyWay { /** * 自营 */ - SELF(0, "自营", 0, EnumsPrefixConstants.SUPPLY_WAY + "0"), + SELF(0, "自营", 0), /** * 非自营 */ - NO_SELF(1, "非自营", 0, EnumsPrefixConstants.SUPPLY_WAY + "1"), + NO_SELF(1, "非自营", 0), ; @@ -35,10 +34,6 @@ public enum ESupplyWay { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; public static ESupplyWay getESupplyWay(int value) { for (ESupplyWay eSupplyWay : ESupplyWay.values()) { @@ -49,13 +44,13 @@ public enum ESupplyWay { return null; } - public static String getEnumLabelByValue(Integer value) { + public static String getLabelByVal(Integer value) { if (null == value) { return ""; } - for (ESupplyWay enums : ESupplyWay.values()) { - if (enums.value == value) { - return enums.getLabel(); + for (ESupplyWay eSupplyWay : ESupplyWay.values()) { + if (eSupplyWay.getValue() == value) { + return eSupplyWay.getLabel(); } } return ""; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java new file mode 100644 index 00000000..709b4e5c --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -0,0 +1,53 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 系统名称 + */ +@AllArgsConstructor +@Getter +public enum ESysName { + + MANAGE("manage", "后台管理"), + + /** + * 新零售 + */ + BF("bf", "新零售BF"), + /** + * 新零售店铺 + */ + BL("bl", "新零售店铺BL"), + + ; + + /** + * 实际值 + */ + private final String value; + /** + * 显示标签 + */ + private final String label; + + public static ESysName getEnumByValue(String value) { + for (ESysName enums : ESysName.values()) { + if (enums.getValue().equals(value)) { + return enums; + } + } + return null; + } + + public static String getLabelByValue(String value) { + for (ESysName enums : ESysName.values()) { + if (enums.getValue().equals(value)) { + return enums.getLabel(); + } + } + return ""; + } + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java index b551a1b4..713eb38e 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETransportType.java @@ -44,12 +44,16 @@ public enum ETransportType { private final String key; - public static ETransportType getETransportType(int value){ - for (ETransportType eTransportType : ETransportType.values()) { - if (eTransportType.getValue() == value){ - return eTransportType; + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ETransportType enums : ETransportType.values()) { + if (enums.value == value) { + return enums.getLabel(); } } - return null; + return ""; } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java index 3dbbd066..053704b0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/ThreadUtils.java @@ -12,11 +12,6 @@ import java.util.concurrent.*; @Component public class ThreadUtils { - /** - * 初始化创建4个长度的固定线程池 - */ - public static ExecutorService executorService = Executors.newFixedThreadPool(4); - /** * 创建线程池 */ From 3979aaffc22b2fddb38577039bacc79e0c77407d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 14:48:26 +0800 Subject: [PATCH 112/362] =?UTF-8?q?##=20=E5=85=A8=E7=BD=91=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E5=BA=93=E5=AD=98=E5=90=8C=E6=AD=A5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 63 ++++++++++++++++++- .../com/hzs/common/core/config/BdConfig.java | 40 ++++++++++++ .../common/domain/sale/order/SaOrderTemp.java | 3 - 3 files changed, 101 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index f7cd7d24..2a07d262 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -1,15 +1,20 @@ package com.hzs.retail.sale.controller.service.impl; +import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; @@ -17,6 +22,7 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.*; +import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.config.BdAwards; @@ -34,6 +40,7 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; import com.hzs.sale.order.service.impl.SaOrderHandle; +import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.wares.service.IBdWaresDetailService; import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.sale.wares.service.IBdWaresRangeService; @@ -84,6 +91,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { private ISaOrderTempService iSaOrderTempService; @Autowired private ISaOrderWaresLimitService iSaOrderWaresLimitService; + @Autowired + private IBdProductService iBdProductService; @Autowired private RedisService redisService; @@ -704,6 +713,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private void pushOrderMq(SaOrderExt saOrderExt) { try { + // 同步全网产品库存 + this.allProductSync(saOrderExt); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() @@ -723,8 +735,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public String onlinePaymentCallBack(Long pkMember, String orderCode) { String resultStr; - // 临时订单信息 - SaOrderTemp saOrderTemp = null; // 获取缓存订单 SaOrderExt saOrderExt = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode); @@ -1045,4 +1055,53 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } + /** + * 同步全网产品库存 + * + * @param saOrderExt + */ + private void allProductSync(SaOrderExt saOrderExt) { + if (EYesNo.NO.getIntValue() == BdConfig.getProductSync()) { + return; + } + Map productMap = iBdProductService.queryProductMap(saOrderExt.getOrderItemsList().stream().map(SaOrderItems::getPkProduct).collect(Collectors.toSet()), null); + // 开启线程调用全网产品库存 + // 请求参数 + Map bodyMap = new HashMap<>(); + bodyMap.put("source", BdConfig.getSysName()); + bodyMap.put("orderCode", saOrderExt.getOrderCode()); + List> bodyDetailList = new ArrayList<>(); + for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { + Map detailMap = new HashMap<>(); + detailMap.put("wmsCode", productMap.get(saOrderItems.getPkProduct()).getWmsCode()); + detailMap.put("changeNum", saOrderItems.getQuantity()); + bodyDetailList.add(detailMap); + } + bodyMap.put("detailList", bodyDetailList); + // 请求头 + String header = Base64Encoder.encode(BdConfig.getSysName() + "!" + saOrderExt.getOrderCode()); + ThreadUtils.threadPoolExecutor.submit(() -> { + log.info("同步产品,header: {}", header); + log.info("同步产品,bodyMap: {}", bodyMap); + HttpRequest httpRequest = HttpUtil.createPost(BdConfig.getProductSyncUrl()); + httpRequest.header("authorization", header); + httpRequest.body(JSONUtil.toJsonStr(bodyMap)); + httpRequest.setReadTimeout(5000); + String resultStr; + try { + resultStr = httpRequest.execute().body(); + AjaxResult ajaxResult = JSONUtil.toBean(resultStr, AjaxResult.class); + log.info("同步产品,resultStr: {}", resultStr); + if (!ajaxResult.isSuccess()) { + resultStr = httpRequest.execute().body(); + log.info("同步产品失败重试,resultStr: {}", resultStr); + } + } catch (Exception e) { + log.error("同步产品库存失败", e); + resultStr = httpRequest.execute().body(); + log.info("同步产品异常重试,resultStr: {}", resultStr); + } + }); + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java index 06279ca0..bda8dfbe 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java @@ -10,6 +10,11 @@ import org.springframework.stereotype.Component; @ConfigurationProperties(prefix = "bd") public class BdConfig { + /** + * 系统名称(ESysName) + */ + private static String sysName; + /** * 当前环境 */ @@ -34,6 +39,23 @@ public class BdConfig { private static Integer enable; + /** + * 商品同步是否开启(0=开启,1=不开启) + */ + private static Integer productSync; + /** + * 商品同步地址 + */ + private static String productSyncUrl; + + public static String getSysName() { + return sysName; + } + + public void setSysName(String sysName) { + BdConfig.sysName = sysName; + } + public static String getEnv() { return env; } @@ -81,4 +103,22 @@ public class BdConfig { public void setEnable(Integer enable) { BdConfig.enable = enable; } + + + public static Integer getProductSync() { + return productSync; + } + + public void setProductSync(Integer productSync) { + BdConfig.productSync = productSync; + } + + public static String getProductSyncUrl() { + return productSyncUrl; + } + + public void setProductSyncUrl(String productSyncUrl) { + BdConfig.productSyncUrl = productSyncUrl; + } + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java index 50d9fd18..52a8f3fe 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderTemp.java @@ -13,9 +13,6 @@ import lombok.experimental.Accessors; /** * 订单缓存数据临时表 - * - * @author hzs - * @since 2025-02-25 */ @Builder @AllArgsConstructor From e653baee7586dbc978684b89d76cfd85b70dabc8 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 12 Aug 2025 14:58:14 +0800 Subject: [PATCH 113/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E5=8E=9F?= =?UTF-8?q?=E8=BF=9B=E5=AD=98=E7=9B=B8=E5=85=B3=E9=80=BB=E8=BE=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/sale/order/ISaOrderServiceApi.java | 4 - .../api/ApiOthSaOrderController.java | 4 - .../api/ApiRegSaOrderController.java | 5 - .../provider/SaOrderServiceProvider.java | 11 -- .../order/service/ISaOrderItemsService.java | 26 +--- .../sale/order/service/ISaOrderService.java | 22 ---- .../service/impl/SaOrderItemsServiceImpl.java | 3 - .../service/impl/SaOrderServiceImpl.java | 117 ------------------ .../com/hzs/sale/order/vo/WaresPreSaleVo.java | 18 +-- .../manage/BdProductController.java | 2 +- .../wares/mapper/BdWaresExtendMapper.java | 14 --- .../hzs/sale/wares/mapper/BdWaresMapper.java | 8 -- .../wares/service/IBdWaresExtendService.java | 14 --- .../sale/wares/service/IBdWaresService.java | 8 -- .../impl/BdWaresExtendServiceImpl.java | 28 ----- .../service/impl/BdWaresServiceImpl.java | 5 - .../mapper/sale/wares/BdWaresExtendMapper.xml | 19 --- .../mapper/sale/wares/BdWaresMapper.xml | 7 -- .../com/hzs/common/core/config/BdConfig.java | 11 -- .../common/core/enums/EShippingChannel.java | 2 +- .../domain/sale/wares/BdWaresExtend.java | 3 - 21 files changed, 7 insertions(+), 324 deletions(-) diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index 9c9f5ed4..e6c1e93f 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -108,10 +108,6 @@ public interface ISaOrderServiceApi { */ R saveOrderBatch(List orderList, List orderItemsList); - /* 保存销售订单 - **/ - R saveOrder(SaOrderExt saOrderExt); - /** * 查询注册订单数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java index 8ffc34a6..c29ae7a9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java @@ -49,10 +49,6 @@ public class ApiOthSaOrderController extends ParentOrderController { return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); } - if (!orderService.checkPreSalesQuantity(orderParam)) { - // 商品预售数量不足 - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.WARES_PRE_SALE_QUANTITY_LACK)); - } if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { convertShoppingCarToSku(orderParam); if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index cce6c751..f3da318a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -68,11 +68,6 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderParam.setSource(source); - if (!orderService.checkPreSalesQuantity(orderParam)) { - // 商品预售数量不足 - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.WARES_PRE_SALE_QUANTITY_LACK)); - } - AjaxResult result = validateSaveMember(orderParam); if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { return result; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index 69338e0d..fb6c5bd2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -119,17 +119,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { return R.fail(); } - @Override - public R saveOrder(SaOrderExt saOrderExt) { - try { - iSaOrderService.saveSaOrderByOrderExt(saOrderExt); - } catch (Exception e) { - e.printStackTrace(); - return R.fail(e.getMessage()); - } - return R.ok(); - } - @Override public List checkMemberIsFirstOrder(List memberCodeList) { List memberFirstOrderVos = iSaOrderService.checkMemberIsFirstOrder(memberCodeList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index ff3d19e8..f9177c35 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -20,9 +20,6 @@ import java.util.List; /** * 销售订单-明细表 服务类 - * - * @author hzs - * @since 2022-08-31 */ public interface ISaOrderItemsService extends IService { @@ -76,17 +73,11 @@ public interface ISaOrderItemsService extends IService { * 更新订单明细表,将订单明细更改为删除 * * @param saOrder - * @return: Boolean - * @Author: sui q - * @Date: 2022/10/24 20:48 */ Boolean updateOrderItems(SaOrder saOrder); /* - * @description: - * @author: sui q - * @date: 2023/7/27 16:16 - * @param: null null + * **/ void updateOrderItemsByMemberList(List memberList, Long pkApprove, Date currentDateTime); @@ -96,9 +87,6 @@ public interface ISaOrderItemsService extends IService { * @param pkOrderItemsId 订单明细 * @param pkApprove 审核人 * @param currentDate 更新时间 - * @return: Boolean - * @Author: sui q - * @Date: 2023/3/28 11:25 */ Boolean updateOrderItemsById(List pkOrderItemsId, Long pkApprove, Date currentDate); @@ -111,11 +99,7 @@ public interface ISaOrderItemsService extends IService { List queryListByOrderId(List orderIdList); /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/5/29 15:37 - * @param: [orderIdList, tOrderIdList] - * @return: java.util.List + * 根据订单id查询订单商品列表 **/ List waresListByOrderId(List orderIdList); @@ -157,11 +141,7 @@ public interface ISaOrderItemsService extends IService { List selectByList(Long pkOrder); /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List + * 根据订单ID查询商品 **/ List getOrderItemsParams(@Param("orderIdList") List orderIdList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index ace9d6ea..a5a46abe 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -571,28 +571,6 @@ public interface ISaOrderService extends IService { */ int insertBach(List orderList, List orderItemsList); - /** - * 生成三方销售订单 - */ - void saveSaOrderByOrderExt(SaOrderExt saOrderExt); - - /** - * 校验预售库存数量是否充足 - * - * @param orderParam - * @return - */ - Boolean checkPreSalesQuantity(OrderParam orderParam); - - /** - * 扣减预售状态下预售库存使用量 - * - * @param orderCode - * @param specialArea - * @return - */ - Boolean reducePreSalesQuantity(String orderCode, Integer specialArea); - /** * 根据编号查询会员首单 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 5b95d922..51375c86 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -25,9 +25,6 @@ import java.util.*; /** * 销售订单-明细表 服务实现类 - * - * @author hzs - * @since 2022-08-31 */ @Service public class SaOrderItemsServiceImpl extends ServiceImpl implements ISaOrderItemsService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 1db786d5..98f77dd8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -768,9 +768,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员) newCuMember.setStopDate(DateUtils.addMonths(newCuMember.getExpireDate(), 6)); - String orderCode = saOrderExt.getOrderCode(); - Integer specialArea = saOrderExt.getSpecialArea(); - this.reducePreSalesQuantity(orderCode, specialArea); // 调用其他服务保存会员信息、会员注册信息 R saveResult = memberServiceApi.saveMember(newCuMember, saOrderExt, isToBePay, cuMemberAccountExt); if (saveResult.isSuccess()) { @@ -870,10 +867,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 更新订单信息 updateSaOrder(saOrderExt); - // 扣减预售状态下预售库存使用量 - String orderCode = saOrderExt.getOrderCode(); - Integer specialArea = saOrderExt.getSpecialArea(); - reducePreSalesQuantity(orderCode, specialArea); // 处理会员信息,更新会员等级,扣款 R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); if (saveResult.isSuccess()) { @@ -987,11 +980,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl CuMember member = getCuMemberByKey(saOrderExt.getPkMember()); CuMember cuMember = calculateHaFunMemberGrade(saOrderExt, member); - // 扣减预售状态下预售库存使用量 - String orderCode = saOrderExt.getOrderCode(); - Integer specialArea = saOrderExt.getSpecialArea(); - reducePreSalesQuantity(orderCode, specialArea); - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); if (saveResult.isSuccess()) { if (!saveResult.getData()) { @@ -1961,104 +1949,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return i; } - @Override - @Transactional(rollbackFor = Exception.class) - public void saveSaOrderByOrderExt(SaOrderExt saOrderExt) { - save(saOrderExt); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setPkOrder(saOrderExt.getPkId()); - } - saOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - } - - /** - * 校验预售库存数量是否充足 - * - * @param orderParam - * @return - */ - @Override - public Boolean checkPreSalesQuantity(OrderParam orderParam) { - // 开关控制是否处理 - if (EYesNo.NO.getIntValue() == BdConfig.getEnable()) { - return true; - } - - Set waresCodeList = new HashSet<>(); - for (OrderItemsParam orderItemsParam : orderParam.getOrderItemsParams()) { - if (StringUtils.isNotBlank(orderItemsParam.getWaresCode())) { - waresCodeList.add(orderItemsParam.getWaresCode()); - } - } - if (waresCodeList.size() > 0) { - List waresPreSaleVoList = iBdWaresExtendService.selectByWaresCodeList(waresCodeList, orderParam.getSpecialArea()); - if (CollectionUtil.isNotEmpty(waresPreSaleVoList)) { - Map waresPreSaleMap = waresPreSaleVoList.stream().collect(Collectors.toMap(WaresPreSaleVo::getWaresCode, Function.identity())); - for (OrderItemsParam orderItemsParam : orderParam.getOrderItemsParams()) { - String waresCode = orderItemsParam.getWaresCode(); - if (StringUtils.isNotEmpty(waresCode)) { - WaresPreSaleVo waresPreSaleVo = waresPreSaleMap.get(waresCode); - if (null != waresPreSaleVo && waresPreSaleVo.getPreSaleStatus() != null && waresPreSaleVo.getPreSaleStatus().equals(EPresaleStatus.PRESALE.getValue())) { - // 如果是预售状态 校验预售数量是否足够 - if (waresPreSaleVo.getPreSaleQuantity() != null) { - // 预售数量不足 - return waresPreSaleVo.getPreSaleQuantity() >= orderItemsParam.getQuantity(); - } - } - } - } - } - } - return true; - } - - /** - * 扣减预售状态下预售库存使用量 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean reducePreSalesQuantity(String orderCode, Integer specialArea) { - // 开关控制是否处理 - if (EYesNo.NO.getIntValue() == BdConfig.getEnable()) { - return true; - } - - List orderItemsList = saOrderItemsService.selectByWaresCodeList(orderCode); - if (orderItemsList.size() > 0) { - Set waresCodeList = new HashSet<>(); - for (OrderItemsParam orderItemsParam : orderItemsList) { - if (StringUtils.isNotBlank(orderItemsParam.getWaresCode())) { - waresCodeList.add(orderItemsParam.getWaresCode()); - } - } - if (waresCodeList.size() > 0) { - List waresPreSaleVoList = iBdWaresExtendService.selectByWaresCodeList(waresCodeList, specialArea); - if (CollectionUtil.isNotEmpty(waresPreSaleVoList)) { - Map waresPreSaleMap = waresPreSaleVoList.stream().collect(Collectors.toMap(WaresPreSaleVo::getWaresCode, Function.identity())); - for (OrderItemsParam orderItemsParam : orderItemsList) { - String waresCode = orderItemsParam.getWaresCode(); - if (StringUtils.isNotEmpty(waresCode)) { - WaresPreSaleVo waresPreSaleVo = waresPreSaleMap.get(waresCode); - if (null != waresPreSaleVo && waresPreSaleVo.getPreSaleStatus() != null && waresPreSaleVo.getPreSaleStatus().equals(EPresaleStatus.PRESALE.getValue())) { - // 如果是预售状态 校验预售数量是否足够 - if (waresPreSaleVo.getPreSaleQuantity() != null) { - if (waresPreSaleVo.getPreSaleQuantity() < orderItemsParam.getQuantity()) { - // 预售数量不足 - return false; - } else { - iBdWaresService.updatePreSaleQuantityByWaresCode(waresCode, orderItemsParam.getQuantity()); - return true; - } - } - } - } - } - } - } - } - return true; - } - /** * 根据编号查询会员首单 * @@ -2070,13 +1960,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.checkMemberIsFirstOrder(memberCodeList); } - /** - * @description: 自助撤单 - * @author: zhang jing - * @date: 2023/11/21 15:27 - * @param: [pkApprove, orderCancelParam, validateCancelOrderVO] - * @return: void - **/ @Override @Transactional(rollbackFor = Exception.class) public void selfRevokeOrder(Long pkApprove, MyOrderVO myOrderVO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresPreSaleVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresPreSaleVo.java index ceef8cf4..f19743d6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresPreSaleVo.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/WaresPreSaleVo.java @@ -1,21 +1,7 @@ -package com.hzs.sale.order.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/25 14:06 - * @Classname: WaresPreSaleVo - * @PackageName: com.hzs.sale.order.vo - */ +package com.hzs.sale.order.vo; import lombok.Data; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.order.vo - *@Author: yh - *@CreateTime: 2024-04-25 14:06 - *@Description: TODO - *@Version: 1.0 - */ @Data public class WaresPreSaleVo { @@ -31,7 +17,7 @@ public class WaresPreSaleVo { /** * 商品名称 */ - private String waresName ; + private String waresName; /** * 预售状态 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java index ff9d5f93..4d05a7ca 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java @@ -554,7 +554,7 @@ public class BdProductController extends BaseController { } // 发货类型翻译 - productVo.setShippingChannelVal(transactionMap.get(EShippingChannel.getEnumByValue(productVo.getShippingChannel()).getKey())); + productVo.setShippingChannelVal(EShippingChannel.getLabelByValue(productVo.getShippingChannel())); // 产品属性翻译 if (productVo.getProductAttr() != null) { productVo.setProductAttrVal(EProductAttrType.getEnumByValue(productVo.getProductAttr()).getLabel()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresExtendMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresExtendMapper.java index c5f29648..07f45fec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresExtendMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresExtendMapper.java @@ -3,18 +3,13 @@ package com.hzs.sale.wares.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.sale.order.param.WaresNumberParam; -import com.hzs.sale.order.vo.WaresPreSaleVo; import org.apache.ibatis.annotations.Param; -import java.util.Collection; import java.util.Date; import java.util.List; /** * 商品发布扩展表 Mapper 接口 - * - * @author hzs - * @since 2022-09-09 */ public interface BdWaresExtendMapper extends BaseMapper { @@ -34,13 +29,4 @@ public interface BdWaresExtendMapper extends BaseMapper { */ void updatePutOnTimeAndPutOffTimeByWaresId(@Param("waresId") Integer waresId, @Param("putOnTime") Date putOnTime, @Param("putOffTime") Date putOffTime); - /** - * 根据商品编号查询 每个商品所剩余的预售数量 - * - * @param waresCodeList - * @param specialArea 专区 - * @return - */ - List selectByWaresCodeList(@Param("waresCodeList") Collection waresCodeList, @Param("specialArea") Integer specialArea); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index 87f53037..79d06d00 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -114,14 +114,6 @@ public interface BdWaresMapper extends BaseMapper { List queryRecommendWaresByCondition(@Param("specialArea") Integer specialArea, @Param("pkAreaClassify") Integer pkAreaClassify, @Param("waresCode") String waresCode, @Param("waresName") String waresName, @Param("pkCountry") Integer pkCountry); - /** - * 扣减预售数量库存 - * - * @param waresCode - * @param quantity - */ - void updatePreSaleQuantityByWaresCode(@Param("waresCode") String waresCode, @Param("quantity") Integer quantity); - /** * 查询商品可见类型 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresExtendService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresExtendService.java index e0f83bf2..b659e928 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresExtendService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresExtendService.java @@ -3,17 +3,12 @@ package com.hzs.sale.wares.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.sale.order.param.WaresNumberParam; -import com.hzs.sale.order.vo.WaresPreSaleVo; -import java.util.Collection; import java.util.Date; import java.util.List; /** * 商品发布扩展表 服务类 - * - * @author hzs - * @since 2022-09-09 */ public interface IBdWaresExtendService extends IService { @@ -33,13 +28,4 @@ public interface IBdWaresExtendService extends IService { */ void updatePutOnTimeAndPutOffTimeByWaresId(Integer waresId, Date putOnTime, Date putOffTime); - /** - * 根据商品编号查询 每个商品所剩余的预售数量 - * - * @param waresCodeList - * @param specialArea 专区 - * @return - */ - List selectByWaresCodeList(Collection waresCodeList, Integer specialArea); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 9c42e2be..d1c8f6b4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -172,14 +172,6 @@ public interface IBdWaresService extends IService { */ Map> getWaresAuthority(List pkWaresList); - /** - * 扣减预售数量库存 - * - * @param waresCode - * @param quantity - */ - void updatePreSaleQuantityByWaresCode(String waresCode, Integer quantity); - /** * 查询商品可见类型 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresExtendServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresExtendServiceImpl.java index 6ba6a437..7ec44929 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresExtendServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresExtendServiceImpl.java @@ -4,29 +4,19 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.sale.order.param.WaresNumberParam; -import com.hzs.sale.order.vo.WaresPreSaleVo; import com.hzs.sale.wares.mapper.BdWaresExtendMapper; import com.hzs.sale.wares.service.IBdWaresExtendService; import org.springframework.stereotype.Service; -import java.util.Collection; import java.util.Date; import java.util.List; /** * 商品发布扩展表 服务实现类 - * - * @author hzs - * @since 2022-09-09 */ @Service public class BdWaresExtendServiceImpl extends ServiceImpl implements IBdWaresExtendService { - /** - * 修改销量 - * - * @param waresNumberParamList - */ @Override public void updateWaresSalesAccrual(List waresNumberParamList) { if (CollectionUtil.isNotEmpty(waresNumberParamList)) { @@ -34,27 +24,9 @@ public class BdWaresExtendServiceImpl extends ServiceImpl selectByWaresCodeList(Collection waresCodeList, Integer specialArea) { - return baseMapper.selectByWaresCodeList(waresCodeList, specialArea); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index fd4025d9..3ecb10ad 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1138,11 +1138,6 @@ public class BdWaresServiceImpl extends ServiceImpl impl return map; } - @Override - public void updatePreSaleQuantityByWaresCode(String waresCode, Integer quantity) { - baseMapper.updatePreSaleQuantityByWaresCode(waresCode, quantity); - } - @Override public WaresAuthorityVo getWaresAuthorityFirst(Integer pkWares) { return baseMapper.getWaresAuthorityFirst(pkWares); diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresExtendMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresExtendMapper.xml index 28cf90ce..e4ec4734 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresExtendMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresExtendMapper.xml @@ -72,23 +72,4 @@ where PK_WARES = #{waresId} - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 73a92519..93fbedad 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -352,13 +352,6 @@ order by bw.sort,bw.creation_time desc - - update BD_WARES - set PRE_SALE_QUANTITY = PRE_SALE_QUANTITY - #{quantity} - where WARES_CODE = #{waresCode} - and PRE_SALE_QUANTITY > 0 - - - select - bw.WARES_CODE waresCode, bw.WARES_NAME waresName,bw.PRE_SALE_QUANTITY preSaleQuantity, - we.PK_WARES pkWares ,we.PRE_SALE_STATUS preSaleStatus - from BD_WARES bw - left join BD_WARES_EXTEND we on we.PK_WARES = bw.PK_ID - where bw.del_flag = 0 - and we.del_flag = 0 - - and bw.special_area = #{specialArea} - - - and bw.WARES_CODE in - - #{item} - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 73a92519..93fbedad 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -352,13 +352,6 @@ order by bw.sort,bw.creation_time desc - - update BD_WARES - set PRE_SALE_QUANTITY = PRE_SALE_QUANTITY - #{quantity} - where WARES_CODE = #{waresCode} - and PRE_SALE_QUANTITY > 0 - - + select + sos.pk_id, + sos.order_code, + sos.body_detail, + sos.creation_time, + sos.status + from sa_order_sync sos + + + and sos.pk_id = #{param.pkId} + + + and sos.order_code like #{param.orderCode} || '%' + + + and sos.status = #{param.status} + + + and sos.creation_time >= to_date(#{param.startDate}, 'yyyy-mm-dd') + + + and sos.creation_time < to_date(#{param.endDate}, 'yyyy-mm-dd') + 1 + + + order by sos.creation_time desc + + + \ No newline at end of file diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 382c46c4..0c18f133 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -400,7 +400,7 @@ public enum EOperationModule { STATISTIC_ANALYSIS("统计分析"), MEMBER_RISK_CONTROL("K值风控设置"), - + ORDER_SYNC("同步失败订单"), ; /** diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java new file mode 100644 index 00000000..7fa9b0f2 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java @@ -0,0 +1,39 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@AllArgsConstructor +@Getter +public enum ESaOrderSyncStatus { + FAIL(1, "失败"), + Handled(0, "已处理") + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + + /** + * 根据枚举值获取枚举 + * + * @param value + * @return + */ + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ESaOrderSyncStatus enums : ESaOrderSyncStatus.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } +} From 48675126f4be9f71877e0114a51ba9383b64c971 Mon Sep 17 00:00:00 2001 From: woody Date: Thu, 14 Aug 2025 09:34:52 +0800 Subject: [PATCH 126/362] =?UTF-8?q?fix(SaOrderSync):=E5=85=A8=E7=BD=91?= =?UTF-8?q?=E5=95=86=E5=93=81=E7=AE=A1=E7=90=86-=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E8=AE=A2=E5=8D=95=E7=A7=BB=E9=99=A4AccessPer?= =?UTF-8?q?mission?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/order/controller/manager/SaOrderSyncController.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java index aff53046..b50c0774 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java @@ -35,7 +35,6 @@ public class SaOrderSyncController extends BaseController { /** * 同步订单列表 */ - @AccessPermissions("orderSyncList") @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.SELECT) @GetMapping("list") public TableDataInfo list(SaOrderSyncParam param) { @@ -52,7 +51,6 @@ public class SaOrderSyncController extends BaseController { /** * 更新同步状态 */ - @AccessPermissions("orderSyncUpdate") @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.UPDATE) @PostMapping("updateStatus") public AjaxResult updateStatus(@RequestBody SaOrderSyncParam param) { From f29a0cead09dbe5e65269e7dbcc5cd08a591ce51 Mon Sep 17 00:00:00 2001 From: woody Date: Wed, 13 Aug 2025 18:09:49 +0800 Subject: [PATCH 127/362] =?UTF-8?q?feat(SaOrderSync):=20=E5=85=A8=E7=BD=91?= =?UTF-8?q?=E5=95=86=E5=93=81=E7=AE=A1=E7=90=86-=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E8=AE=A2=E5=8D=95=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manager/SaOrderSyncController.java | 69 +++++++++++++++++++ .../order/dto/SaOrderSyncBodyDetailDTO.java | 22 ++++++ .../sale/order/mapper/SaOrderSyncMapper.java | 17 ++++- .../sale/order/param/SaOrderSyncParam.java | 41 +++++++++++ .../order/service/ISaOrderSyncService.java | 27 +++++++- .../service/impl/SaOrderSyncServiceImpl.java | 25 ++++++- .../com/hzs/sale/order/vo/SaOrderSyncVO.java | 62 +++++++++++++++++ .../mapper/sale/order/SaOrderSyncMapper.xml | 31 ++++++++- .../common/core/enums/EOperationModule.java | 2 +- .../common/core/enums/ESaOrderSyncStatus.java | 39 +++++++++++ 10 files changed, 327 insertions(+), 8 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/dto/SaOrderSyncBodyDetailDTO.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/SaOrderSyncParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/SaOrderSyncVO.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java new file mode 100644 index 00000000..aff53046 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java @@ -0,0 +1,69 @@ +package com.hzs.sale.order.controller.manager; + +import cn.hutool.json.JSONUtil; +import com.alibaba.fastjson2.JSON; +import com.hzs.common.core.annotation.AccessPermissions; +import com.hzs.common.core.annotation.Log; +import com.hzs.common.core.enums.EOperationMethod; +import com.hzs.common.core.enums.EOperationModule; +import com.hzs.common.core.enums.ESaOrderSyncStatus; +import com.hzs.common.core.utils.poi.ExcelUtil; +import com.hzs.common.core.web.controller.BaseController; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.sale.order.dto.SaOrderSyncBodyDetailDTO; +import com.hzs.sale.order.param.SaOrderSyncParam; +import com.hzs.sale.order.service.ISaOrderSyncService; +import com.hzs.sale.order.vo.SaOrderSyncVO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 订单同步记录控制器 + */ +@RestController +@RequestMapping("/manage/order-sync") +public class SaOrderSyncController extends BaseController { + + @Autowired + private ISaOrderSyncService orderSyncService; + + /** + * 同步订单列表 + */ + @AccessPermissions("orderSyncList") + @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.SELECT) + @GetMapping("list") + public TableDataInfo list(SaOrderSyncParam param) { + startPage(); + List list = orderSyncService.queryList(param, SecurityUtils.getPkCountry()); + for (SaOrderSyncVO saOrderSyncVO : list) { + saOrderSyncVO.setStatusVal(ESaOrderSyncStatus.getLabelByValue(saOrderSyncVO.getStatus())); + saOrderSyncVO.setOrderProductDetail(JSONUtil.toList(saOrderSyncVO.getBodyDetail(), SaOrderSyncBodyDetailDTO.class)); + } + return getDataTable(list); + } + + + /** + * 更新同步状态 + */ + @AccessPermissions("orderSyncUpdate") + @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.UPDATE) + @PostMapping("updateStatus") + public AjaxResult updateStatus(@RequestBody SaOrderSyncParam param) { + if (param.getPkId() == null) { + return AjaxResult.error("主键ID不能为空"); + } + if (param.getStatus() == null) { + return AjaxResult.error("状态不能为空"); + } + + return toAjax(orderSyncService.updateStatus(param.getPkId(), param.getStatus(), + SecurityUtils.getUserId(), SecurityUtils.getPkCountry())); + } +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/dto/SaOrderSyncBodyDetailDTO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/dto/SaOrderSyncBodyDetailDTO.java new file mode 100644 index 00000000..a1c4c4f7 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/dto/SaOrderSyncBodyDetailDTO.java @@ -0,0 +1,22 @@ +package com.hzs.sale.order.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Builder +@Data +@AllArgsConstructor +@NoArgsConstructor +public class SaOrderSyncBodyDetailDTO { + /** + * 仓储编号 + */ + private String wmsCode; + + /** + * 变动数量 + */ + private Integer changeNum; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderSyncMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderSyncMapper.java index ff8dfead..8fd24701 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderSyncMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderSyncMapper.java @@ -2,10 +2,23 @@ package com.hzs.sale.order.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderSync; +import com.hzs.sale.order.param.SaOrderSyncParam; +import com.hzs.sale.order.vo.SaOrderSyncVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** - * 订单产品同步记录 Mapper 接口 + * 订单同步记录Mapper接口 */ public interface SaOrderSyncMapper extends BaseMapper { -} + /** + * 查询订单同步记录列表 + * + * @param param 查询参数 + * @param pkCountry 国家主键 + * @return 同步记录列表 + */ + List queryList(@Param("param") SaOrderSyncParam param, @Param("pkCountry") Integer pkCountry); +} \ No newline at end of file diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/SaOrderSyncParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/SaOrderSyncParam.java new file mode 100644 index 00000000..64f9132e --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/SaOrderSyncParam.java @@ -0,0 +1,41 @@ +package com.hzs.sale.order.param; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 同步失败订单列表 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class SaOrderSyncParam { + /** + * 同步失败主键 + */ + private Long pkId; + + /** + * 订单号 + */ + private String orderCode; + + /** + * 开始日期(yyyy-MM-dd) + */ + private String startDate; + + /** + * 结束日期(yyyy-MM-dd) + */ + private String endDate; + + /** + * 同步状态 1=失败 + */ + private Integer status; + private String statusVal; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderSyncService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderSyncService.java index ce5897bc..72df92f2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderSyncService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderSyncService.java @@ -2,10 +2,33 @@ package com.hzs.sale.order.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderSync; +import com.hzs.sale.order.param.SaOrderSyncParam; +import com.hzs.sale.order.vo.SaOrderSyncVO; + +import java.util.List; /** - * 订单产品同步记录 服务类 + * 订单同步记录服务接口 */ public interface ISaOrderSyncService extends IService { -} + /** + * 查询订单同步记录列表 + * + * @param param 查询参数 + * @param pkCountry 国家主键 + * @return 同步记录列表 + */ + List queryList(SaOrderSyncParam param, Integer pkCountry); + + /** + * 更新同步状态 + * + * @param pkId 主键ID + * @param status 状态 + * @param userId 用户ID + * @param pkCountry 国家主键 + * @return 是否成功 + */ + Boolean updateStatus(Long pkId, Integer status, Long userId, Integer pkCountry); +} \ No newline at end of file diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderSyncServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderSyncServiceImpl.java index bce905ad..09860e27 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderSyncServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderSyncServiceImpl.java @@ -1,15 +1,36 @@ package com.hzs.sale.order.service.impl; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.sale.order.SaOrderSync; import com.hzs.sale.order.mapper.SaOrderSyncMapper; +import com.hzs.sale.order.param.SaOrderSyncParam; import com.hzs.sale.order.service.ISaOrderSyncService; +import com.hzs.sale.order.vo.SaOrderSyncVO; +import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Service; +import java.util.List; + /** - * 订单产品同步记录 服务实现类 + * 订单同步记录服务实现 */ @Service public class SaOrderSyncServiceImpl extends ServiceImpl implements ISaOrderSyncService { -} + @Override + public List queryList(SaOrderSyncParam param, Integer pkCountry) { + return baseMapper.queryList(param, pkCountry); + } + + @Override + public Boolean updateStatus( + Long pkId, Integer status, Long userId, Integer pkCountry + ) { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(SaOrderSync::getPkId, pkId); + updateWrapper.set(SaOrderSync::getStatus, status); + + return this.update(updateWrapper); + } +} \ No newline at end of file diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/SaOrderSyncVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/SaOrderSyncVO.java new file mode 100644 index 00000000..812f65a2 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/SaOrderSyncVO.java @@ -0,0 +1,62 @@ +package com.hzs.sale.order.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.common.core.annotation.Excel; +import com.hzs.sale.order.dto.SaOrderSyncBodyDetailDTO; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * 订单同步记录VO + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class SaOrderSyncVO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long pkId; + + /** + * 订单编号 + */ + @Excel(name = "订单编号") + private String orderCode; + + /** + * 产品明细列表 + */ + private String bodyDetail; + private List orderProductDetail; + + + /** + * 创建时间 + */ + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date creationTime; + + /** + * 同步状态(1=失败) + */ + @Excel(name = "同步状态", readConverterExp = "1=失败,0=成功") + private Integer status; + + /** + * 同步状态描述 + */ + private String statusVal; + +} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderSyncMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderSyncMapper.xml index f4ef63e1..c4c8f343 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderSyncMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderSyncMapper.xml @@ -2,4 +2,33 @@ - + + + + \ No newline at end of file diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 382c46c4..0c18f133 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -400,7 +400,7 @@ public enum EOperationModule { STATISTIC_ANALYSIS("统计分析"), MEMBER_RISK_CONTROL("K值风控设置"), - + ORDER_SYNC("同步失败订单"), ; /** diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java new file mode 100644 index 00000000..7fa9b0f2 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaOrderSyncStatus.java @@ -0,0 +1,39 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@AllArgsConstructor +@Getter +public enum ESaOrderSyncStatus { + FAIL(1, "失败"), + Handled(0, "已处理") + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + + /** + * 根据枚举值获取枚举 + * + * @param value + * @return + */ + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ESaOrderSyncStatus enums : ESaOrderSyncStatus.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } +} From 5271fc14a8d2e2a8f8bb583393aa22c690ad571d Mon Sep 17 00:00:00 2001 From: woody Date: Thu, 14 Aug 2025 09:34:52 +0800 Subject: [PATCH 128/362] =?UTF-8?q?fix(SaOrderSync):=E5=85=A8=E7=BD=91?= =?UTF-8?q?=E5=95=86=E5=93=81=E7=AE=A1=E7=90=86-=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E8=AE=A2=E5=8D=95=E7=A7=BB=E9=99=A4AccessPer?= =?UTF-8?q?mission?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/order/controller/manager/SaOrderSyncController.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java index aff53046..b50c0774 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderSyncController.java @@ -35,7 +35,6 @@ public class SaOrderSyncController extends BaseController { /** * 同步订单列表 */ - @AccessPermissions("orderSyncList") @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.SELECT) @GetMapping("list") public TableDataInfo list(SaOrderSyncParam param) { @@ -52,7 +51,6 @@ public class SaOrderSyncController extends BaseController { /** * 更新同步状态 */ - @AccessPermissions("orderSyncUpdate") @Log(module = EOperationModule.ORDER_SYNC, method = EOperationMethod.UPDATE) @PostMapping("updateStatus") public AjaxResult updateStatus(@RequestBody SaOrderSyncParam param) { From a3712c470e63e72c85304b1397425a4289268145 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 15 Aug 2025 17:44:54 +0800 Subject: [PATCH 129/362] =?UTF-8?q?##=20=E6=9C=AC=E5=9C=B0=E3=80=81?= =?UTF-8?q?=E6=B5=8B=E8=AF=95nacos=E5=92=8Cjob=E9=85=8D=E7=BD=AE=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bd-third/src/main/resources/application-test.properties | 2 +- pom.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-third/src/main/resources/application-test.properties b/bd-third/src/main/resources/application-test.properties index 3477335d..d3bd5ced 100644 --- a/bd-third/src/main/resources/application-test.properties +++ b/bd-third/src/main/resources/application-test.properties @@ -10,7 +10,7 @@ logging.config=classpath:logback.xml ### 执行器通讯TOKEN [选填]:非空时启用; xxl.job.accessToken=base_token ### 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册 -xxl.job.executor.appname=xxl-job-retail +xxl.job.executor.appname=xxl-job-zk ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。 xxl.job.executor.address= ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务"; diff --git a/pom.xml b/pom.xml index 77b9fdf4..78e3a6b6 100644 --- a/pom.xml +++ b/pom.xml @@ -444,7 +444,7 @@ 127.0.0.1:8848 - 4d03b742-f273-4306-87c7-7dbd6000fd7c + 8e88a6b5-94e6-4711-8a01-c5ff87ac5662 DEFAULT_GROUP @@ -463,7 +463,7 @@ 172.26.201.166:8848 - 487f6929-777e-44b7-a9f9-479c6d8050e4 + f3d9c031-a0d3-46f2-b3cc-ffc51a528c67 DEFAULT_GROUP From d1236c31c7e3db4495f74625de9f4e982f61f9a2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 18 Aug 2025 11:27:15 +0800 Subject: [PATCH 130/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E6=94=AF=E4=BB=98=E4=BD=BF=E7=94=A8BD=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=EF=BC=9B=E5=8E=BB=E6=8E=89=E7=A7=92=E7=BB=93=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 4 ++-- .../order/service/impl/SaOrderServiceImpl.java | 16 ++++++++-------- bd-third/src/main/resources/jd/bak.txt | 6 ++++++ .../src/main/resources/jd/merchantCert004.pfx | Bin 0 -> 3042 bytes .../src/main/resources/jd/merchantCert005.pfx | Bin 0 -> 3042 bytes .../src/main/resources/jd/merchantCert006.pfx | Bin 0 -> 3034 bytes .../src/main/resources/jd/merchantCert011.pfx | Bin 3042 -> 0 bytes 7 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 bd-third/src/main/resources/jd/bak.txt create mode 100644 bd-third/src/main/resources/jd/merchantCert004.pfx create mode 100644 bd-third/src/main/resources/jd/merchantCert005.pfx create mode 100644 bd-third/src/main/resources/jd/merchantCert006.pfx delete mode 100644 bd-third/src/main/resources/jd/merchantCert011.pfx diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 56c36fa5..5a06e8a1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -725,8 +725,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { ) { // 计算奖金,通过mq分发消息,异步处理 saOrderExt.setCancelBool(Boolean.FALSE); - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 98f77dd8..a61166b8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -782,8 +782,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl try { rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 @@ -879,8 +879,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl throw new ServiceException("保存会员失败!!!"); } try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { @@ -992,8 +992,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl } try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } catch (Exception e) { e.printStackTrace(); } @@ -2349,8 +2349,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); diff --git a/bd-third/src/main/resources/jd/bak.txt b/bd-third/src/main/resources/jd/bak.txt new file mode 100644 index 00000000..d930d8ab --- /dev/null +++ b/bd-third/src/main/resources/jd/bak.txt @@ -0,0 +1,6 @@ + +根据文档浏览器导出证书: +merchantCert.pfx + +DEMO中的公钥证书: +npp_11_API2_pro.cer diff --git a/bd-third/src/main/resources/jd/merchantCert004.pfx b/bd-third/src/main/resources/jd/merchantCert004.pfx new file mode 100644 index 0000000000000000000000000000000000000000..a0dd491340d9c67cda5b4c5f82499593c231e2bc GIT binary patch literal 3042 zcmcImc|25m8$UC1?E6{?O}R$a&Y68s8hf%8S(D4yD5^b(Z ztEHq!by1CpNGVB#-lKcpZtv&w{`3Cve$MCleV*t0tiRuR&htAEM`{R-!ay9U0#OOQ zWZUFf8I%}`$C1haIZ`PId>G=0%>Rc>Cq)1wgLLf&W7j%H zo?a#EKFTPwDGkc690>~Esns>~HqoG;5G-+G_RDzWysm-hjgzx65lQ5OvA$C_XqAgn z`P}C5X!`DV5(YagdZmSG<(slawSUFuRQG*2_+ZNoWjC^Q#Cq_Sa-fp{D4K` z>O$L{ExBf&uJ~bY-%M)iwH8%r72l@gw9W7Skn8+XMrbL6|`5~f^_P}67jzQ^VGyYb*hl#3tN@ylYZ_=%^+KWVR;xEtwE zr|M~U+4D}R>z+Lwhs)m)zGBzdYQb%d~gt z4$Zw31(=FlAA1-P%9WdwQ{;7!iyy8g54>J*YhCC2&M#-A-Br(iNpo_H z^qNV~jE}mf?~WXPk4*V0(9|gg9-v*n#wp`cntcKUCvtCGFcnk*V{DUZM{ z_Bmedbi&7dJMB9x<;lg(uvx$oMLXnbu?uL3!;P;zFJsew@Qi^L?{OdKs9UKm*Lp%H z&}rlvcla^dgrGOxlTsri{t@-Q$#>RF`_9nFnHO)rjMG2!9}M`hJytS)D@BC zZl@bFI#wHBUrqJd@7loy@YE9LzVm6@jPQQFr*z3aQyEsR7 z?m8z%%ZroyR2bVGSRJ&U_To`hwo&4Im+EkdUBRvD#*?ic@f`tE+grN#73n3fy!BY> zYI^*t8@KT4ockK?o)P68`Ldl03nlu_WNg_9Kk-z4sEt}}f^s%Hp&-eY0%Q~vUJCnt z&mb{ZaC3OCScB6Gi_2dhZKsnp@1DeB@7}z>m*6%*rD^r}&*U|44wU7~4w!2D z_L{BwR^XmR_Ae#IrDo1I{Ys|5^0p1P{b~KR>A9AZ5THRmq7wR| zC=kV=D4<|xO-H~12t`6h0TIA{go1!*01LPv>oO7!1S66K!ZU$L1dBlAD8LWlL%w@q z0q5^_v4|9agpWc-Jo`uG%NK)46f*t85jYH?pr5Bd22pN8K;s{?UqW@+K@V}jA^1Av zW{~7z&?q!o*+G4%{Mlkn!P*|uA4@kJ?Ndh#oIz2MPLJkZ5Y}W1PbLe~ProiY_I*uz!_5{ZRSUB& z!s{UHva6KzDm%+aKc*2QVlUPukP#CV8qLI71cpZkM!_Z!ZP^ARjsIW6ThJlR6*71d zM1cqpi9{k$ybzK6lL)bsVI@f6uNox7qOeE-k$&M!SQ?W2Yfl(EOH0@f^8Kp>kH1Se zn)mwDCE@QCZ@9^$xuv6Nd|^xZXl2IhqJQ?bo)HuXlL$mS6-fv)0s;bH5`_v80~icH zM52*MegQO?NC^zW6Ue#{2et0!b4G~(7!FDfKyXPk2ZaLezNIkz(p}g1Gy1ivR$2^q z%ow>?xdh|NYi&)g&ko(}cAS!Mn_OE{!4gt(U!I$jTEQr3o4{J5j>{3%4uzLbb$H&Z zq5N5zu{e37IL30U@|EF|nlkHn>&b2D2CqVFxQ-59TCX2YIDhR5!+-jG>{(;srWS7P zZ;^fmTDMQL!l+eZPE~1whVZ!~(1ExJ;{8b zsrkG_^W+iNH*Oh4c%ySii5i03iaX&(ZNkTsBcF|;E3I**-_%s%q}$cEb=ywR3!VSzLc1-6C=bc#6)!4$d`jf$sP z(9KC!L>j@8Or=>_z;vW~Xw7nQTHs1Zm8JYXa~}90&ZT}aVm(PaGbCa1>hL_Iv1}j< zs)EX?#RI&^N1qdTwF)TTLweJ^U=zyEZHRpCNE@O6!wSVsH;UzzcO1p`KO!h_1@%R8 z=QAze-$M@%wxp<#9e1Vs98cVF_d`zT(o^=HDY?@5Mb5sn1)UwiYK73fM0g{9TUoNPUOgPAoO-kLfL5!091d64u$gnB?O}Y&+~vG|qaC7F-v&#o6ek8i z%c{^GR?f4n-Z$^J)UAEyy?ZRtoxQO4B6uz}0PBWHw literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert005.pfx b/bd-third/src/main/resources/jd/merchantCert005.pfx new file mode 100644 index 0000000000000000000000000000000000000000..084c88bac37ea0e749fa953ce60f12e52646d3e8 GIT binary patch literal 3042 zcmcImdpJ~E8{adt5i`aKqvSSpltZ$&x#!Zym^qT92ssFY5W^YwPRR_$k;_mbxs6N5 z2)T5V=pss;QXP?Qd}xwFB_$-^p3eC?eb4j#^ZoHX>sfofzu$V_^}cKEcfV^x0_-3f zg@FXvWAci|LVMw?GD-m@7GN_#0X7YxlOciJ{C`Zzy#fVtV+cKp^dWidUsgCJ6k03* zKSKg=9@3Uq`ZtX%jt7@*Ko7m)Z-h|-d$J_P@$I__XSM}reJ2g)%G-EX)YY#3jS$p2`L+s3{?mGh>Svn9VAd)z}i*)V`VH3Y); zKY4w$yD;u^~B{w?{#_eSvz%s$4mnEkoYpI zPx@1^fsTpts-K2v;6n*03t7)~Ja zCHu1}8TehF;*D=<{xP;AN9?z(;iJp(?mWloQ+K^+i77L<^5MY5tl6h~?bbewoL1d^ zC-Fp*Q}jqy(uk!v`gg4vR7->AVrt_4DF$R0uNJ(*tBF2(NV*B@xny(U0MNUky0|#_ z;(>RM*T&VgeK&zkF2TAR0$0t@tZF#fTdV<9% z83!60jN!ChcWi#$tUQzU^zmY8&(uOs+{o@e@9>8;;rT^Pj>4$|HTvYniANb~d2ZC| z@&PG%+aqnaX?FXe$)`@P?;DFuuW4SnZ`{&JZWQ#MeW{HaCcfO!k2;yQckLlFLlR`? zvOU_gn4&N^KuFV`Soc1vjny<^sI#5@n;!mQcWVd_3>n zCe;2ouX^>ZZkSsmbjUHxFxuL+zIpE($}zL_0?(bfbD}Bz<*T!dp{p)V#O{*oD?BfE zNScU`ZJ(7HN)hgf=J?_BV?NtV)n zW6?@8G{Gxt;KDn0^=JwDa*bnfXZ!gP_pqXVZlclqGw+G5PurGWzZ%oJEC^&1*`^Y~ zO7-xLlQEz2Td5*Z(-Zr3>?v)@_`SIGEHBTN+gmrgcO7XgD=d@yHpNcVyeu1d|niXzF=cb=2I71L%Cto=|h0zfLn}h>Xh~x**02slh00q(X2Lg~5h}iid zEePSMkhi>|i98BK324hvu(PfcumuP~jCnu=5QX$0AQ~V7F33~HaDm+jVj^+^5Q%UR z2<9P6MFPQJtcZZ~7rj^n$sF;J63_n{x$I();~~|bi_oD+5Bj$HV~|N}gxv78_A6@0 z42%(jH3)Bj+zd)$3>t+-tFv)jla+3I;-?)ei`ny)+I3Nz6CmZUj!;-R0OHrcSV&PG zvjdb@Lo=OV21JtqB^)HpEO^#hC#|ZHO874tjy=0nK9+YzTAw35B9tC1e_ovR<(WQS zm?KTClZskk1BfUy#o{y_>>~XV)^j4li7tVh7+y$p0+AWWjSl3&77#TK;DYN})U=5V_ z4v_;m96tmxC=|Z{227>}2APwnKR^PM!MEp(k^?XTlnQ|GN@xKJ1-yRC&UNN3c?wBy zu2^zUa;vTgdQ+|#-JXdNmVSP_lGY`)zE#{48>Cvio@`Qa^pQ79*MCMwPvTjB;(qZm zG<$Q5X#@VHcvd)0YWBLmYTDcQP<-~rXFggj)*4$YN5ZD(M(fHG1UPlCMTcLyi?Ub0 zk8us^y*Y4C-)s=VNTTans4>Tb4_ihRwDEitRH}~XA69I$IIHCQouq_=Z|rwXycM>l z&mo&X{<{8nm#Fer(NZmW7%Y<`wNEA9=tA)ciAlu56T(Y)mD8+Ui=@l>7Exw7CU2V` zI(xzjavetKz7@UDTQmFm4qc2@MNJWP^U|Z&A9nn(_Gni+`eyM0+b(eBHmxJ zPe%p>sL3-T0uh~0#)!O_u?8_diCV>y27L!x;xQL-Fc z&*7Ry#`uSYaLm4N9A4N)ri~Si#Ue2vTLzs$VzFrq2AxhKQ`mNN7TXp{BG{a4$7I8F ziY>%1lKIgC`G+BX4#dwA^AC#oX+nO=|HIpwsNGifHcTdxJT#aMk!)zTFa*6L?u79+{?kd90N z4{Ctw5jM7`(T^kR(I<>XLcNpsom>@H^KBX;pF5I<$jNJ63JS|z<$kR2>5bDaC|zD> z)8$*ZGy0420=@5*_>!$|_ZH*Je@wO&vp%s6@{0ViVL8n)Ez7!Ip2ofO*bgxrZisjx zC*$u@CMLr73}`RxPph}c7Wud+KcxOn#}2)SDEIY^_#-MII#apz%J_c$Yd80f51e3n zd$jo^4m+ECp1GsX{^XqEY%z8Ej4n9m>>|Du%^Tdreyv>*tJBn&ZvLcQ)8c`1UGY!A zcX_kr0axjUZNARkH(lztd^}qpN%kA0eNtNZT-Iz`v8blcs!Zs%zRrAjJBJGDPAODe zS$X~F&#bCeS0i_W^90pEISt6GACtnpaDTZdYP&@B4NUm&mxl$U2Pw$Qncy+#RiJva x`Q(~^YGjtgSy+BtI^r3;%kP;QsJ_X0HSAC@`GFTvBZ`l|G5rMKkz{|{{{k_=@<{*y literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert006.pfx b/bd-third/src/main/resources/jd/merchantCert006.pfx new file mode 100644 index 0000000000000000000000000000000000000000..7b30c6af65a087533cea1ca80aa2757f1adac661 GIT binary patch literal 3034 zcmcImdpJ~U7vD3pjm)?lmn69i&T&cDd(4;_A364lr*Z0j~9S^d@@4shxk&j|3fA96y!^dA@ndZ9$@i*d&%NZ z=rTSy2l2tzkOmg_ZyH%#9$e9&Fh}(`*foGgOWy(c;2kHzsBCSDl5ALB{_y(aK##Uf zHv9=b&tY}a8}n0Q8r>ZT-iO#$~#z(+}5#8RKIQbp}tOoIv#i9 z7-p4rOdPXkd?+Vx-^9$(hpf_}#0qe_^+T>7J&uvkPK&;5t7p+zK(y_*4!>=Y-c1~j zV_d%mMn~>{p;j9(ucWWiylpaY^^S!pjNR){D8^I4FnMp&^oFP_EcJF#(y#qbnoNG? zJl%YNFkrN|>I!$vP=Mbmh)7`TF>5d-?Jg?i`-Z+Zzmj-A>S*CdiRy3!uV>OG>%G)l zMNRF3y`8L~$BR+sUiV_E_H$N23JHyYKr)uT9Q0#;qfQA zpN9S2OxusO)h~9m&||=)-B)fp=yBMWgd+6On?!eCphv5#KdGDJ|V(p@ zli5^ny~URB>du+4{`{TIg78xT9)?{yJI}WhZ|!m`j#c{*svj#oA=*xq7d2@-*fO8` zG_m{k&BB)c5YuPu<9$i zH98@b&@a84XT6X6j{Dp>&C+$X$xOXyYyPMp4jtc=WD4{sYH6Qc@%*K8Sy2$n)+_$% z8rLqD=f2JZ>LoAiYet?~%J-z%5}d9!x9|PQ%x=ecyWC0X-a)q~?(~@>8`XnZs%-z(=e^Yy3_SPjT`stE$uv+Fx`~Z>$S@0#~rrrmYZ2dE$!CpNJ^Jx z-P8|WT`0J2QSU*^t}>qOGW8=J+n{@h`nnQxdC>8EL$p)xFBN&SNoAO#O*Vt_Z@8D7 z?Zuhfa(6prjb^lK1ks)p&fz9wUBfR_9jrM|h_xMi)z@-=z3PnA!w{2wvNH!6l9>ey zrwes=xVIi9&~B(PYO~$(HM-pGg^Xzeweif|y3G}%W4@=#P+rqqlNcn4 zas;SA0KfqPk(rI$Nq`9e0W<_r5Q+4ehY@L6OGYjezygsi03xEd0Q?b_gxFJoAjk(R zV~jpk!Kor7p5gd&y7X|G3 z>_q@rpY8S`C=f|28fopkubD3&2vX5V*N;T#P-Fys+x0Ps(gqmnxtt_*`lq0uUdL3bncsssJFeL!CKqkikfDJv~V?rR_vUJ8JC)i55C!D4oRSYu={` z5Ct-a%!x3O}I!pe~1mmF}R(F7!cDF4U=SQf&4*%QWz!GQgt-Ct7h_&bF| zg_2{f;xkoKMZ$@E(L_eIxVd8DY?h?tpS>BfgE%nRoJ6D|0bzDvU?5DUP$5zvo9&Mv z8ky`LNP|ffP7u-D!U*D{biaMhC@BELM=1aZk3;iODB!~Ff@|(p=4=LR?9)YBa~pM8 zepctG#7nZS>y(Oqpzn43wam-SmcO1j8LvWHG#r=fqn;3LB4ye?yd?1zQuVZlz3dA z6IN4=dcg2jbYCw$YS&cR)Rc2zZ>a)w(RkOE8EK$kOZ)A$3I{vOT?+?Gu@$AOzh}!z z2N+FXJ@W`+jU}z^IPo@21$MWVD(TRSq^eEyP(GURP zkvF5M0D>4acpl;`15?l!@`gOiJj&dK+xNuAMp>GfarUwOO+#X%<6@R;%#O;J%(0`xH_+{@DNLq04YH?EY39t06dH|6H7AibGN{ar_DB&S<-?$FgsEhEh*!KE zM;qkjLA)G@mtDroEaRmMd8z-8X!@F95SEim2~QQyyfT9+g=?E?9sxmks1WRZ!)9 zi4S>wowA?jhmz4$huOAr2mQux%Mkh8kupR9x_>QQt1BNr`nK?s0hwQuYbk%>z8y}h z{qA4von0Ao?@u}^y3;HlKQOp8Vdd-+pVvVeD|tPI^PD=qI2sW!lU0G5Kl6LiPg|1e zVW?;Ghb~nIweABUQ(c{oLBSEg*@}jB$#3a?rh=op)0WcHKiJrir+J4ij31d@3wQU3 zL!a%cE6XU1yFJQ5bF*fF0w>>5!=)ZEoi%MK2&wo%mV?=(sd!+Eb}JzyJ29lWKCZS^ zB7I>_<%O5g``M3sl8Vw7<4#r@&Y-LWXQ7MAH+>wNZl$fl)*HaA+}fL*ZV4^Ru}#hk zPL>ZEl=7bml29h@!Nx0R4h_8t{o^n>U;$qF-w%)VkTxWZl`@vcpw&T@po)*IyyIXS py)#2q;c?19gpH>LsNyI(vxlqUX6tby0Q+DAj1x0wQ9;a30v literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert011.pfx b/bd-third/src/main/resources/jd/merchantCert011.pfx deleted file mode 100644 index 76e35682e9c8c1682d5a25a776f2f8b3ae2f3e8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3042 zcmcImc~}$I7N1Fmu!N-SDj3WYLBIktAt4EBDuy7N6j2coga8R(*%|_Zh>);V7NG*7 z1~m#=P(ct#-2ep_5Y(cASQHBqP~6x=W$ncFS>N})f8HPOyWhRv`Tfp4%bhuM?!aPv zF9yWIV*Fv8s(HF&`Ue823`)iLEJ%#cKDy3JDSZN5QpQG~`4*$26x*CX) zilI4J3{Am{accjjQRhTR<(c{ZA4axS-@{;(e}lwO_s>o@OzNv$iR?3it5``&O?lUy z+@x&Xxzm-w)wvblK3puU7YJze-l_OpZp^+(|ir z1Kr4@t^xlF*~QSdF1(BGs4~FPWxK*Gcs+f*>XzQwOgd4A9v#DDb*6rWxOHz()OLc@7wh% zG*5Dj0~TL4@*$;;WtNM1)vPtFZx-&qaxMRaX+5VEhtn~xvY(VBH(8Dyjh7`~aV>nG zmD=Xr$KqcNAXUo4Z7xPo7~1r>yBwb(_->21Y~ov9nvhF-BUqhbPWlCQ_`%PZ#L?Xh>zS5a&l_>3ytO=)#Njm$8_VjY2KG<73`|t z>*@38HtE;+&e?kZPm4JZ=*3NCt~w*Um2bHIv)vJ9C&%$s$NaK%8gkm}IyI&p1y6#{ zowK>*Vi;DT(aIx4SADfNt+qpuVfrjgYxcE<_CTb0O_f!fH9(6yO-mTNwZEzA;g|=( z|J}18{U9D@w7;T%^(Twr_E4hA6^i?4e$MSf$&H_cJ>k^h*RNZuf9)Ai?=iv08f<@% z>!7DaxlXnTZng0H6nq|D)RbbNjQmj)<{djEDolg><|rd8Fi^je=>UPC?r=`r_Bio8>k0J+bkYM?ss&taZ}~ zMve{Lg*mq#tSDXM08azsHK)zz|zw$vG$_{H9s{yv%WNdJzMxP2#Fs`QBk zyxP1aiwc|rJHOvLwJ~H$T~DKjAUOsZ9V22-HE_~jEnU`D7=BK)InHC*CZ^6p6O5#?2Sa1Rn-GQ~gv`bZ81P4JN008io ze@Gp~+0YT-0(`&*U6}w3(11X|0+khmhDuZbK^cXl&@w(tFc5%RP|?9h2N&R>IvzlW zeQ~NQa3BPV>6#$oZs-QA2SQO}0T2m9qmvH^0Wz==T@_3O5R4)=D#rs+C>M!h0qQIY z2>EP92HZdIi$zfo>Ry1hc+r>46&Hh&0PX$}D7^!n{I9z|7FDuP()LU5SJhJ(n4<qGgH@;eukP7)u;Bs% zg$C1MDom#!)^u+a+I$6JQ97axYyOpk+71C3O(2RJ5s#?DYJZ&x>uhh2aACi{Qtn?5{02aIHH;Vpfxc6u`x<#kQKr_bB5IC} zxJhkU3rsc?5p8`vR;6=YBAqXcrL{yocC-1BTGdPPa4pM?LZAW97~t{!!qgUaC0 z!@51g^s7-1E8D_cs#6>>Ha(IFZg_1-Mq_IIMTdzEPYA(j?zum`=$~wrIfqLVp0PV5 zOoAWnx?RWeO>|4$z&ggQcwz0uD+N39NV@z|Q%(9{04x!MT=a?fey%=}HiUrz z7>~Xg(l-!<#XwasPXR2U?XVB*E%lOmrf&)n3ZrbTta!13T+2|QASPN-W0rvtR#7nl zVWELmpSeIm*mrEZ)pQQWnhCFEGMLsJ2Rf6*!K)qZ*le_T=!gSsZAV{=zzE%r!(>pHY`e8I z4wY$bZ^K}6*oYmPJ-kGboDsAT)=SoTw{Hp{kBBf9&X7A@2HeLkTh=j$>=KXaRgJ< zgPPoo37Un0rGME$y~3MMZGKDgZ(EmSr}nPv3g(mM@_6^H%Z4RTeBl>F?8kHn#d9Yve9=FWI4={V`A&>~Jycg)4eiq-C2nwi87Z0;HEOiKt4 zA*IF&vdwPdhP};a2U&Hu*Ow~aPW0nyzBP<`R2$iIs>|8{`_qzOpUa&^KtNvp;YfE; ztop=0*OsS)Ckn1mknHY)55@Jdvp%|s9f4ja3<8yMR{I>#GQtX(cP<(wb&rro=HwlRL>iGkv8`%kUs;$r{+ From 85b0b7cd21b2ae26374519005e707c26f37abbcf Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 18 Aug 2025 11:28:56 +0800 Subject: [PATCH 131/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E5=90=8D=E7=A7=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/ESysName.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 709b4e5c..85c3d8a1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,13 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 新零售 + * 众康系统 */ - BF("bf", "新零售BF"), - /** - * 新零售店铺 - */ - BL("bl", "新零售店铺BL"), + ZK("zk", "众康系统"), ; From d71bdc2e82241d0003e73991969c4d845b157d13 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 18 Aug 2025 14:43:20 +0800 Subject: [PATCH 132/362] =?UTF-8?q?##=20Feat=20-=20=E4=BC=97=E5=BA=B7?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=8E=AF=E5=A2=83-=E5=91=BD=E5=90=8D?= =?UTF-8?q?=E7=A9=BA=E9=97=B4ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 77b9fdf4..588d21e8 100644 --- a/pom.xml +++ b/pom.xml @@ -463,7 +463,7 @@ 172.26.201.166:8848 - 487f6929-777e-44b7-a9f9-479c6d8050e4 + f3d9c031-a0d3-46f2-b3cc-ffc51a528c67 DEFAULT_GROUP From 6b0d3e18efc200804bc7562404465b9558caa331 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 15 Aug 2025 17:44:54 +0800 Subject: [PATCH 133/362] =?UTF-8?q?##=20=E6=9C=AC=E5=9C=B0=E3=80=81?= =?UTF-8?q?=E6=B5=8B=E8=AF=95nacos=E5=92=8Cjob=E9=85=8D=E7=BD=AE=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bd-third/src/main/resources/application-test.properties | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-third/src/main/resources/application-test.properties b/bd-third/src/main/resources/application-test.properties index 3477335d..d3bd5ced 100644 --- a/bd-third/src/main/resources/application-test.properties +++ b/bd-third/src/main/resources/application-test.properties @@ -10,7 +10,7 @@ logging.config=classpath:logback.xml ### 执行器通讯TOKEN [选填]:非空时启用; xxl.job.accessToken=base_token ### 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册 -xxl.job.executor.appname=xxl-job-retail +xxl.job.executor.appname=xxl-job-zk ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。 xxl.job.executor.address= ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务"; diff --git a/pom.xml b/pom.xml index 588d21e8..78e3a6b6 100644 --- a/pom.xml +++ b/pom.xml @@ -444,7 +444,7 @@ 127.0.0.1:8848 - 4d03b742-f273-4306-87c7-7dbd6000fd7c + 8e88a6b5-94e6-4711-8a01-c5ff87ac5662 DEFAULT_GROUP From 2a9fa1fad803a863632183acb81dec9a0cb02b1b Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 18 Aug 2025 11:27:15 +0800 Subject: [PATCH 134/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E6=94=AF=E4=BB=98=E4=BD=BF=E7=94=A8BD=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=EF=BC=9B=E5=8E=BB=E6=8E=89=E7=A7=92=E7=BB=93=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 4 ++-- .../order/service/impl/SaOrderServiceImpl.java | 16 ++++++++-------- bd-third/src/main/resources/jd/bak.txt | 6 ++++++ .../src/main/resources/jd/merchantCert004.pfx | Bin 0 -> 3042 bytes .../src/main/resources/jd/merchantCert005.pfx | Bin 0 -> 3042 bytes .../src/main/resources/jd/merchantCert006.pfx | Bin 0 -> 3034 bytes .../src/main/resources/jd/merchantCert011.pfx | Bin 3042 -> 0 bytes 7 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 bd-third/src/main/resources/jd/bak.txt create mode 100644 bd-third/src/main/resources/jd/merchantCert004.pfx create mode 100644 bd-third/src/main/resources/jd/merchantCert005.pfx create mode 100644 bd-third/src/main/resources/jd/merchantCert006.pfx delete mode 100644 bd-third/src/main/resources/jd/merchantCert011.pfx diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 56c36fa5..5a06e8a1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -725,8 +725,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { ) { // 计算奖金,通过mq分发消息,异步处理 saOrderExt.setCancelBool(Boolean.FALSE); - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 98f77dd8..a61166b8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -782,8 +782,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl try { rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 @@ -879,8 +879,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl throw new ServiceException("保存会员失败!!!"); } try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { @@ -992,8 +992,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl } try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// // 推送秒结数据 +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } catch (Exception e) { e.printStackTrace(); } @@ -2349,8 +2349,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); +// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); +// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); diff --git a/bd-third/src/main/resources/jd/bak.txt b/bd-third/src/main/resources/jd/bak.txt new file mode 100644 index 00000000..d930d8ab --- /dev/null +++ b/bd-third/src/main/resources/jd/bak.txt @@ -0,0 +1,6 @@ + +根据文档浏览器导出证书: +merchantCert.pfx + +DEMO中的公钥证书: +npp_11_API2_pro.cer diff --git a/bd-third/src/main/resources/jd/merchantCert004.pfx b/bd-third/src/main/resources/jd/merchantCert004.pfx new file mode 100644 index 0000000000000000000000000000000000000000..a0dd491340d9c67cda5b4c5f82499593c231e2bc GIT binary patch literal 3042 zcmcImc|25m8$UC1?E6{?O}R$a&Y68s8hf%8S(D4yD5^b(Z ztEHq!by1CpNGVB#-lKcpZtv&w{`3Cve$MCleV*t0tiRuR&htAEM`{R-!ay9U0#OOQ zWZUFf8I%}`$C1haIZ`PId>G=0%>Rc>Cq)1wgLLf&W7j%H zo?a#EKFTPwDGkc690>~Esns>~HqoG;5G-+G_RDzWysm-hjgzx65lQ5OvA$C_XqAgn z`P}C5X!`DV5(YagdZmSG<(slawSUFuRQG*2_+ZNoWjC^Q#Cq_Sa-fp{D4K` z>O$L{ExBf&uJ~bY-%M)iwH8%r72l@gw9W7Skn8+XMrbL6|`5~f^_P}67jzQ^VGyYb*hl#3tN@ylYZ_=%^+KWVR;xEtwE zr|M~U+4D}R>z+Lwhs)m)zGBzdYQb%d~gt z4$Zw31(=FlAA1-P%9WdwQ{;7!iyy8g54>J*YhCC2&M#-A-Br(iNpo_H z^qNV~jE}mf?~WXPk4*V0(9|gg9-v*n#wp`cntcKUCvtCGFcnk*V{DUZM{ z_Bmedbi&7dJMB9x<;lg(uvx$oMLXnbu?uL3!;P;zFJsew@Qi^L?{OdKs9UKm*Lp%H z&}rlvcla^dgrGOxlTsri{t@-Q$#>RF`_9nFnHO)rjMG2!9}M`hJytS)D@BC zZl@bFI#wHBUrqJd@7loy@YE9LzVm6@jPQQFr*z3aQyEsR7 z?m8z%%ZroyR2bVGSRJ&U_To`hwo&4Im+EkdUBRvD#*?ic@f`tE+grN#73n3fy!BY> zYI^*t8@KT4ockK?o)P68`Ldl03nlu_WNg_9Kk-z4sEt}}f^s%Hp&-eY0%Q~vUJCnt z&mb{ZaC3OCScB6Gi_2dhZKsnp@1DeB@7}z>m*6%*rD^r}&*U|44wU7~4w!2D z_L{BwR^XmR_Ae#IrDo1I{Ys|5^0p1P{b~KR>A9AZ5THRmq7wR| zC=kV=D4<|xO-H~12t`6h0TIA{go1!*01LPv>oO7!1S66K!ZU$L1dBlAD8LWlL%w@q z0q5^_v4|9agpWc-Jo`uG%NK)46f*t85jYH?pr5Bd22pN8K;s{?UqW@+K@V}jA^1Av zW{~7z&?q!o*+G4%{Mlkn!P*|uA4@kJ?Ndh#oIz2MPLJkZ5Y}W1PbLe~ProiY_I*uz!_5{ZRSUB& z!s{UHva6KzDm%+aKc*2QVlUPukP#CV8qLI71cpZkM!_Z!ZP^ARjsIW6ThJlR6*71d zM1cqpi9{k$ybzK6lL)bsVI@f6uNox7qOeE-k$&M!SQ?W2Yfl(EOH0@f^8Kp>kH1Se zn)mwDCE@QCZ@9^$xuv6Nd|^xZXl2IhqJQ?bo)HuXlL$mS6-fv)0s;bH5`_v80~icH zM52*MegQO?NC^zW6Ue#{2et0!b4G~(7!FDfKyXPk2ZaLezNIkz(p}g1Gy1ivR$2^q z%ow>?xdh|NYi&)g&ko(}cAS!Mn_OE{!4gt(U!I$jTEQr3o4{J5j>{3%4uzLbb$H&Z zq5N5zu{e37IL30U@|EF|nlkHn>&b2D2CqVFxQ-59TCX2YIDhR5!+-jG>{(;srWS7P zZ;^fmTDMQL!l+eZPE~1whVZ!~(1ExJ;{8b zsrkG_^W+iNH*Oh4c%ySii5i03iaX&(ZNkTsBcF|;E3I**-_%s%q}$cEb=ywR3!VSzLc1-6C=bc#6)!4$d`jf$sP z(9KC!L>j@8Or=>_z;vW~Xw7nQTHs1Zm8JYXa~}90&ZT}aVm(PaGbCa1>hL_Iv1}j< zs)EX?#RI&^N1qdTwF)TTLweJ^U=zyEZHRpCNE@O6!wSVsH;UzzcO1p`KO!h_1@%R8 z=QAze-$M@%wxp<#9e1Vs98cVF_d`zT(o^=HDY?@5Mb5sn1)UwiYK73fM0g{9TUoNPUOgPAoO-kLfL5!091d64u$gnB?O}Y&+~vG|qaC7F-v&#o6ek8i z%c{^GR?f4n-Z$^J)UAEyy?ZRtoxQO4B6uz}0PBWHw literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert005.pfx b/bd-third/src/main/resources/jd/merchantCert005.pfx new file mode 100644 index 0000000000000000000000000000000000000000..084c88bac37ea0e749fa953ce60f12e52646d3e8 GIT binary patch literal 3042 zcmcImdpJ~E8{adt5i`aKqvSSpltZ$&x#!Zym^qT92ssFY5W^YwPRR_$k;_mbxs6N5 z2)T5V=pss;QXP?Qd}xwFB_$-^p3eC?eb4j#^ZoHX>sfofzu$V_^}cKEcfV^x0_-3f zg@FXvWAci|LVMw?GD-m@7GN_#0X7YxlOciJ{C`Zzy#fVtV+cKp^dWidUsgCJ6k03* zKSKg=9@3Uq`ZtX%jt7@*Ko7m)Z-h|-d$J_P@$I__XSM}reJ2g)%G-EX)YY#3jS$p2`L+s3{?mGh>Svn9VAd)z}i*)V`VH3Y); zKY4w$yD;u^~B{w?{#_eSvz%s$4mnEkoYpI zPx@1^fsTpts-K2v;6n*03t7)~Ja zCHu1}8TehF;*D=<{xP;AN9?z(;iJp(?mWloQ+K^+i77L<^5MY5tl6h~?bbewoL1d^ zC-Fp*Q}jqy(uk!v`gg4vR7->AVrt_4DF$R0uNJ(*tBF2(NV*B@xny(U0MNUky0|#_ z;(>RM*T&VgeK&zkF2TAR0$0t@tZF#fTdV<9% z83!60jN!ChcWi#$tUQzU^zmY8&(uOs+{o@e@9>8;;rT^Pj>4$|HTvYniANb~d2ZC| z@&PG%+aqnaX?FXe$)`@P?;DFuuW4SnZ`{&JZWQ#MeW{HaCcfO!k2;yQckLlFLlR`? zvOU_gn4&N^KuFV`Soc1vjny<^sI#5@n;!mQcWVd_3>n zCe;2ouX^>ZZkSsmbjUHxFxuL+zIpE($}zL_0?(bfbD}Bz<*T!dp{p)V#O{*oD?BfE zNScU`ZJ(7HN)hgf=J?_BV?NtV)n zW6?@8G{Gxt;KDn0^=JwDa*bnfXZ!gP_pqXVZlclqGw+G5PurGWzZ%oJEC^&1*`^Y~ zO7-xLlQEz2Td5*Z(-Zr3>?v)@_`SIGEHBTN+gmrgcO7XgD=d@yHpNcVyeu1d|niXzF=cb=2I71L%Cto=|h0zfLn}h>Xh~x**02slh00q(X2Lg~5h}iid zEePSMkhi>|i98BK324hvu(PfcumuP~jCnu=5QX$0AQ~V7F33~HaDm+jVj^+^5Q%UR z2<9P6MFPQJtcZZ~7rj^n$sF;J63_n{x$I();~~|bi_oD+5Bj$HV~|N}gxv78_A6@0 z42%(jH3)Bj+zd)$3>t+-tFv)jla+3I;-?)ei`ny)+I3Nz6CmZUj!;-R0OHrcSV&PG zvjdb@Lo=OV21JtqB^)HpEO^#hC#|ZHO874tjy=0nK9+YzTAw35B9tC1e_ovR<(WQS zm?KTClZskk1BfUy#o{y_>>~XV)^j4li7tVh7+y$p0+AWWjSl3&77#TK;DYN})U=5V_ z4v_;m96tmxC=|Z{227>}2APwnKR^PM!MEp(k^?XTlnQ|GN@xKJ1-yRC&UNN3c?wBy zu2^zUa;vTgdQ+|#-JXdNmVSP_lGY`)zE#{48>Cvio@`Qa^pQ79*MCMwPvTjB;(qZm zG<$Q5X#@VHcvd)0YWBLmYTDcQP<-~rXFggj)*4$YN5ZD(M(fHG1UPlCMTcLyi?Ub0 zk8us^y*Y4C-)s=VNTTans4>Tb4_ihRwDEitRH}~XA69I$IIHCQouq_=Z|rwXycM>l z&mo&X{<{8nm#Fer(NZmW7%Y<`wNEA9=tA)ciAlu56T(Y)mD8+Ui=@l>7Exw7CU2V` zI(xzjavetKz7@UDTQmFm4qc2@MNJWP^U|Z&A9nn(_Gni+`eyM0+b(eBHmxJ zPe%p>sL3-T0uh~0#)!O_u?8_diCV>y27L!x;xQL-Fc z&*7Ry#`uSYaLm4N9A4N)ri~Si#Ue2vTLzs$VzFrq2AxhKQ`mNN7TXp{BG{a4$7I8F ziY>%1lKIgC`G+BX4#dwA^AC#oX+nO=|HIpwsNGifHcTdxJT#aMk!)zTFa*6L?u79+{?kd90N z4{Ctw5jM7`(T^kR(I<>XLcNpsom>@H^KBX;pF5I<$jNJ63JS|z<$kR2>5bDaC|zD> z)8$*ZGy0420=@5*_>!$|_ZH*Je@wO&vp%s6@{0ViVL8n)Ez7!Ip2ofO*bgxrZisjx zC*$u@CMLr73}`RxPph}c7Wud+KcxOn#}2)SDEIY^_#-MII#apz%J_c$Yd80f51e3n zd$jo^4m+ECp1GsX{^XqEY%z8Ej4n9m>>|Du%^Tdreyv>*tJBn&ZvLcQ)8c`1UGY!A zcX_kr0axjUZNARkH(lztd^}qpN%kA0eNtNZT-Iz`v8blcs!Zs%zRrAjJBJGDPAODe zS$X~F&#bCeS0i_W^90pEISt6GACtnpaDTZdYP&@B4NUm&mxl$U2Pw$Qncy+#RiJva x`Q(~^YGjtgSy+BtI^r3;%kP;QsJ_X0HSAC@`GFTvBZ`l|G5rMKkz{|{{{k_=@<{*y literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert006.pfx b/bd-third/src/main/resources/jd/merchantCert006.pfx new file mode 100644 index 0000000000000000000000000000000000000000..7b30c6af65a087533cea1ca80aa2757f1adac661 GIT binary patch literal 3034 zcmcImdpJ~U7vD3pjm)?lmn69i&T&cDd(4;_A364lr*Z0j~9S^d@@4shxk&j|3fA96y!^dA@ndZ9$@i*d&%NZ z=rTSy2l2tzkOmg_ZyH%#9$e9&Fh}(`*foGgOWy(c;2kHzsBCSDl5ALB{_y(aK##Uf zHv9=b&tY}a8}n0Q8r>ZT-iO#$~#z(+}5#8RKIQbp}tOoIv#i9 z7-p4rOdPXkd?+Vx-^9$(hpf_}#0qe_^+T>7J&uvkPK&;5t7p+zK(y_*4!>=Y-c1~j zV_d%mMn~>{p;j9(ucWWiylpaY^^S!pjNR){D8^I4FnMp&^oFP_EcJF#(y#qbnoNG? zJl%YNFkrN|>I!$vP=Mbmh)7`TF>5d-?Jg?i`-Z+Zzmj-A>S*CdiRy3!uV>OG>%G)l zMNRF3y`8L~$BR+sUiV_E_H$N23JHyYKr)uT9Q0#;qfQA zpN9S2OxusO)h~9m&||=)-B)fp=yBMWgd+6On?!eCphv5#KdGDJ|V(p@ zli5^ny~URB>du+4{`{TIg78xT9)?{yJI}WhZ|!m`j#c{*svj#oA=*xq7d2@-*fO8` zG_m{k&BB)c5YuPu<9$i zH98@b&@a84XT6X6j{Dp>&C+$X$xOXyYyPMp4jtc=WD4{sYH6Qc@%*K8Sy2$n)+_$% z8rLqD=f2JZ>LoAiYet?~%J-z%5}d9!x9|PQ%x=ecyWC0X-a)q~?(~@>8`XnZs%-z(=e^Yy3_SPjT`stE$uv+Fx`~Z>$S@0#~rrrmYZ2dE$!CpNJ^Jx z-P8|WT`0J2QSU*^t}>qOGW8=J+n{@h`nnQxdC>8EL$p)xFBN&SNoAO#O*Vt_Z@8D7 z?Zuhfa(6prjb^lK1ks)p&fz9wUBfR_9jrM|h_xMi)z@-=z3PnA!w{2wvNH!6l9>ey zrwes=xVIi9&~B(PYO~$(HM-pGg^Xzeweif|y3G}%W4@=#P+rqqlNcn4 zas;SA0KfqPk(rI$Nq`9e0W<_r5Q+4ehY@L6OGYjezygsi03xEd0Q?b_gxFJoAjk(R zV~jpk!Kor7p5gd&y7X|G3 z>_q@rpY8S`C=f|28fopkubD3&2vX5V*N;T#P-Fys+x0Ps(gqmnxtt_*`lq0uUdL3bncsssJFeL!CKqkikfDJv~V?rR_vUJ8JC)i55C!D4oRSYu={` z5Ct-a%!x3O}I!pe~1mmF}R(F7!cDF4U=SQf&4*%QWz!GQgt-Ct7h_&bF| zg_2{f;xkoKMZ$@E(L_eIxVd8DY?h?tpS>BfgE%nRoJ6D|0bzDvU?5DUP$5zvo9&Mv z8ky`LNP|ffP7u-D!U*D{biaMhC@BELM=1aZk3;iODB!~Ff@|(p=4=LR?9)YBa~pM8 zepctG#7nZS>y(Oqpzn43wam-SmcO1j8LvWHG#r=fqn;3LB4ye?yd?1zQuVZlz3dA z6IN4=dcg2jbYCw$YS&cR)Rc2zZ>a)w(RkOE8EK$kOZ)A$3I{vOT?+?Gu@$AOzh}!z z2N+FXJ@W`+jU}z^IPo@21$MWVD(TRSq^eEyP(GURP zkvF5M0D>4acpl;`15?l!@`gOiJj&dK+xNuAMp>GfarUwOO+#X%<6@R;%#O;J%(0`xH_+{@DNLq04YH?EY39t06dH|6H7AibGN{ar_DB&S<-?$FgsEhEh*!KE zM;qkjLA)G@mtDroEaRmMd8z-8X!@F95SEim2~QQyyfT9+g=?E?9sxmks1WRZ!)9 zi4S>wowA?jhmz4$huOAr2mQux%Mkh8kupR9x_>QQt1BNr`nK?s0hwQuYbk%>z8y}h z{qA4von0Ao?@u}^y3;HlKQOp8Vdd-+pVvVeD|tPI^PD=qI2sW!lU0G5Kl6LiPg|1e zVW?;Ghb~nIweABUQ(c{oLBSEg*@}jB$#3a?rh=op)0WcHKiJrir+J4ij31d@3wQU3 zL!a%cE6XU1yFJQ5bF*fF0w>>5!=)ZEoi%MK2&wo%mV?=(sd!+Eb}JzyJ29lWKCZS^ zB7I>_<%O5g``M3sl8Vw7<4#r@&Y-LWXQ7MAH+>wNZl$fl)*HaA+}fL*ZV4^Ru}#hk zPL>ZEl=7bml29h@!Nx0R4h_8t{o^n>U;$qF-w%)VkTxWZl`@vcpw&T@po)*IyyIXS py)#2q;c?19gpH>LsNyI(vxlqUX6tby0Q+DAj1x0wQ9;a30v literal 0 HcmV?d00001 diff --git a/bd-third/src/main/resources/jd/merchantCert011.pfx b/bd-third/src/main/resources/jd/merchantCert011.pfx deleted file mode 100644 index 76e35682e9c8c1682d5a25a776f2f8b3ae2f3e8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3042 zcmcImc~}$I7N1Fmu!N-SDj3WYLBIktAt4EBDuy7N6j2coga8R(*%|_Zh>);V7NG*7 z1~m#=P(ct#-2ep_5Y(cASQHBqP~6x=W$ncFS>N})f8HPOyWhRv`Tfp4%bhuM?!aPv zF9yWIV*Fv8s(HF&`Ue823`)iLEJ%#cKDy3JDSZN5QpQG~`4*$26x*CX) zilI4J3{Am{accjjQRhTR<(c{ZA4axS-@{;(e}lwO_s>o@OzNv$iR?3it5``&O?lUy z+@x&Xxzm-w)wvblK3puU7YJze-l_OpZp^+(|ir z1Kr4@t^xlF*~QSdF1(BGs4~FPWxK*Gcs+f*>XzQwOgd4A9v#DDb*6rWxOHz()OLc@7wh% zG*5Dj0~TL4@*$;;WtNM1)vPtFZx-&qaxMRaX+5VEhtn~xvY(VBH(8Dyjh7`~aV>nG zmD=Xr$KqcNAXUo4Z7xPo7~1r>yBwb(_->21Y~ov9nvhF-BUqhbPWlCQ_`%PZ#L?Xh>zS5a&l_>3ytO=)#Njm$8_VjY2KG<73`|t z>*@38HtE;+&e?kZPm4JZ=*3NCt~w*Um2bHIv)vJ9C&%$s$NaK%8gkm}IyI&p1y6#{ zowK>*Vi;DT(aIx4SADfNt+qpuVfrjgYxcE<_CTb0O_f!fH9(6yO-mTNwZEzA;g|=( z|J}18{U9D@w7;T%^(Twr_E4hA6^i?4e$MSf$&H_cJ>k^h*RNZuf9)Ai?=iv08f<@% z>!7DaxlXnTZng0H6nq|D)RbbNjQmj)<{djEDolg><|rd8Fi^je=>UPC?r=`r_Bio8>k0J+bkYM?ss&taZ}~ zMve{Lg*mq#tSDXM08azsHK)zz|zw$vG$_{H9s{yv%WNdJzMxP2#Fs`QBk zyxP1aiwc|rJHOvLwJ~H$T~DKjAUOsZ9V22-HE_~jEnU`D7=BK)InHC*CZ^6p6O5#?2Sa1Rn-GQ~gv`bZ81P4JN008io ze@Gp~+0YT-0(`&*U6}w3(11X|0+khmhDuZbK^cXl&@w(tFc5%RP|?9h2N&R>IvzlW zeQ~NQa3BPV>6#$oZs-QA2SQO}0T2m9qmvH^0Wz==T@_3O5R4)=D#rs+C>M!h0qQIY z2>EP92HZdIi$zfo>Ry1hc+r>46&Hh&0PX$}D7^!n{I9z|7FDuP()LU5SJhJ(n4<qGgH@;eukP7)u;Bs% zg$C1MDom#!)^u+a+I$6JQ97axYyOpk+71C3O(2RJ5s#?DYJZ&x>uhh2aACi{Qtn?5{02aIHH;Vpfxc6u`x<#kQKr_bB5IC} zxJhkU3rsc?5p8`vR;6=YBAqXcrL{yocC-1BTGdPPa4pM?LZAW97~t{!!qgUaC0 z!@51g^s7-1E8D_cs#6>>Ha(IFZg_1-Mq_IIMTdzEPYA(j?zum`=$~wrIfqLVp0PV5 zOoAWnx?RWeO>|4$z&ggQcwz0uD+N39NV@z|Q%(9{04x!MT=a?fey%=}HiUrz z7>~Xg(l-!<#XwasPXR2U?XVB*E%lOmrf&)n3ZrbTta!13T+2|QASPN-W0rvtR#7nl zVWELmpSeIm*mrEZ)pQQWnhCFEGMLsJ2Rf6*!K)qZ*le_T=!gSsZAV{=zzE%r!(>pHY`e8I z4wY$bZ^K}6*oYmPJ-kGboDsAT)=SoTw{Hp{kBBf9&X7A@2HeLkTh=j$>=KXaRgJ< zgPPoo37Un0rGME$y~3MMZGKDgZ(EmSr}nPv3g(mM@_6^H%Z4RTeBl>F?8kHn#d9Yve9=FWI4={V`A&>~Jycg)4eiq-C2nwi87Z0;HEOiKt4 zA*IF&vdwPdhP};a2U&Hu*Ow~aPW0nyzBP<`R2$iIs>|8{`_qzOpUa&^KtNvp;YfE; ztop=0*OsS)Ckn1mknHY)55@Jdvp%|s9f4ja3<8yMR{I>#GQtX(cP<(wb&rro=HwlRL>iGkv8`%kUs;$r{+ From e3c7beaaaa89584675ee6707aa9b5760b6455659 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 18 Aug 2025 11:28:56 +0800 Subject: [PATCH 135/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E5=90=8D=E7=A7=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/ESysName.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 709b4e5c..85c3d8a1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,13 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 新零售 + * 众康系统 */ - BF("bf", "新零售BF"), - /** - * 新零售店铺 - */ - BL("bl", "新零售店铺BL"), + ZK("zk", "众康系统"), ; From 86f29b3278ddf0747b28d00613cfe57cfb236243 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 11:00:11 +0800 Subject: [PATCH 136/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E9=83=A8=E5=88=86=E4=B8=8D=E9=9C=80=E8=A6=81=E5=86=85?= =?UTF-8?q?=E5=AE=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CuMemberBonusController.java | 2 +- .../impl/CuMemberBonusServiceImpl.java | 37 ++------ .../impl/CuMemberAssessServiceImpl.java | 3 - .../api/ApiCuMemberAchieveDisController.java | 2 - .../api/ApiCuMemberAssessController.java | 24 ++--- .../WaresSalesVolumeController.java | 38 +++----- .../report/report/vo/WaresSalesVolume.java | 2 +- .../controller/api/ApiOrderController.java | 8 +- .../api/ApiOthSaOrderController.java | 3 +- .../manager/SaOrderChargeLogController.java | 8 +- .../order/service/impl/SaOrderHandle.java | 3 +- .../service/impl/SaOrderServiceImpl.java | 19 +--- .../controller/api/ApiBdWaresController.java | 18 +--- .../controller/manage/BdWaresController.java | 4 +- .../impl/BdWaresSpecsSkuServiceImpl.java | 6 +- .../BdMemberSpecialCurrencyController.java | 10 +- .../enums/controller/EnumsController.java | 14 --- .../enums/controller/EnumsInitController.java | 10 -- .../common/core/constant/SysConstants.java | 8 +- .../com/hzs/common/core/enums/EOrderType.java | 93 +++++-------------- .../hzs/common/core/enums/ESpecialArea.java | 72 ++++---------- .../com/hzs/common/core/enums/ETradeType.java | 22 ++--- 22 files changed, 102 insertions(+), 304 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java index 7694c77c..0b5f95a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java @@ -220,7 +220,7 @@ public class CuMemberBonusController extends BaseController { // 获取需要翻译的枚举翻译 Map transactionLongMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD); for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) { - memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getEnumLabelByValue(memberBonusDetailSerVO.getOrderType())); + memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getLabelByValue(memberBonusDetailSerVO.getOrderType())); memberBonusDetailSerVO.setIncomeStatusVal(EBonusIncomeStatus.getEnumLabelByValue(memberBonusDetailSerVO.getIncomeStatus())); if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkSettleGrade())) { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 71bfba83..72212199 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -34,6 +34,7 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; @@ -58,14 +59,15 @@ public class CuMemberBonusServiceImpl extends ServiceImpl batchQueryCuMemberBonusSeq(Integer rowNum) { return baseMapper.batchQueryCuMemberBonusSeq(rowNum); @@ -515,7 +492,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl transactionMap = transactionCommonService.exportEnumTransaction(EOrderType.values()); + public TableDataInfo list(String waresCode, String waresName, Date startDate, Date endDate) { startPage(); - List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode,waresName,startDate,endDate); + List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode, waresName, startDate, endDate); for (WaresSalesVolume waresSalesVolume : waresSalesVolumeList) { - List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); + List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); waresSalesVolume.setProductInfo(waresSalesVolumeProductList); - waresSalesVolume.setOrderTypeVal(transactionMap.get(EOrderType.getEnumByValue(waresSalesVolume.getOrderType()).getKey())); + waresSalesVolume.setOrderTypeVal(EOrderType.getLabelByValue(waresSalesVolume.getOrderType())); } return getDataTable(waresSalesVolumeList); } /** * 导出 + * * @param waresCode * @param waresName * @param startDate * @param endDate */ @PostMapping("export") - public void export(String waresCode, String waresName, Date startDate , Date endDate, HttpServletResponse response){ - List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode,waresName,startDate,endDate); + public void export(String waresCode, String waresName, Date startDate, Date endDate, HttpServletResponse response) { + List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode, waresName, startDate, endDate); for (WaresSalesVolume waresSalesVolume : waresSalesVolumeList) { List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); waresSalesVolume.setProductInfo(waresSalesVolumeProductList); diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java index 23e783f6..5f1d623f 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java @@ -49,12 +49,12 @@ public class WaresSalesVolume { /** * 订单类型 */ - @Excel(name = "订单类型") private Integer orderType; /** * 订单类型 */ + @Excel(name = "订单类型") private String orderTypeVal; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java index cdddfe6d..d0f0eedd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java @@ -46,11 +46,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 我的订单控制器 - * @Author: jiang chao - * @Time: 2023/1/13 15:53 - * @Classname: ApiOrderController - * @PackageName: com.hzs.sale.order.controller.api + * 我的订单控制器 */ @Slf4j @RestController @@ -683,7 +679,7 @@ public class ApiOrderController extends BaseController { myOrder.setRecCounty(recCounty); } myOrder.setAddress(saOrder.getRecAddress()); - myOrder.setOrderTypeVal(EOrderType.getEnumLabelByValue(myOrder.getOrderType())); + myOrder.setOrderTypeVal(EOrderType.getLabelByValue(myOrder.getOrderType())); // 处理订单明细 myOrderItemsList = new ArrayList<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java index c29ae7a9..462f43b4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java @@ -52,8 +52,7 @@ public class ApiOthSaOrderController extends ParentOrderController { if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { convertShoppingCarToSku(orderParam); if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { + || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { if (StringUtils.isEmpty(orderParam.getUpgradeMemberCode())) { orderParam.setUpgradeMemberCode(SecurityUtils.getMemberCode()); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java index bf31667d..8eb0e63f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java @@ -100,11 +100,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); @@ -274,11 +274,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 9c223be3..6469d6ba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -480,8 +480,7 @@ public class SaOrderHandle { private void setWaresRange(Integer specialArea, List bdWaresDetailExtList, CuMember cuMember) { // 复购订单商品跟业绩需要单独处理 if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { Map> waresDetailExtMap = new HashMap<>(); List specsSkuList = new ArrayList<>(); bdWaresDetailExtList.forEach(bdWaresDetailExt -> { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index a61166b8..8294b07b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -11,7 +11,6 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; @@ -87,7 +86,6 @@ import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.concurrent.TimeUnit; -import java.util.function.Function; import java.util.stream.Collectors; /** @@ -652,10 +650,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else { @@ -683,10 +677,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_TIME.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_TIME.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_TIME.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_TIME.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); } else { @@ -899,8 +889,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); CuMember cuMember; if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { + || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); } else { cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); @@ -1832,12 +1821,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REPURCHASE_ORDER_TIME.getKey())) { // 复购专区时间 orderType = EOrderType.REPURCHASE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.EXCHANGE_ORDER_TIME.getKey())) { - // 兑换订单-积分专区 - orderType = EOrderType.EXCHANGE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.WELFARE_ORDER_TIME.getKey())) { - // 福利订单 - orderType = EOrderType.WELFARE_ORDER.getValue(); } ESpecialAreaTime specialAreaTime = ESpecialAreaTime.getSpecialAreaTime(date); if (orderType != null && specialAreaTime != null) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index f926b94c..dc709de0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -180,8 +180,7 @@ public class ApiBdWaresController extends BaseController { List bdWaresRangeList = new ArrayList<>(); if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { // 复购业绩计算 if (waresIdList.size() > 0) { bdWaresRangeList = iBdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdList); @@ -230,8 +229,7 @@ public class ApiBdWaresController extends BaseController { BigDecimal retailPrice = BigDecimal.ZERO; if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { for (BdWaresRange bdWaresRange : bdWaresRangeList) { if (waresExt.getPkId().equals(bdWaresRange.getPkWares())) { waresPrice = waresPrice.add(bdWaresRange.getPrice()); @@ -293,12 +291,7 @@ public class ApiBdWaresController extends BaseController { waresParamsList.add(waresParams); } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.INTEGRAL.getValue()); - for (CuWaresParams waresParams : waresParamsList) { - waresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(waresParams.getWaresPrice(), deductRatio)); - } - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); for (CuWaresParams waresParams : waresParamsList) { @@ -402,10 +395,7 @@ public class ApiBdWaresController extends BaseController { } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, SecurityUtils.getPkCountry(), EAccount.INTEGRAL.getValue()); - cuWaresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(cuWaresParams.getWaresPrice(), deductRatio)); - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); if (cuWaresParams.getPkSpecialCurrency() != null) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index 7e4c51c6..f8289c72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -139,7 +139,7 @@ public class BdWaresController extends BaseController { if (CollectionUtil.isNotEmpty(resultList)) { resultList.parallelStream().forEach(waresVo -> { // 所属专区 - waresVo.setSpecialAreaVal(ESpecialArea.getESpecialArea(waresVo.getSpecialArea())); + waresVo.setSpecialAreaVal(ESpecialArea.getLabelByValue(waresVo.getSpecialArea())); // 供应方式 waresVo.setOperateScopeVal(ESupplyWay.getLabelByVal(waresVo.getOperateScope())); // 预售状态 @@ -894,7 +894,7 @@ public class BdWaresController extends BaseController { eo.setWaresPrice(ws.getWaresPrice()); eo.setAmountPrice(eo.getWaresPrice().multiply(new BigDecimal(eo.getQuantity()))); eo.setSpecialArea(ws.getSpecialArea()); - eo.setSpecialAreaStr(ESpecialArea.getESpecialArea(ws.getSpecialArea())); + eo.setSpecialAreaStr(ESpecialArea.getLabelByValue(ws.getSpecialArea())); eo.setIsSingle(ws.getIsSingle()); eo.setProductName(ws.getProductName()); LambdaQueryWrapper qer = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index c909da84..213748ae 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -75,8 +75,7 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { int level = cuMember.getPkSettleGrade(); int rangeType = ERangeType.GRADE.getValue(); BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); @@ -191,8 +190,7 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { R memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java index e70e9872..6acd0155 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java @@ -29,11 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 会员特殊支付配置 - * @Author: jiang chao - * @Time: 2025/2/20 16:39 - * @Classname: BdMemberSpecialCurrencyController - * @PackageName: com.hzs.system.config.controller.manage + * 会员特殊支付配置 */ @RestController @RequestMapping("/manage/member-special-currency") @@ -64,7 +60,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { for (BdMemberSpecialCurrencyExt memberSpecialCurrency : list) { BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); resultList.add(vo); } } @@ -116,7 +112,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { // 查询配置数据 BdMemberSpecialCurrencyExt memberSpecialCurrency = iBdMemberSpecialCurrencyService.getData(pkId); BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); return AjaxResult.success(vo); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index 2d29cf8c..3b836928 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -1059,20 +1059,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 查询专区 - * - * @return - */ - @GetMapping("/order-type-special") - public AjaxResult orderTypeSpecial() { - List enumEntityList = new ArrayList<>(); - for (EOrderType eOrderType : EOrderType.getOrderTypeSpecial()) { - enumEntityList.add(new EnumEntity(eOrderType.getValue(), eOrderType.getLabel(), EnumsPrefixConstants.ORDER_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 订单状态 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 61ba0717..3dbcedce 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -161,11 +161,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 订单类型 - for (EOrderType value : EOrderType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 货币种类 for (EAccount value : EAccount.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -201,11 +196,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 专区枚举 - for (ESpecialArea value : ESpecialArea.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 统计值枚举 for (EStatisticalValue value : EStatisticalValue.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index 4865a687..20d5e7c8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -10,9 +10,9 @@ import java.util.List; public class SysConstants { /** - * 新零售前缀 + * 众康系统前缀 */ - public static final String RETAIL_PREFIX = "BF"; + public static final String RETAIL_PREFIX = "ZK"; /** * 顶点 */ @@ -31,7 +31,7 @@ public class SysConstants { /** * 特殊处理编号(对外开放使用,主要用于支付接入审核) */ - public static final String SPECIAL_CODE = "BD68880628"; + public static final String SPECIAL_CODE = "ZK68880628"; /** * 血缘累计业绩30万 @@ -46,6 +46,6 @@ public class SysConstants { /** * 开放使用会员编号(用于支付登录查看数据) */ - public static final List CONTROL_MEMBER_LIST = Collections.singletonList("BF66886688"); + public static final List CONTROL_MEMBER_LIST = Collections.singletonList("ZK66886688"); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index 61cdcf79..5c1d8493 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -1,12 +1,8 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; -import java.util.ArrayList; -import java.util.List; - /** * 订单类型枚举类 */ @@ -17,68 +13,53 @@ public enum EOrderType { /** * 注册订单 */ - REGISTER_ORDER(1, "注册订单", 1, EnumsPrefixConstants.ORDER_TYPE + 1), + REGISTER_ORDER(1, "注册订单", 1), /** * 升级订单 */ - UPGRADE_ORDER(2, "升级订单", 1, EnumsPrefixConstants.ORDER_TYPE + 2), + UPGRADE_ORDER(2, "升级订单", 1), /** * 复购订单 */ - REPURCHASE_ORDER(3, "复购订单", 1, EnumsPrefixConstants.ORDER_TYPE + 3), + REPURCHASE_ORDER(3, "复购订单", 1), /** * 重消订单-重消专区 */ - CONSUME_ORDER(10, "重消订单", 1, EnumsPrefixConstants.ORDER_TYPE + 10), - - /** - * 兑换订单-积分专区 - */ - EXCHANGE_ORDER(11, "积分订单", 1, EnumsPrefixConstants.ORDER_TYPE + 11), - - /** - * 福利订单-福利专区 bv - */ - WELFARE_ORDER(13, "福利订单", 1, EnumsPrefixConstants.ORDER_TYPE + 13), + CONSUME_ORDER(10, "重消订单", 1), /** * 直播订单 */ - MALL_ORDER(14, "直播订单", 1, EnumsPrefixConstants.ORDER_TYPE + 14), + MALL_ORDER(14, "直播订单", 1), /** * 虚拟订单 */ - FICTITIOUS_ORDER(20, "虚拟订单", 1, EnumsPrefixConstants.ORDER_TYPE + 20), + FICTITIOUS_ORDER(20, "虚拟订单", 1), /** - * 团队带过来的商品 + * 注册订单 */ - COOPERATE_ORDER(22, "合作订单", 1, EnumsPrefixConstants.ORDER_TYPE + 22), + RETAIL_REGISTER(41, "注册订单", 0), + /** + * 升级订单 + */ + RETAIL_UPGRADE(42, "升级订单", 0), + /** + * 复购订单 + */ + RETAIL_REPURCHASE(43, "复购订单", 0), + /** + * 重消订单 + */ + RETAIL_CONSUME(44, "重消订单", 0), - /** - * 新零售注册订单 - */ - RETAIL_REGISTER(41, "注册订单", 0, EnumsPrefixConstants.ORDER_TYPE + 41), - /** - * 新零售升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0, EnumsPrefixConstants.ORDER_TYPE + 42), - /** - * 新零售复购订单 - */ - RETAIL_REPURCHASE(43, "复购订单", 0, EnumsPrefixConstants.ORDER_TYPE + 43), - /** - * 新零售重消订单 - */ - RETAIL_CONSUME(44, "重消订单", 0, EnumsPrefixConstants.ORDER_TYPE + 44), + RETAIL_TICKET(45, "自助购票", 0), - RETAIL_TICKET(45, "自助购票", 0, EnumsPrefixConstants.ORDER_TYPE + 45), - - RETAIL_PICK(46, "提货订单", 0, EnumsPrefixConstants.ORDER_TYPE + 46), + RETAIL_PICK(46, "提货订单", 0), ; @@ -94,10 +75,6 @@ public enum EOrderType { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 根据值,返回枚举 @@ -117,31 +94,6 @@ public enum EOrderType { return null; } - /** - * 根据值返回显示 - * - * @param value - * @return - */ - public static String getEnumLabelByValue(Integer value) { - if (null == value) { - return ""; - } - for (EOrderType eOrderType : EOrderType.values()) { - if (eOrderType.getValue() == value) { - return eOrderType.getLabel(); - } - } - return ""; - } - - public static List getOrderTypeSpecial() { - List resultList = new ArrayList<>(); - resultList.add(EOrderType.REGISTER_ORDER); - resultList.add(EOrderType.UPGRADE_ORDER); - resultList.add(EOrderType.REPURCHASE_ORDER); - return resultList; - } public static String getLabelByValue(Integer value) { if (null == value) { return ""; @@ -154,5 +106,4 @@ public enum EOrderType { return ""; } - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 130cc4ab..061ae73a 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,61 +13,46 @@ public enum ESpecialArea { /** * 注册专区 */ - REGISTER_AREA(1, "注册专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "1", 3, EMenuDetail.REGISTER.getValue()), + REGISTER_AREA(1, "注册专区", 1, 3, EMenuDetail.REGISTER.getValue()), /** * 升级专区 */ - UPGRADE_AREA(2, "升级专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "2", 4, EMenuDetail.UPGRADE.getValue()), + UPGRADE_AREA(2, "升级专区", 1, 4, EMenuDetail.UPGRADE.getValue()), /** * 复购专区 名字修改为自营专区(复购自营) */ - REPURCHASE_AREA(3, "复购自营", 1, EnumsPrefixConstants.SPECIAL_AREA + "3", 5, EMenuDetail.REPURCHASE.getValue()), + REPURCHASE_AREA(3, "复购自营", 1, 5, EMenuDetail.REPURCHASE.getValue()), /** * 重消专区 */ - RESCISSION_AREA(10, "重消专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "10", 8, EMenuDetail.REPEATED_CONSUMPTION.getValue()), - - /** - * 积分专区 - */ - INTEGRAL_AREA(11, "积分专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "11", 13, EMenuDetail.INTEGRAL_AREA.getValue()), - - /** - * 福利专区 - */ - WELFARE_AREA(13, "福利专区", 1, EnumsPrefixConstants.SPECIAL_AREA + 13, 9, EMenuDetail.WELFARE_AREA.getValue()), + RESCISSION_AREA(10, "重消专区", 1, 8, EMenuDetail.REPEATED_CONSUMPTION.getValue()), /** * 直播专区 */ - LIVE_BROADCAST(14, "直播专区", 1, EnumsPrefixConstants.SPECIAL_AREA + 14, 14, EMenuDetail.LIVE.getValue()), + LIVE_BROADCAST(14, "直播专区", 1, 14, EMenuDetail.LIVE.getValue()), /** - * 复购合作 团队带过来的产品 + * 会员专区(注册) */ - COOPERATE_AREA(22, "复购合作", 1, EnumsPrefixConstants.SPECIAL_AREA + 22, 6, EMenuDetail.COOPERATE.getValue()), + RETAIL_REGISTER(41, "注册专区", 0, 41, -1), + /** + * 会员专区(升级) + */ + RETAIL_UPGRADE(42, "升级专区", 0, 42, -1), + /** + * 复购专区 + */ + RETAIL_REPURCHASE(43, "复购专区", 0, 43, -1), + /** + * 重消专区 + */ + RETAIL_RESCISSION(44, "重消专区", 0, 44, -1), - /** - * 新零售会员专区(注册) - */ - RETAIL_REGISTER(41, "新零售注册专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 41, 41, -1), - /** - * 新零售会员专区(升级) - */ - RETAIL_UPGRADE(42, "新零售升级专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 42, 42, -1), - /** - * 新零售复购专区 - */ - RETAIL_REPURCHASE(43, "新零售复购专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 43, 43, -1), - /** - * 新零售重消专区 - */ - RETAIL_RESCISSION(44, "新零售重消专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 44, 44, -1), - - RETAIL_TICKET(45, "自助购票", 0, EnumsPrefixConstants.SPECIAL_AREA + 45, 45, -1), + RETAIL_TICKET(45, "自助购票", 0, 45, -1), ; @@ -84,10 +68,6 @@ public enum ESpecialArea { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 排序 @@ -111,18 +91,6 @@ public enum ESpecialArea { return ""; } - public static String getESpecialArea(Integer value) { - if (null == value) { - return ""; - } - for (ESpecialArea eSpecialArea : ESpecialArea.values()) { - if (eSpecialArea.getValue() == value) { - return eSpecialArea.getLabel(); - } - } - return ""; - } - /** * 新零售专区值匹配 -- 注册、升级,对应商品都是会员专区 * diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index b6f2df5e..1e834e8c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -17,16 +17,13 @@ public enum ETradeType { UPGRADE_ORDER(102, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 102, EOrderType.UPGRADE_ORDER.getValue()), REPURCHASE_ORDER(103, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 103, EOrderType.REPURCHASE_ORDER.getValue()), CONSUME_ORDER(110, 0, "消费订单", 0, EnumsPrefixConstants.TRADE_TYPE + 110, EOrderType.CONSUME_ORDER.getValue()), - EXCHANGE_ORDER(111, 0, "积分订单", 0, EnumsPrefixConstants.TRADE_TYPE + 111, EOrderType.EXCHANGE_ORDER.getValue()), - WELFARE_ORDER(113, 0, "福利订单", 0, EnumsPrefixConstants.TRADE_TYPE + 113, EOrderType.WELFARE_ORDER.getValue()), MALL_ORDER(114, 0, "商城订单", 0, EnumsPrefixConstants.TRADE_TYPE + 114, EOrderType.MALL_ORDER.getValue()), FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), - COOPERATE_ORDER(122, 0, "复购合作", 0, EnumsPrefixConstants.TRADE_TYPE + 122, EOrderType.COOPERATE_ORDER.getValue()), - RETAIL_REGISTER_ORDER(141, 0, "新零售注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), - RETAIL_UPGRADE_ORDER(142, 0, "新零售升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), - RETAIL_REPURCHASE_ORDER(143, 0, "新零售复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), - RETAIL_CONSUME_ORDER(144, 0, "新零售重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), + RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), + RETAIL_UPGRADE_ORDER(142, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), + RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), + RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), EMPTY_ORDER(190, 190, "空单注册", 0, EnumsPrefixConstants.TRADE_TYPE + 190, EOrderType.REGISTER_ORDER.getValue()), @@ -70,16 +67,13 @@ public enum ETradeType { REVOKE_UPGRADE_ORDER(603, 0, "升级订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 603, -EOrderType.UPGRADE_ORDER.getValue()), REVOKE_REPURCHASE_ORDER(604, 0, "复购订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 604, -EOrderType.REPURCHASE_ORDER.getValue()), REVOKE_CONSUME_ORDER(611, 0, "消费订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 611, -EOrderType.CONSUME_ORDER.getValue()), - REVOKE_EXCHANGE_ORDER(612, 0, "积分订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 612, -EOrderType.EXCHANGE_ORDER.getValue()), - REVOKE_WELFARE_ORDER(614, 0, "福利订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 614, -EOrderType.WELFARE_ORDER.getValue()), REVOKE_MALL_ORDER(615, 0, "商城订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 615, -EOrderType.MALL_ORDER.getValue()), REVOKE_FICTITIOUS_ORDER(618, 0, "虚拟订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 618, -EOrderType.FICTITIOUS_ORDER.getValue()), - REVOKE_COOPERATE_ORDER(620, 0, "合作订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 620, -EOrderType.COOPERATE_ORDER.getValue()), - REVOKE_RETAIL_REGISTER_ORDER(641, 0, "新零售注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), - REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "新零售升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), - REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "新零售复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), - REVOKE_RETAIL_CONSUME_ORDER(644, 0, "新零售重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), + REVOKE_RETAIL_REGISTER_ORDER(641, 0, "注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), + REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), + REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), + REVOKE_RETAIL_CONSUME_ORDER(644, 0, "重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), REVOKE_RETAIL_TICKET_ORDER(645, 0, "自主购票撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 645, -EOrderType.RETAIL_TICKET.getValue()), ORDER_SELF_DELIVER(680, 0, "自提返还邮费", 0, EnumsPrefixConstants.TRADE_TYPE + 680, -99), From 98cec09009e5c085e7a0f15eab871a0299b73d8a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 11:53:04 +0800 Subject: [PATCH 137/362] =?UTF-8?q?##=20=E5=8E=BB=E9=99=A4=E5=9B=BD?= =?UTF-8?q?=E9=99=85=E5=8C=96=E5=BC=82=E6=AD=A5=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/third/mq/IDelayedMessageApi.java | 11 +- .../hzs/third/mq/dto/DelayedMessageDTO.java | 6 +- .../manage/BdTransactionController.java | 41 +----- .../base/mapper/BdTransactionMapper.java | 3 - .../base/service/IBdTransactionService.java | 21 --- .../impl/BdTransactionServiceImpl.java | 87 ------------- .../core/constant/RabbitMqConstants.java | 12 -- .../com/hzs/common/core/enums/ELanguages.java | 30 ----- .../domain/system/base/BdTransaction.java | 6 - .../mqcall/config/DelayRabbitConfig.java | 9 +- .../mqcall/listener/ActivityListener.java | 11 +- .../mqcall/listener/TransactionListener.java | 120 ------------------ .../provider/DelayedMessageProvider.java | 7 - .../service/IDelayedMessageService.java | 14 +- .../impl/DelayedMessageServiceImpl.java | 8 +- .../translate/config/TranslateConfig.java | 34 ----- .../third/translate/dto/TranslateParam.java | 39 ------ .../third/translate/dto/TranslateResult.java | 42 ------ .../translate/dto/TranslateResultDetail.java | 25 ---- .../translate/service/ITranslateService.java | 24 ---- .../service/impl/TranslateServiceImpl.java | 86 ------------- 21 files changed, 16 insertions(+), 620 deletions(-) delete mode 100644 bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java index e9a4100f..9bd9ea21 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java @@ -3,21 +3,12 @@ package com.hzs.third.mq; import com.hzs.common.core.domain.R; import com.hzs.third.mq.dto.DelayedMessageDTO; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/9 15:21 - * @Classname: IDelayedMessage - * @PackageName: com.hzs.third.mq - */ public interface IDelayedMessageApi { /** * 发送延时队列消息 + * * @param delayedMessageDTO 内容 - * @return: void - * @Author: sui q - * @Date: 2023/3/9 15:18 */ R sendDelayedMessage(DelayedMessageDTO delayedMessageDTO); } diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java index ac90e9cd..7bb6c528 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java @@ -10,11 +10,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 用于延时队列,删除redis缓存 - * @Author: sui q - * @Time: 2023/3/9 15:49 - * @Classname: DelayedMessageDTO - * @PackageName: com.hzs.third.mq.dto + * 用于延时队列,删除redis缓存 */ @Data @Builder diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java index 22cfeed1..103ca5ff 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java @@ -29,9 +29,6 @@ import java.util.*; /** * 国际化翻译控制器 - * - * @author hzs - * @since 2022-08-08 */ @Slf4j @RestController @@ -148,11 +145,7 @@ public class BdTransactionController extends BaseController { } /** - * @description: 下载模板 - * @author: zhang jing - * @date: 2023/4/6 11:48 - * @param: [response] - * @return: void + * 下载模板 **/ @PostMapping("/download") public void download(HttpServletResponse response) { @@ -180,22 +173,6 @@ public class BdTransactionController extends BaseController { return AjaxResult.success(iBdTransactionService.importData(ordersList, updateSupport, SecurityUtils.getUserId())); } - /** - * 初始化语种(以中文为准,翻译为其它语种) - * - * @param language 语种 - * @return - */ - @GetMapping("/init-languages") - public AjaxResult initLanguages(@RequestParam("language") Integer language) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - - return toAjax(iBdTransactionService.initToLanguage(eLanguages)); - } - /** * 刷新资源缓存 * @@ -265,20 +242,4 @@ public class BdTransactionController extends BaseController { return AjaxResult.error("翻译刷新处理失败"); } - /** - * 以指定语种为基础初始数据资源 - * - * @param language 基础语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - @GetMapping("/init-other-language/{language}") - public AjaxResult initOtherLanguage(@PathVariable("language") Integer language, @RequestParam List pkIdList) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - return toAjax(iBdTransactionService.initOtherLanguage(eLanguages, pkIdList)); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java index 824ca591..a01d62ba 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java @@ -12,9 +12,6 @@ import java.util.Set; /** * 统一翻译表 Mapper 接口 - * - * @author hzs - * @since 2022-08-08 */ public interface BdTransactionMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java index 245347d8..ebfeb914 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java @@ -1,7 +1,6 @@ package com.hzs.system.base.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.core.enums.ELanguages; import com.hzs.common.domain.system.base.BdTransaction; import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; @@ -10,9 +9,6 @@ import java.util.*; /** * 统一翻译表 服务类 - * - * @author hzs - * @since 2022-08-08 */ public interface IBdTransactionService extends IService { @@ -108,23 +104,6 @@ public interface IBdTransactionService extends IService { */ List queryListByColumn(String column, boolean isCache, boolean isUpload); - /** - * 初始化指定语种 - * - * @param eLanguages 指定语种 - * @return - */ - boolean initToLanguage(ELanguages eLanguages); - - /** - * 以指定语种为基础初始数据资源 - * - * @param eLanguages 指定语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - boolean initOtherLanguage(ELanguages eLanguages, List pkIdList); - /** * 刷新资源 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java index 994d8327..93477cfc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java @@ -7,9 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.LanguageConstants; -import com.hzs.common.core.constant.RabbitMqConstants; import com.hzs.common.core.enums.ELanguages; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.OssUtil; @@ -19,9 +17,7 @@ import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; import com.hzs.system.base.mapper.BdTransactionMapper; import com.hzs.system.base.service.IBdTransactionService; -import com.hzs.third.mq.dto.TransactionMqDTO; import lombok.extern.slf4j.Slf4j; -import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,27 +28,14 @@ import java.util.*; /** * 统一翻译表 服务实现类 - * - * @author hzs - * @since 2022-08-08 */ @Slf4j @Service public class BdTransactionServiceImpl extends ServiceImpl implements IBdTransactionService { - @Autowired - private RabbitTemplate rabbitTemplate; @Autowired private RedisService redisService; - - /** - * @description: 导入统一翻译信息 - * @author: zhang jing - * @date: 2023/4/27 17:17 - * @param: [transactionList, updateSupport, userId] - * @return: java.lang.String - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean importData(List transactionList, @@ -85,16 +68,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey() + transactionParam.getPkId()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - return transactionParam.getPkId(); } return null; @@ -104,17 +77,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - if (null != updateOther && updateOther) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - } return transactionParam.getPkId(); } return null; @@ -167,55 +129,6 @@ public class BdTransactionServiceImpl extends ServiceImpl transactionResultList = baseMapper.queryToColumnList(eLanguages.getColumn()); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(ELanguages.CN.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .toApiKey(eLanguages.getApiKey()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - @Override - public boolean initOtherLanguage(ELanguages eLanguages, List pkIdList) { - List transactionResultList = baseMapper.queryFromColumnList(eLanguages.getColumn(), pkIdList); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(eLanguages.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - /** - * 刷新资源 - * - * @param languages 刷新语种(ELanguages的value) - * @param isCache 是否刷新缓存 - * @param isOss 是否刷新OSS - */ @Override public void flushResources(Integer languages, boolean isCache, boolean isOss) { String column = null; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java index 4d2303e4..99c6ae6c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java @@ -9,18 +9,6 @@ public class RabbitMqConstants { * 统一mq前缀 */ public final static String PREFIX = "global."; - /** - * 翻译MQ exchange - */ - public static final String TRANSLATE_EXCHANGE = PREFIX + "translate.exchange"; - /** - * 翻译MQ queue - */ - public static final String TRANSLATE_QUEUE = PREFIX + "translate.queue"; - /** - * 翻译MQ key - */ - public static final String TRANSLATE_KEY = PREFIX + "translate.key"; /** * 奖金秒接 exchange diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java index 7e61b90d..1ca7dbe6 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java @@ -86,34 +86,4 @@ public enum ELanguages { return null; } - /** - * 根据语种column,获取语种 - * - * @param column - * @return - */ - public static ELanguages getLanguagesByColumn(String column) { - for (ELanguages eLanguages : ELanguages.values()) { - if (eLanguages.getColumn().equals(column)) { - return eLanguages; - } - } - return null; - } - - /** - * 根据语种apiKey,获取语种 - * - * @param apiKey - * @return - */ - public static ELanguages getLanguagesByApiKey(String apiKey) { - for (ELanguages eLanguages : ELanguages.values()) { - if (eLanguages.getApiKey().equals(apiKey)) { - return eLanguages; - } - } - return null; - } - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java index bd070e22..a01c51b7 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java @@ -15,12 +15,7 @@ import java.io.Serializable; import java.util.Date; /** - *

* 统一翻译表 - *

- * - * @author hzs - * @since 2022-08-08 */ @Data @EqualsAndHashCode(callSuper = false) @@ -227,7 +222,6 @@ public class BdTransaction implements Serializable { private Integer isCache; - /** * 是否上传(0=是,1=否) */ diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java b/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java index 20c21e47..8d299b70 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java @@ -10,11 +10,7 @@ import java.util.HashMap; import java.util.Map; /** - * @Description: 配置队列 - * @Author: sui q - * @Time: 2023/3/9 15:26 - * @Classname: DelayRabbitConfig - * @PackageName: com.hzs.third.mqcall.config + * 配置队列 */ @Configuration @Slf4j @@ -45,12 +41,14 @@ public class DelayRabbitConfig { * 需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配。 * 这是一个完整的匹配。如果一个队列绑定到该交换机上要求路由键 “dog”,则只有被标记为“dog”的消息才被转发, * 不会转发dog.puppy,也不会转发dog.guard,只会转发dog。 + * * @return DirectExchange */ @Bean public DirectExchange orderDelayExchange() { return new DirectExchange(RabbitMqConstants.DELAY_EXCHANGE); } + @Bean public Binding dlxBinding() { return BindingBuilder.bind(delayOrderQueue()).to(orderDelayExchange()).with(RabbitMqConstants.DELAY_ROUTING_KEY); @@ -60,6 +58,7 @@ public class DelayRabbitConfig { public Queue effectQueue() { return new Queue(RabbitMqConstants.EFFECT_QUEUE_NAME, true); } + /** * 将路由键和某模式进行匹配。此时队列需要绑定要一个模式上。 * 符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词。因此“audit.#”能够匹配到“audit.irs.corporate”,但是“audit.*” 只会匹配到“audit.irs”。 diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java index ec5736bd..8f4cfd62 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java @@ -13,19 +13,14 @@ import org.springframework.messaging.Message; import org.springframework.stereotype.Component; /** - * @description: 活动公共的监听方法, 用于处理活动 - * @author: sui q - * @time: 2023/4/28 11:21 - * @classname: ActivityListener - * @package_name: com.hzs.third.mqcall.listener - * version 1.0.0 + * 活动公共的监听方法, 用于处理活动 */ @Slf4j @Component public class ActivityListener { @DubboReference - IActivityServiceApi activityServiceApi; + IActivityServiceApi iActivityServiceApi; @RabbitListener(bindings = @QueueBinding( exchange = @Exchange(value = RabbitMqConstants.ACTIVITY_EXCHANGE, type = "topic"), @@ -40,7 +35,7 @@ public class ActivityListener { Thread.sleep(1000); Long deliveryTag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); channel.basicAck(deliveryTag, false); - activityServiceApi.handleActivity(saOrderExt); + iActivityServiceApi.handleActivity(saOrderExt); } catch (Exception e) { log.error(e.getMessage()); e.printStackTrace(); diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java deleted file mode 100644 index 25944f20..00000000 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.hzs.third.mqcall.listener; - -import cn.hutool.core.util.ReflectUtil; -import com.hzs.common.core.constant.RabbitMqConstants; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.ELanguages; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.system.base.ITransactionServiceApi; -import com.hzs.system.base.dto.TransactionDTO; -import com.hzs.third.mq.dto.TransactionMqDTO; -import com.hzs.third.translate.dto.TranslateParam; -import com.hzs.third.translate.service.ITranslateService; -import com.rabbitmq.client.Channel; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.amqp.rabbit.annotation.*; -import org.springframework.amqp.support.AmqpHeaders; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.messaging.Message; -import org.springframework.stereotype.Component; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -/** - * 国际化翻译监听 - */ -@Slf4j -@Component -public class TransactionListener { - - @Autowired - private ITranslateService iTranslateService; - - @DubboReference - ITransactionServiceApi iTransactionServiceApi; - - /** - * 国际化全量翻译监听处理 - * - * @param message - * @param channel - * @throws Exception - */ - @RabbitListener(bindings = @QueueBinding( - exchange = @Exchange(value = RabbitMqConstants.TRANSLATE_EXCHANGE, type = "topic"), - value = @Queue(value = RabbitMqConstants.TRANSLATE_QUEUE, durable = "true", autoDelete = "false"), - key = RabbitMqConstants.TRANSLATE_KEY)) - @RabbitHandler - public void onMessage(Message message, Channel channel) throws Exception { - // 手动应答 - Long deliveryTag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); - channel.basicAck(deliveryTag, false); - - // 根据传入的ID获取翻译内容 - TransactionMqDTO transactionMqDto = message.getPayload(); - - log.info("异步翻译入参信息:{}", transactionMqDto); - - // 调用服务查询翻译内容 - ELanguages fromLanguage = ELanguages.getLanguagesByColumn(transactionMqDto.getColumn()); - if (null == fromLanguage) { - log.error("异步翻译来源语言不存在"); - return; - } - - // 翻译内容 - String content = transactionMqDto.getColumnValue(); - // 翻译来源语言 - String from = fromLanguage.getApiKey(); - - // 翻译目标语言列表 - List toList = new ArrayList<>(); - if (StringUtils.isNotEmpty(transactionMqDto.getToApiKey())) { - toList.add(transactionMqDto.getToApiKey()); - } else { - for (ELanguages value : ELanguages.values()) { - if (!value.getApiKey().equals(from)) { - toList.add(value.getApiKey()); - } - } - } - - if (StringUtils.isNotEmpty(content)) { - // 调用三方服务处理成功 - Map dataMap = iTranslateService.translate(TranslateParam.builder() - .from(from) - .to(toList) - .content(content) - .build()); - - // 封装调用翻译服务入库内容 - TransactionDTO transactionDTO = new TransactionDTO(); - transactionDTO.setPkId(transactionMqDto.getPkId()); - ReflectUtil.setFieldValue(transactionDTO, fromLanguage.getColumn(), content); - - // 赋值入库并处理是否加入缓存 - for (String apiKey : toList) { - ELanguages languages = ELanguages.getLanguagesByApiKey(apiKey); - if (null != languages) { - String translateStr = dataMap.get(apiKey); - - ReflectUtil.setFieldValue(transactionDTO, languages.getColumn(), translateStr); - - log.info("{}", apiKey + ":" + translateStr); - } - } - log.info("transactionDTO: {}", transactionDTO); - - R updateR = iTransactionServiceApi.updateTransactionSync(transactionDTO); - if (!updateR.isSuccess()) { - log.error("异步翻译调用翻译服务入库失败: {}", updateR.getMsg()); - } - } else { - log.warn("异步翻译内容为空"); - } - } - -} diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java b/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java index f557b2d7..63224f56 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java @@ -7,13 +7,6 @@ import com.hzs.third.mqcall.service.IDelayedMessageService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/9 15:22 - * @Classname: DelayedMessageProvider - * @PackageName: com.hzs.third.mqcall.provider - */ @DubboService public class DelayedMessageProvider implements IDelayedMessageApi { diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java b/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java index a83715a7..3df7be1c 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java @@ -3,20 +3,14 @@ package com.hzs.third.mqcall.service; import com.hzs.third.mq.dto.DelayedMessageDTO; /** - * @Description: 延时队列入口类 - * @Author: sui q - * @Time: 2023/3/9 15:16 - * @Classname: IDelaydeMessageService - * @PackageName: com.hzs.third.mqcall.service + * 延时队列入口类 */ public interface IDelayedMessageService { /** - * 发送延时队列消息 + * 发送延时队列消息 + * * @param delayedMessageDTO 内容 - * @return: void - * @Author: sui q - * @Date: 2023/3/9 15:18 - */ + */ void sendDelayedMessage(DelayedMessageDTO delayedMessageDTO); } diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java b/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java index be66b6ef..2b27c507 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java @@ -9,11 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - * @Description: 延时队列实现类 - * @Author: sui q - * @Time: 2023/3/9 15:20 - * @Classname: DelayedMessageImpl - * @PackageName: com.hzs.third.mqcall.service.impl + * 延时队列实现类 */ @Service public class DelayedMessageServiceImpl implements IDelayedMessageService { @@ -23,7 +19,7 @@ public class DelayedMessageServiceImpl implements IDelayedMessageService { @Override public void sendDelayedMessage(DelayedMessageDTO delayedMessageDTO) { - if(DateUtils.compareDateTimeAfter(delayedMessageDTO.getEffectDate(), DateUtils.currentDateTime())) { + if (DateUtils.compareDateTimeAfter(delayedMessageDTO.getEffectDate(), DateUtils.currentDateTime())) { // 计算延时时间 long second = DateUtils.betweenSecond(delayedMessageDTO.getEffectDate()) * 1000; rabbitTemplate.convertAndSend(RabbitMqConstants.DELAY_EXCHANGE, RabbitMqConstants.DELAY_ROUTING_KEY, diff --git a/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java b/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java deleted file mode 100644 index 05bda499..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.hzs.third.translate.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -/** - * Description: - * Author: jiang chao - * Time: 2022/9/8 17:51 - * Classname: TranslateConfig - * PackageName: com.hzs.third.translate.config - */ -@Data -@Component -@ConfigurationProperties(prefix = "baidu.translate") -public class TranslateConfig { - - /** - * API appId - */ - private String appId; - - /** - * API secretKey - */ - private String secretKey; - - /** - * url - */ - private String url; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java deleted file mode 100644 index 555f4f9b..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.List; - -/** - * Description: 翻译服务入参 - * Author: jiang chao - * Time: 2022/9/8 18:00 - * Classname: TranslateParam - * PackageName: com.hzs.third.translate.dto - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class TranslateParam implements Serializable { - - private static final long serialVersionUID = 5415462905404464505L; - - /** - * 翻译来源语言ApiKey - */ - private String from; - /** - * 翻译目标语言ApiKey - */ - private List to; - /** - * 翻译内容 - */ - private String content; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java deleted file mode 100644 index 6b4d3bcc..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.Data; - -import java.util.List; - -/** - * Description: 翻译返回内容 - * Author: jiang chao - * Time: 2022/9/8 17:03 - * Classname: TranslateResult - * PackageName: com.hzs.system.sys.controller.manage - */ -@Data -public class TranslateResult { - - /** - * 翻译源语言 - */ - private String from; - - /** - * 翻译目标语言 - */ - private String to; - - /** - * 错误码 - */ - private String error_code; - - /** - * 错误内容 - */ - private String error_msg; - - /** - * 翻译结果 - */ - private List trans_result; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java deleted file mode 100644 index 654268ae..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.Data; - -/** - * Description: 翻译返回内容 - * Author: jiang chao - * Time: 2022/9/8 17:03 - * Classname: TranslateResult - * PackageName: com.hzs.system.sys.controller.manage - */ -@Data -public class TranslateResultDetail { - - /** - * 翻译源内容 - */ - private String src; - - /** - * 翻译目标内容 - */ - private String dst; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java b/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java deleted file mode 100644 index a894f5f1..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.third.translate.service; - -import com.hzs.third.translate.dto.TranslateParam; - -import java.util.Map; - -/** - * @Description: - * @Author: jiang chao - * @Time: 2023/3/7 18:42 - * @Classname: ITranslateService - * @PackageName: com.hzs.third.translate.service - */ -public interface ITranslateService { - - /** - * 语言翻译 - * - * @param param 翻译入参 - * @return - */ - Map translate(TranslateParam param); - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java b/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java deleted file mode 100644 index fc931cee..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.hzs.third.translate.service.impl; - -import cn.hutool.core.text.UnicodeUtil; -import cn.hutool.core.util.CharsetUtil; -import cn.hutool.crypto.digest.MD5; -import cn.hutool.http.HttpUtil; -import cn.hutool.json.JSONUtil; -import com.hzs.common.core.constant.Constants; -import com.hzs.common.core.exception.base.BaseException; -import com.hzs.third.translate.config.TranslateConfig; -import com.hzs.third.translate.dto.TranslateParam; -import com.hzs.third.translate.dto.TranslateResult; -import com.hzs.third.translate.service.ITranslateService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.common.utils.CollectionUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.net.URLEncoder; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -/** - * @Description: - * @Author: jiang chao - * @Time: 2023/3/7 18:43 - * @Classname: TranslateServiceImpl - * @PackageName: com.hzs.third.translate.service.impl - */ -@Slf4j -@Service -public class TranslateServiceImpl implements ITranslateService { - - @Autowired - private TranslateConfig translateConfig; - - /** - * 语言翻译 - * - * @param param 翻译入参 - * @return - */ - @Override - public Map translate(TranslateParam param) { - try { - // 请求参数加盐 - String salt = String.valueOf(System.currentTimeMillis()); - // MD5加密 - String sign = MD5.create().digestHex(translateConfig.getAppId() + param.getContent() + salt + translateConfig.getSecretKey()).toLowerCase(); - // 翻译内容进行URLEncode转码 - String content = URLEncoder.encode(param.getContent(), Constants.UTF8); - - // 返回的翻译对应map - Map resultMap = new ConcurrentHashMap<>(); - - List toList = param.getTo(); - if (CollectionUtils.isNotEmpty(toList)) { - for (String str : toList) { - String url = translateConfig.getUrl() + "?q=" + content + "&from=" + param.getFrom() + "&to=" + str + "&appid=" + translateConfig.getAppId() + "&salt=" + salt + "&sign=" + sign; - log.info("异步翻译请求URL: {}", url); - - String result = HttpUtil.get(url, CharsetUtil.CHARSET_UTF_8); - log.info("异步翻译返回内容:{}", result); - - // 翻译返回内容为 unicode,需要进行解码 - result = UnicodeUtil.toString(result); - - TranslateResult translateResult = JSONUtil.toBean(result, TranslateResult.class); - if (null != translateResult && null != translateResult.getFrom()) { - // 返回成功并且有内容 - resultMap.put(str, translateResult.getTrans_result().get(0).getDst()); - } -// // 非企业认证,QPS=1 -// Thread.sleep(1000); - } - } - - return resultMap; - } catch (Exception e) { - log.error("异步翻译异常!param: {}", param, e); - throw new BaseException("异步翻译异常"); - } - } - -} From db4e2b270c6013f821f57871de73de20b2609b49 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 14:14:40 +0800 Subject: [PATCH 138/362] =?UTF-8?q?##=20=E5=8E=BB=E9=99=A4=E9=83=A8?= =?UTF-8?q?=E5=88=86=E5=9B=BD=E9=99=85=E5=8C=96=EF=BC=9B=E5=8E=BB=E6=8E=89?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=8F=90=E7=8E=B0=E7=AD=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/detail/ICuRegionAssessApi.java | 29 -- .../member/account/IMemberJobServiceApi.java | 36 +-- .../hzs/retail/member/IMemberRetailApi.java | 7 - .../report/stat/IMemberReportServiceApi.java | 20 -- .../report/stat/dto/StatisticalLogDTO.java | 67 ----- .../hzs/system/base/ICurrencyServiceApi.java | 27 -- .../system/base/ITransactionServiceApi.java | 53 ---- .../hzs/system/base/dto/TransactionDTO.java | 6 +- .../config/IWithdrawalAutoServiceApi.java | 25 -- .../system/config/IWithdrawalServiceApi.java | 24 +- .../detail/mapper/CuRegionAssessMapper.java | 9 - .../provider/CuRegionAssessProvider.java | 46 --- .../service/ICuRegionAssessService.java | 7 - .../impl/CuRegionAssessServiceImpl.java | 29 -- .../bonus/detail/CuRegionAssessMapper.xml | 21 -- .../api/ApiCuMemberWithdrawController.java | 12 - .../account/mapper/CuMemberAccountMapper.java | 44 --- .../mapper/CuMemberWithdrawMapper.java | 6 - .../provider/IMemberJobServiceProvider.java | 37 --- .../service/ICuMemberAccountService.java | 44 --- .../service/ICuMemberRechargeService.java | 13 - .../service/ICuMemberWithdrawService.java | 22 -- .../impl/CuMemberAccountServiceImpl.java | 27 -- .../impl/CuMemberWithdrawServiceImpl.java | 169 +---------- .../hzs/member/account/vo/CuMemberBankVO.java | 8 +- .../mapper/CuMemberRetailRegionMapper.java | 7 - .../member/provider/MemberRetailProvider.java | 11 - .../ICuMemberRetailAchieveService.java | 18 -- .../service/ICuMemberRetailRegionService.java | 5 - .../CuMemberRetailAchieveServiceImpl.java | 155 +--------- .../impl/CuMemberRetailRegionServiceImpl.java | 79 ----- .../member/account/CuMemberAccountMapper.xml | 125 -------- .../member/CuMemberRetailRegionMapper.xml | 12 - .../provider/MemberReportServiceProvider.java | 32 --- .../member/service/MemberReportService.java | 5 - .../service/impl/MemberReportServiceImpl.java | 45 --- .../base/mapper/BdStorehouseMapper.java | 11 +- .../base/mapper/BdTransactionMapper.java | 10 - .../provider/CurrencyServiceProvider.java | 54 ---- .../provider/TransactionServiceProvider.java | 150 ---------- .../base/service/IBdCurrencyService.java | 17 -- .../base/service/IBdStorehouseService.java | 16 +- .../base/service/IBdTransactionService.java | 10 - .../service/impl/BdCurrencyServiceImpl.java | 5 +- .../service/impl/BdStorehouseServiceImpl.java | 82 +----- .../impl/BdTransactionServiceImpl.java | 5 - .../manage/BdWithdrawalAutoController.java | 67 +---- .../manage/BdWithdrawalController.java | 270 +++++++----------- .../manage/BdWithdrawalProcessController.java | 111 +++---- .../config/mapper/BdWithdrawalAutoMapper.java | 6 - .../config/mapper/BdWithdrawalMapper.java | 35 +-- .../WithdrawalAutoServiceProvider.java | 36 --- .../provider/WithdrawalServiceProvider.java | 37 +-- .../service/IBdWithdrawalAutoService.java | 9 - .../config/service/IBdWithdrawalService.java | 56 +--- .../impl/BdWithdrawalAutoServiceImpl.java | 40 --- .../service/impl/BdWithdrawalServiceImpl.java | 116 ++------ .../hzs/system/sys/mapper/SysCorpMapper.java | 10 +- .../system/sys/service/ISysCorpService.java | 27 +- .../sys/service/impl/SysCorpServiceImpl.java | 20 +- .../system/base/BdTransactionMapper.xml | 11 - .../common/core/constant/CacheConstants.java | 16 -- .../member/account/CuMemberRecharge.java | 5 - .../member/account/CuMemberWithdraw.java | 5 - .../domain/system/base/ext/BdCubasdocExt.java | 8 - .../domain/system/config/BdWithdrawal.java | 5 - .../system/config/BdWithdrawalAuto.java | 8 - .../hzs/common/domain/system/sys/SysCorp.java | 5 - .../java/com/hzs/third/job/CuMemberJob.java | 8 - .../java/com/hzs/third/job/MemberJob.java | 54 ---- 70 files changed, 236 insertions(+), 2371 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java delete mode 100644 bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java delete mode 100644 bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java delete mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/member/provider/MemberReportServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalAutoServiceProvider.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java deleted file mode 100644 index ca2ad6d7..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.bonus.detail; - -import com.hzs.common.core.domain.R; - -import java.util.Date; -import java.util.List; - -/** - * @description: 新零售会员区域考核dubbo服务 - * @author: zhang jing - * @date: 2025/3/7 10:36 - * @param: - * @return: - **/ -public interface ICuRegionAssessApi { - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - R validateHandAreaAssess(Date startDate,Date endDate); - - - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java index bd8c4b03..5607f951 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java @@ -1,20 +1,12 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; - -import java.util.Date; /** * 会员模块定时任务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:38 - * @Classname: IMemberJobServiceApi - * @Package_name: com.hzs.member.account */ public interface IMemberJobServiceApi { + /** * 定时插入账户详情数据 * @@ -22,30 +14,14 @@ public interface IMemberJobServiceApi { */ R insertAccountDetail(); - - /** - * 自动提现 - * - * @return - */ - R automaticWithdrawal(); - - /** - * 查询充值金额总和 - * - * @param startDate 开始时暗 - * @param endDate 结速时间 - * @return R - */ - R selectRechargeTotalAmount(Date startDate, Date endDate); - - /** * 自动清理垃圾数据 - * CU_MEMBER_AWARDS - * CU_MEMBER_LEVEL - * CU_MEMBER_GRADE + * CU_MEMBER_AWARDS + * CU_MEMBER_LEVEL + * CU_MEMBER_GRADE + * * @return */ R autoDeleteGarbageData(); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java index e994f225..8c9ed6f9 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java @@ -9,13 +9,6 @@ import java.util.List; */ public interface IMemberRetailApi { - /** - * 定时处理收益区域 - * - * @return - */ - R checkRegion(); - /** * 取消收益区域 * diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java deleted file mode 100644 index 87cc82da..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.report.stat; - -import com.hzs.common.core.domain.R; - -/** - * 统计分析 - **/ -public interface IMemberReportServiceApi { - - /** - * 定时任务批量处理统计会员以及伞下金额业绩盒数 - **/ - R pushAmountBoxmethod(); - - /** - * 定时任务7天重算直推会员金额业绩盒数 - **/ - R repeatPushAmountBoxmethod(String startDateStr, String endDateStr); - -} diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java deleted file mode 100644 index 060b7797..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.report.stat.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * 修改政策币表DTO - * - * @author hzs - * @since 2022-08-22 - */ -@Data -public class StatisticalLogDTO implements Serializable { - - private static final long serialVersionUID = 1L; - - private Long pkMember; - /** - * 会员编号 - */ - private String memberCode; - - /** - * 标题 - */ - private String title; - - /** - * 内容 - */ - private String content; - /** - * 国家 - */ - private Integer pkCountry; - /** - * 创建人 - */ - private Long pkCreate; - - /** - * 会员ID - */ - private List pkMemberList; - /** - * 业务单号 - */ - private String businessNo; - - /** - * 审核状态 2 待审核 4 已驳回 5 已完成(审核成功) 枚举 : EApproveStatus - */ - private Integer approveStatus; - /** - * 错误信息 - */ - private String errorMsg; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java index 180b2011..2ff4f5fc 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java @@ -1,10 +1,7 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.base.BdCubasdoc; import com.hzs.common.domain.system.base.BdStorehouse; -import com.hzs.common.domain.system.base.ext.BdCubasdocExt; -import com.hzs.common.domain.system.sys.SysCorp; import com.hzs.system.base.dto.CurrencyDTO; import java.util.Collection; @@ -46,11 +43,6 @@ public interface ICurrencyServiceApi { */ R queryBdStorehouseByProvince(Integer province, Integer... type); - /** - * 根据省查询对应的发货仓库 - */ - R queryBdStorehouseById(Integer pkId); - /** * 根据省查询对应的发货仓库 * @@ -71,23 +63,4 @@ public interface ICurrencyServiceApi { */ R> findAll(); - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCubasdocById(Integer pkId, Integer pkCountry); - - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCustomerById(Integer pkId, Integer pkCountry); - - /** - * 提供查询采购组织的dubbo调用 - */ - R querySysCorp(Integer pkId, Integer pkCountry); - - /** - * 根据仓库主键查询仓库 - */ - R> queryStorehouseByIds(Set storehouseIdSet, Integer pkCountry, Integer pkCorp); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java index 1fb0ee27..06d167c9 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java @@ -3,7 +3,6 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ETransactionKey; import com.hzs.common.core.enums.EYesNo; -import com.hzs.system.base.dto.TransactionDTO; import java.util.Collection; import java.util.List; @@ -15,27 +14,6 @@ import java.util.Set; */ public interface ITransactionServiceApi { - /** - * 根据key读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param content 翻译内容 - * @param toLocal 返回语言 - * @return - */ - R readTransactionByDataBase(Integer fromCountry, String content, String toLocal); - - /** - * 根据key列表读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param contentList 翻译内容列表 - * @param toLocal 返回语言 - * @return - */ - R> readTransactionListByDataBase(Integer fromCountry, Set contentList, String toLocal); - - /** * 根据key读取缓存翻译 * @@ -72,7 +50,6 @@ public interface ITransactionServiceApi { */ R> readTransactionListDataBase(Collection pkIdList, String toLocal); - /** * 数据库+缓存同时查询 * @@ -83,17 +60,6 @@ public interface ITransactionServiceApi { */ R> readTransactionAll(Integer fromCountry, Set contentList, Set keyList, String toLocal); - - /** - * 创建国际化翻译(只写入缓存) - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @return - */ - R createTransactionCacheOnly(Integer pkCountry, ETransactionKey key, String content); - /** * 创建国际化翻译(写入缓存,上传OSS) * @@ -116,7 +82,6 @@ public interface ITransactionServiceApi { */ R createTransaction(Integer pkCountry, ETransactionKey key, String content, EYesNo cacheFlag, EYesNo uploadFlag); - /** * 移除国际化翻译(根据ID) * @@ -125,15 +90,6 @@ public interface ITransactionServiceApi { */ R removeTransactionByPkId(List pkIdList); - /** - * 移除国际化翻译(根据KEY) - * - * @param keyList 翻译key列表 - * @return - */ - R removeTransactionByKey(List keyList); - - /** * 更新国际化翻译 * @@ -145,13 +101,4 @@ public interface ITransactionServiceApi { */ R updateTransaction(Integer pkCountry, String content, Integer pkId, Boolean updateOther); - - /** - * 更新国际化翻译(异步翻译回调更新) - * - * @param transactionDTO 更新实体 - * @return - */ - R updateTransactionSync(TransactionDTO transactionDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java index 0af35a00..2ae38027 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java @@ -9,11 +9,7 @@ import java.io.Serializable; import java.util.Date; /** - * Description: 翻译操作DTO - * Author: jiang chao - * Time: 2022/9/13 9:33 - * Classname: TransactionDTO - * PackageName: com.hzs.system.base.dto + * 翻译操作DTO */ @AllArgsConstructor @NoArgsConstructor diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java deleted file mode 100644 index 5f37d4d4..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalAuto; - -import java.util.List; - -/** - * @description: 根据国家查询自动提现明细api - * @author: zhang jing - * @date: 2022/9/27 15:15 - * @param: - * @return: - **/ -public interface IWithdrawalAutoServiceApi { - - /** - * @description:根据国家查询自动提现明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:20 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalAuto(Integer pkCountry); -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java index 4fae7ec8..f656fcfd 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java @@ -3,32 +3,14 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdWithdrawal; -import java.util.List; - /** - * @description: 根据国家查询提现配置明细列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现配置明细列表api **/ public interface IWithdrawalServiceApi { /** - * @description: 根据国家查询提现配置明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询提现配置明细列表 **/ - R queryWithdrawal(Integer pkCountry,Integer pkAccount); + R queryWithdrawal(Integer pkCountry, Integer pkAccount); - /** - * @description: 查询所有自动提现的配置 - * @author: zhang jing - * @date: 2022/11/1 19:44 - * @param: [] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalByIsAuto(); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java index 005d38f5..7c407304 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java @@ -52,13 +52,4 @@ public interface CuRegionAssessMapper extends BaseMapper { **/ List queryCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - /* - * 查询到期日期是上个月的区域 - **/ - List queryDueCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /* - * 查询手动设置考核的近6个月考核记录 - **/ - List queryRegionAssessByDate(@Param("memberRetailRegionList") List memberRetailRegionList, @Param("startDate") Date startDate, @Param("endDate") Date endDate); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java deleted file mode 100644 index adb6dfd1..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.provider; - -import com.hzs.bonus.detail.ICuRegionAssessApi; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 新零售会员dubbo服务 - * @Author: jiang chao - * @Time: 2024/12/31 13:40 - * @Classname: MemberRetailProvider - * @PackageName: com.hzs.retail.member.provider - */ -@Slf4j -@DubboService -public class CuRegionAssessProvider implements ICuRegionAssessApi { - - @Autowired - private ICuRegionAssessService iCuRegionAssessService; - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R validateHandAreaAssess(Date startDate,Date endDate) { - try { - iCuRegionAssessService.validateHandAreaAssess(startDate,endDate); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理前3天收益区域异常", e); - return R.fail(e.getMessage()); - } - } - - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java index 29a77c3d..44be6d2d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java @@ -19,13 +19,6 @@ public interface ICuRegionAssessService extends IService { **/ void assessRegionByEveryMonth(String settleDate, String rangeTableName); - /** - * 定时处理会员收益区域(处理前三天) - * - * @return: void - **/ - void validateHandAreaAssess(Date startDate, Date endDate); - /* * 考核开始日期 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java index 7addfb78..14885c12 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java @@ -178,35 +178,6 @@ public class CuRegionAssessServiceImpl extends ServiceImpl cancelRegionList = new ArrayList<>(); - List dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate); - if (dueRetailRegionList.size() > 0) { - Date assessDate = DateUtils.currentMonthFirstDate(startDate); - // 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期 - Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate); - // assessDate assessDate 查询考核记录 - Map regionAssessExtMap = new HashMap<>(); - List cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate); - cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt)); - for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) { - if (regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())) { - CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember()); - if (cuRegionAssessExt.getPkId() >= 3) { - continue; - } - } - cancelRegionList.add(cuMemberRetailRegion.getPkId()); - } - } - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - private void saveCuRegionAssess(Map regionAssessMap, List regionAssessDetailList) { List longs = baseMapper.batchQueryCuRegionAssessSeq(regionAssessMap.size()); int i = 0; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml index 94f79635..740c60cc 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml @@ -161,26 +161,5 @@ and cm.member_name = #{regionAssessParam.memberName}
- - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java index 28296633..75e19813 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java @@ -25,7 +25,6 @@ import com.hzs.member.account.service.ICuMemberAccountService; import com.hzs.member.account.service.ICuMemberBankService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.service.ICuMemberWithdrawService; -import com.hzs.member.account.vo.CuMemberBankVO; import com.hzs.member.account.vo.CuMemberWithdrawVO; import com.hzs.member.account.vo.CuMemberWithdrawalAddVO; import com.hzs.member.base.service.ICuMemberService; @@ -42,9 +41,6 @@ import java.util.List; /** * 会员提现表 前端控制器 - * - * @author hzs - * @since 2022-09-06 */ @RestController @RequestMapping("/api/withdraw") @@ -286,14 +282,6 @@ public class ApiCuMemberWithdrawController extends BaseController { return balance; } - - @PostMapping("/auto") - public AjaxResult autoWithdrawInfo() { - cuMemberWithdrawService.autoWithdraw(); - return AjaxResult.success(); - } - - /** * 是否为整数值 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java index 2319e26a..72fd3e54 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java @@ -45,15 +45,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ Integer updateMemberAccount(CuMemberAccount cuMemberAccount); - - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkCountry(@Param("pkCountry") Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -176,14 +167,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List selectMemberAccountByPkMember(@Param(value = "pkMembers") List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(@Param("memberIdList") List memberIdList); - /** * 根据用户ID查询钱包余额 * @@ -201,33 +184,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(@Param("pkCountry") Integer pkCountry, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(@Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod, @Param("pkCountry") Integer pkCountry); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(@Param("bonusList") List bonusList, - @Param("operateType") int operateType, - @Param("pkModified") Long pkModified); - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java index 694a88ea..2b3610ab 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberWithdraw; import com.hzs.common.domain.member.account.CuMemberWithdrawExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员提现表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberWithdrawMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java index 9d6ed75e..46563624 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java @@ -1,41 +1,22 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; import com.hzs.member.account.IMemberJobServiceApi; import com.hzs.member.account.service.ICuMemberAccountDetailService; -import com.hzs.member.account.service.ICuMemberRechargeService; -import com.hzs.member.account.service.ICuMemberWithdrawService; import com.hzs.member.base.mapper.DeleteGarbageDataMapper; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; - /** * 会员模块定时任务服务提供 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:40 - * @Classname: IMemberJobServiceProvider - * @Package_name: com.hzs.member.account.provider */ - @Slf4j @DubboService public class IMemberJobServiceProvider implements IMemberJobServiceApi { @Autowired private ICuMemberAccountDetailService memberAccountDetailService; - - @Autowired - private ICuMemberWithdrawService memberWithdrawService; - - @Autowired - private ICuMemberRechargeService memberRechargeService; - @Autowired private DeleteGarbageDataMapper deleteGarbageDataMapper; @@ -51,24 +32,6 @@ public class IMemberJobServiceProvider implements IMemberJobServiceApi { return R.ok(); } - - @Override - public R automaticWithdrawal() { - try { - memberWithdrawService.autoWithdraw(); - } catch (Exception e) { - log.info("自动提现报错:", e); - return R.fail(e.getMessage()); - } - return R.ok(); - } - - - @Override - public R selectRechargeTotalAmount(Date startDate, Date endDate) { - return R.ok(memberRechargeService.selectRechargeTotalAmount(startDate, endDate)); - } - @Override public R autoDeleteGarbageData() { deleteGarbageDataMapper.deleteMemberAwards(30); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java index e869194c..60d51718 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java @@ -24,7 +24,6 @@ public interface ICuMemberAccountService extends IService { */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); - /** * 根据会员编码获取余额 * @@ -34,7 +33,6 @@ public interface ICuMemberAccountService extends IService { */ BigDecimal selectBalanceByMemberCode(Long pkMember, Integer accountType); - /** * 更新用户余额 * @@ -92,14 +90,6 @@ public interface ICuMemberAccountService extends IService { */ List selectAccountDetail(Long pkMember, Integer pkCountry); - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkcountry(Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -229,14 +219,6 @@ public interface ICuMemberAccountService extends IService { */ List selectMemberAccountByPkMember(List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(List memberIdList); - /** * 根据会员姓名与会员编号查询账户信息 * @@ -248,20 +230,6 @@ public interface ICuMemberAccountService extends IService { List selectFrozenAmountExport(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(Integer pkCountry, Integer startPeriod, Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(Integer startPeriod, Integer endPeriod, Integer pkCountry); - /** * 根据用户ID查询账户余额信息 * @@ -271,18 +239,6 @@ public interface ICuMemberAccountService extends IService { */ CuMemberRechargeAccountParam findMemberBalanceById(Integer pkAccount, Long pkMember); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified); - - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java index 2b957eb8..d951c0db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java @@ -1,6 +1,5 @@ package com.hzs.member.account.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.domain.member.account.CuMemberAccountRechargeExt; @@ -14,21 +13,14 @@ import com.hzs.member.account.vo.CuMemberRechargeDetailVO; import com.hzs.member.account.vo.CuMemberRechargeVO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** - *

* 会员充值表 服务类 - *

- * - * @author hzs - * @since 2022-09-08 */ public interface ICuMemberRechargeService extends IService { - /** * 根据批次查询充值信息 * @@ -37,7 +29,6 @@ public interface ICuMemberRechargeService extends IService { */ List selectRechargeByBatch(String batch); - /** * 会员批量充值 * @@ -46,7 +37,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer saveBatchMemberRecharge(CuMemberBatchRechargeParam batchRechargeParam); - /** * 根据充值单号更新审核状态信息 * @@ -63,7 +53,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer submitAuditMemberRecharge(MemberAccountAudit memberAccountAudit); - /** * 审核通过后插入交易明细和用户余额表 * @@ -107,7 +96,6 @@ public interface ICuMemberRechargeService extends IService { */ Boolean preCharge(String rechargeAmount, Integer pkCountry, Long pkMember, String rechargeCode, Long pkCreator); - /** * 会员端在线支付更新审批状态 * @@ -126,7 +114,6 @@ public interface ICuMemberRechargeService extends IService { */ CuMemberRecharge getCuMemberRechargeByRechargeCode(String rechargeCode); - /** * 根据充值单号与用户ID查询充值信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java index f1cabfab..6e5b6219 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java @@ -25,14 +25,6 @@ public interface ICuMemberWithdrawService extends IService { */ List getWithdrawTimes(Long pkMember); - /** - * 根据申请单号查询提现信息 - * - * @param code 单号 - * @return CuMemberWithdraw - */ - CuMemberWithdraw selectWithdrawByCode(String code); - /** * 根据批次号查询审核记录 * @@ -90,15 +82,6 @@ public interface ICuMemberWithdrawService extends IService { */ Integer withdrawPaymentPositiveByPkId(CuMemberWithdrawVO memberWithdrawVO); - /** - * 获取余额 - * - * @param pkMember 用户ID - * @param pkCountry 国家ID - * @return BigDecimal - */ - BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType); - /** * 计算本次提现应该交的个税 * @@ -128,11 +111,6 @@ public interface ICuMemberWithdrawService extends IService { */ BigDecimal computeRounding(BdWithdrawal bdWithdrawal, BigDecimal cashAmount); - /** - * 自动提现 - */ - void autoWithdraw(); - /** * 获取账户余额 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java index 48d27424..80c7ba89 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java @@ -324,11 +324,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryMemberAccountByPkcountry(Integer pkCountry) { - return baseMapper.queryMemberAccountByPkCountry(pkCountry); - } - @Override public List queryMemberAccountByMemberCode(String memberCode, List accountTypes, Integer pkCountry) { List pkAccounts = new ArrayList<>(); @@ -610,12 +605,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryAccountAndMemberInfo(List memberIdList) { - return baseMapper.queryAccountAndMemberInfo(memberIdList); - } - @Override public Object[] queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO) { CuMemberAccountExtVO cuMemberAccountExtVO; @@ -784,28 +773,12 @@ public class CuMemberAccountServiceImpl extends ServiceImpl cuMemberRechargeAccountParams = baseMapper.queryMemberAccountByMemberCode(null, Collections.singletonList(pkAccount), pkMember); return CollUtil.isNotEmpty(cuMemberRechargeAccountParams) ? cuMemberRechargeAccountParams.get(0) : null; } - - @Override - public Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified) { - return baseMapper.batchUpdateBonusAccountByPkMember(bonusList, operateType, pkModified); - } - @Override public List selectMemberBonusAccountBySourceCode(String sourceCode) { return baseMapper.selectMemberBonusAccountBySourceCode(sourceCode); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java index 7288bb72..0da7c4cd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java @@ -20,8 +20,6 @@ import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberWithdraw; import com.hzs.common.domain.member.account.CuMemberWithdrawExt; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; import com.hzs.common.security.utils.SecurityUtils; @@ -31,15 +29,12 @@ import com.hzs.member.account.dto.MemberAccountAudit; import com.hzs.member.account.mapper.CuMemberWithdrawMapper; import com.hzs.member.account.param.CuMemberWithdrawRejectParam; import com.hzs.member.account.service.*; -import com.hzs.member.account.vo.CuMemberBankVO; import com.hzs.member.account.vo.CuMemberPetitionVO; import com.hzs.member.account.vo.CuMemberTradeVO; import com.hzs.member.account.vo.CuMemberWithdrawVO; import com.hzs.member.base.service.ICuMemberService; import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.IWithdrawalAutoServiceApi; import com.hzs.system.config.IWithdrawalProcessServiceApi; -import com.hzs.system.config.IWithdrawalServiceApi; import com.hzs.system.config.IWithdrawalTaxServiceApi; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -53,18 +48,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.time.DayOfWeek; -import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; /** - *

* 会员提现表 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service @Slf4j @@ -89,16 +77,8 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("WITHDRAW_CODE", code); - queryWrapper.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); - return getOne(queryWrapper); - } - - @Override public List selectWithdrawByBatch(String batchNO) { //根据单号查询充值信息 @@ -255,9 +225,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl withdrawalConfigs = withdrawalServiceApi.queryWithdrawalByIsAuto().getData(); - if (CollUtil.isNotEmpty(withdrawalConfigs)) { - for (BdWithdrawal withdrawal : withdrawalConfigs) { - Integer pkCountry = withdrawal.getPkCountry(); - if (Boolean.TRUE.equals(isWithdrawalCycle(pkCountry))) { - //查询提现到的币种 - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - Integer accountsType = bdAccounts.get(0).getFieldValue(); - //查询会员币种余额、锁定金额 - List cuMemberAccountExts = cuMemberAccountService.queryMemberAccountByPkcountry(pkCountry); - memberWithDrawal(withdrawal, cuMemberAccountExts, bdAccounts, accountsType, pkCountry); - } - } - } - } - - /** - * 会员提现 - * - * @param withdrawal 提现配置信息 - * @param cuMemberAccountExts 会员币种表 - * @param bdAccounts 币种信息 - * @param accountsType 配置的提现币种 - * @param pkCountry 国家ID - */ - public void memberWithDrawal(BdWithdrawal withdrawal, List cuMemberAccountExts, List bdAccounts, Integer accountsType, Integer pkCountry) { - //会员ID 银行卡ID - Long pkMember; - Long pkBank; - //余额 锁定金额 - BigDecimal balance, lockAccount; - //最高自动提现金额 - BigDecimal upperBound = withdrawal.getUpperBound(); - //最低自动提现金额 - BigDecimal lowerBound = withdrawal.getLowerBound(); - //配置文件中的提现次数 - Integer withdrawalNumber = withdrawal.getWithdrawalNumber(); - if (CollUtil.isNotEmpty(cuMemberAccountExts)) { - //查询每个会员正在参与审核的次数 - List withdrawTimesByPkCountry = baseMapper.getWithdrawTimesByPkCountry(pkCountry); - Map withdrawTimes = withdrawTimesByPkCountry.stream().collect(Collectors.toMap(CuMemberWithdrawExt::getPkMember, CuMemberWithdrawExt::getTimes)); - //汇率 - CurrencyDTO currencyDTO = cuMemberBaseService.getCurrency(pkCountry); - for (CuMemberAccountExt cuMemberAccountExt : cuMemberAccountExts) { - pkBank = cuMemberAccountExt.getPkBank(); - //是否绑定银行卡 - CuMemberBankVO memberBank = cuMemberBankService.selectCuMemberBankById(pkBank); - log.info("----------是否绑定银行卡"); - if (null != memberBank) { - log.info("----------绑定银行卡"); - pkMember = cuMemberAccountExt.getPkMember(); - //获取余额 - balance = getAvailableBalance(accountsType, cuMemberAccountExt); - //是否取整 - balance = computeRounding(withdrawal, balance); - // 提现金额在配置金额之间 - if (balance.compareTo(lowerBound) > 0 && balance.compareTo(upperBound) < 0) { - log.info("----------提现开始"); - Integer times = withdrawTimes.get(pkMember) == null ? 0 : withdrawTimes.get(pkMember); - //比较正在提现次数与配置的最大提现次数 - if (times <= withdrawalNumber) { - //本次应缴个税 - BigDecimal payIncomeTax = computeIncomeTaxValue(pkMember, balance, pkCountry, lowerBound); - //手续费金额 - BigDecimal serviceChargeAmount = computeServiceCharge(pkCountry, balance); - BigDecimal issuedAmount = balance.subtract(payIncomeTax).subtract(serviceChargeAmount); - String code = CommonUtil.createSerialNumber(EOrderPrefix.WITHDRAWAL_CODE.getValue()); - CuMember member = cuMemberService.getMember(pkMember); - String remarks = member.getMemberCode() + "自动申请提现" + balance.toString(); - CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) - .pkAccount(bdAccounts.get(0).getPkId()).pkBank(pkBank) - .pkRate(currencyDTO.getPkId()).cashAmount(balance) - .serviceCharge(serviceChargeAmount).incomeTax(payIncomeTax) - .issuedAmount(issuedAmount).withdrawCode(code).remarks(remarks).build(); - cuMemberWithdraw.setApproveState(EApproveStatus.WAIT_SUBMIT.getValue()); - cuMemberWithdraw.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cuMemberWithdraw.setPkCountry(pkCountry); - cuMemberWithdraw.setPkCreator(pkMember); - //保存提现、交易流水、余额信息 - baseMapper.insert(cuMemberWithdraw); - this.updateTradeAndBalancd(cuMemberWithdraw, EOperationMethod.INSERT); - } - } - } - } - } - } - - /** * 获取余额 * @@ -487,40 +362,6 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl listR = withdrawalAutoServiceApi.queryWithdrawalAuto(pkCountry).getData(); - for (BdWithdrawalAuto withdrawalAuto : listR) { - Integer withdrawalCycle = withdrawalAuto.getWithdrawalCycle(); - if (dayOfWeekNum.equals(withdrawalCycle)) { - return true; - } - - } - return false; - } - - @Override - public BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType) { - //提现账户 - if (null == accountsType) { - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - accountsType = bdAccounts.get(0).getFieldValue(); - } - //查询账户余额 - return cuMemberAccountService.selectBalanceByMemberCode(pkMember, accountsType); - } - @Override public BigDecimal computeIncomeTaxValue(Long pkMember, BigDecimal cashAmount, Integer pkCountry, BigDecimal minAmount) { //获取个税配置 @@ -774,13 +615,13 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); @@ -793,7 +634,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl cuMemberWithdrawList = baseMapper.selectList(wrapper); Integer pkCountry = SecurityUtils.getPkCountry(); - if(CollUtil.isNotEmpty(cuMemberWithdrawList)){ + if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { for (CuMemberWithdraw cuMemberWithdraw : cuMemberWithdrawList) { BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder() .tradeCode(cuMemberWithdraw.getWithdrawCode()).pkCountry(pkCountry) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java index afcaece0..21579e39 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java @@ -7,15 +7,11 @@ import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; + import java.io.Serializable; /** * 会员银行卡VO - * @Description: - * @Author: ljc - * @Time: 2023/2/9 15:31 - * @Classname: CuMemberBankVO - * @Package_name: com.hzs.member.account.vo */ @Data @AllArgsConstructor @@ -66,5 +62,5 @@ public class CuMemberBankVO implements Serializable { /** * logo图片 */ - private String logo; + private String logo; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java index 011c58ac..b561e5d0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java @@ -54,13 +54,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 重新判断收益区域数据 - * - * @return - */ - List listCheckRegionMember(); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java index 8e78ffa0..540a0fb8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java @@ -19,17 +19,6 @@ public class MemberRetailProvider implements IMemberRetailApi { @Autowired private ICuMemberRetailRegionService iCuMemberRetailRegionService; - @Override - public R checkRegion() { - try { - iCuMemberRetailRegionService.checkRegion(); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理收益区域异常", e); - return R.fail(e.getMessage()); - } - } - @Override public R cancelRegion(List pkIdList) { try { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 464ed89e..16c34307 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -7,18 +7,9 @@ import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; import java.util.List; -import java.util.Map; public interface ICuMemberRetailAchieveService extends IService { - /** - * 查询会员盒数 - * - * @param pkMember 会员ID - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberSmallBox(Long pkMember, Integer pkCountry, Integer systemType); - /** * 查询会员大小区业绩 * @@ -78,15 +69,6 @@ public interface ICuMemberRetailAchieveService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 定时处理收益区域 - */ - void checkRegion(); - /** * 取消收益区域 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index 549489da..e7ec2e40 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; @@ -22,7 +21,6 @@ import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; @@ -51,64 +49,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable) - .memberRetailSTable(getTableSName()).memberCode(cuMember.getMemberCode()) - .pkMember(pkMember).pkMemberList(pkMemberList).build(); - - //查询会员是否激活 - // Integer enableStatus = baseMapper.selectMemberActiveState(memberAchieveVO); - Integer enableStatus = cuMember.getIsActivate(); - if (null != enableStatus && enableStatus.equals(EYesNo.YES.getIntValue())) { - //查询总盒数 - BigDecimal totalBox = baseMapper.selectMemberTotalBox(memberAchieveVO); - if (null != totalBox) { - BigDecimal maxBox = BigDecimal.ZERO; - //查询是否配置注水 - Integer total = baseMapper.selectWaterInjection(cuMember.getMemberCode()); - if (null != total && total > 0) { - //查询注水最大盒数 - maxBox = baseMapper.selectMemberBoxWaterInjection(memberAchieveVO); - } else { - //查询无注水最大盒数 - maxBox = baseMapper.selectMemberBoxNoWaterInjection(memberAchieveVO); - } -// memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox - maxBox).build(); - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox.subtract(maxBox)).build(); - //总盒数大于2800的时候显示2800 - GradeDTO lastGrate = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - //配置中的总盒数 - BigDecimal totalBoxConfig = lastGrate.getBoxTotal(); -// BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox() > totalBoxConfig ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox().compareTo(totalBoxConfig) > 0 ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - memberRetailAchieveVO.setTotalBox(totalBoxMax); - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - return memberRetailAchieveVO; - } - - @Override public CuMemberRetailAchieveVO selectMemberAchieve(Long pkMember, Integer pkCountry, Integer systemType) { //查询会员昨日业绩 @@ -143,18 +83,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl selectTableNameIsExist(List tableNames) { - return baseMapper.selectTableNameIsExist(tableNames); - } - - /** * 转化万单位、汇率换算 * @@ -448,64 +360,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - // 2025年6月11日 取伞下 + 自己的ID -// List pkMemberList = baseMapper.selectSubMemberIdByRootMember(pkMember, systemType); - //根据国家查汇率 - BigDecimal rate = iCuMemberBaseService.getCurrency(pkCountry).getInExchangeRate(); - //查询自己业绩 - List memberSelfAchieveList = new ArrayList<>(); - - //会员业绩 - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable).pkMember(pkMember).systemType(systemType).build(); - CuMemberRetailAchieveVO orderAchieveVO = baseMapper.selectMemberOrderSumAchieveByPkMember(memberAchieveVO); - if (null != orderAchieveVO && orderAchieveVO.getArealPv().compareTo(BigDecimal.ZERO) > 0) { - orderAchieveVO.setPkMember(pkMember); - memberSelfAchieveList.add(orderAchieveVO); - } - //查询伞下业绩 - if (CollUtil.isNotEmpty(pkMemberList)) { - List memberPushAchieveList = getMemberPushSumAchieve(pkMemberList, memberRetailTable, memberSecondTable, systemType); - if (CollUtil.isNotEmpty(memberPushAchieveList)) { - memberSelfAchieveList.addAll(memberPushAchieveList); - } - } - if (CollUtil.isEmpty(memberSelfAchieveList)) { - return CuMemberRetailAchieveVO.builder().smallAreaPv(BigDecimal.ZERO).bigArealPv(BigDecimal.ZERO).build(); - } - return getMemberBigAndSmallAchieve(memberSelfAchieveList, rate); - } - - - /** - * 查询会员直推业绩(累计) - * - * @param pkMemberList 直推会员ID - * @return CuMemberAchieveVO - */ - private List getMemberPushSumAchieve(List pkMemberList, String memberRangeTable,String memberSecondTable, Integer systemType) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() - .memberRetailTable(memberRangeTable) - .memberRetailSTable(memberSecondTable) - .pkMemberList(pkMemberList).systemType(systemType).build(); - return baseMapper.selectMemberSumAchieve(memberAchieveVO); - } - - /** * 查询不前时间是否是本月第一天 * @@ -514,11 +368,9 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl implements ICuMemberRetailRegionService { - @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired private RedisService redisService; @@ -99,80 +94,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl memberList = baseMapper.listCheckRegionMember(); - - if (CollectionUtil.isNotEmpty(memberList)) { - memberList.parallelStream().forEach(tmpMember -> { - if (ENoticeWebsiteType.ADMIN.getValue() == tmpMember.getSource()) { - log.info("定时任务区域有效, 会员 {} 后台配置,不取消收益区域", tmpMember.getPkId()); - return; - } - - // 当前时间 - Date nowDate = new Date(); - - if (tmpMember.getGradeValue() < EGrade.S_VIP.getValue()) { - // 会员等级不足V5,需要关掉收益区域 - log.info("定时任务区域有效, 会员 {} 等级 {} 不足取消收益区域", tmpMember.getPkId(), tmpMember.getGradeValue()); - this.update(Wrappers.lambdaUpdate() - .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) - .set(CuMemberRetailRegion::getModifiedTime, nowDate) - ); - } else { -// // 获取小市场业绩 -// CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(tmpMember.getPkId(), CountryConstants.CHINA_COUNTRY, tmpMember.getSystemType()); -// if (retailAchieve.getSmallAreaPv().compareTo(BigDecimal.ZERO) <= 0) { -// // 正常有区域业绩肯定达标,由2万突然变0基本不可能,此处暂时不处理 -// log.info("定时任务区域有效, 会员 {} 小市场业绩归0,暂时不取消收益区域", tmpMember.getPkId()); -// return; -// } -// // 2025.02.07 确认需求,如果是历史已经升上去的,还是走老逻辑只校验小市场 -// String checkDate = "2025-02-10 00:00:00"; -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// checkDate = "2025-02-07 00:00:00"; -// } -// if (tmpMember.getCreationTime().compareTo(DateUtils.parseDateOne(checkDate, DateUtils.YYYY_MM_DD_HH_MM_SS)) > 0) { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// || retailAchieve.getBigArealPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// ) { -// // 大市场、小市场业绩小于2万,需要取消收益区域 -// log.info("2.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } else { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0) { -// // 小市场业绩小于2万,需要取消收益区域 -// log.info("1.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } - } - }); - } - } - @Override public void cancelRegion(List pkIdList) { this.update(Wrappers.lambdaUpdate() diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml index 5c02d7bc..daf4be14 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml @@ -235,19 +235,6 @@ - - - select a.pk_member, @@ -1064,25 +1004,6 @@ - - - - - - MERGE INTO cu_member_account m - USING - ( - - select #{item.pkMember} pk_member, - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - - - #{item.account4} account4, - #{item.withdrawAccount4} withdrawAccount4, - - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - #{item.withdrawAccount4} withdrawAccount4, - - FROM DUAL - - ) t - ON ( t.pk_member=m.pk_member and m.pk_member in - - #{item.pkMember} - ) - WHEN MATCHED THEN - UPDATE SET - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - m.MODIFIED_TIME = sysdate,m.pk_modified = #{pkModified} - - - - - - - select ${to} - from BD_TRANSACTION t - where DEL_FLAG = 0 - and IS_CACHE = 1 - and ${from} = #{content} - and ${to} is not null - and rownum = 1 - - select @@ -361,15 +275,9 @@ a.pk_country, a.pk_settle_country, a.enable_status, - new_box_num, - consume_box_num, - month_box_num, new_consume_pv, consume_pv, month_consume_pv, - team_new_box_num, - team_box_num, - team_month_box_num, team_new_pv, team_consume_pv, team_month_pv, @@ -383,13 +291,8 @@ bw.awards_value, bw.awards_name, bwa.awards_value share_awards_value, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, - a.all_team_new_box_num, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_new_pv, a.all_team_consume_pv, a.all_team_month_pv, @@ -437,24 +340,14 @@ a.income_status, a.pk_country, a.pk_settle_country, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, a.system_type, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_consume_pv, a.all_team_month_pv, - new_box_num, - consume_box_num, - month_box_num, new_consume_pv, consume_pv, month_consume_pv, - team_new_box_num, - team_box_num, - team_month_box_num, team_new_pv, team_consume_pv, team_month_pv, @@ -594,13 +487,8 @@ bw.awards_value, bw.awards_name, bwa.awards_value share_awards_value, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, - a.all_team_new_box_num, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_new_pv, a.all_team_consume_pv, a.all_team_month_pv, @@ -698,33 +586,21 @@ cm.pk_vertex, nvl(b.pk_rate, bt.pk_id) pk_rate, nvl(cm.is_activate, a.enable_status) enable_status, - a.new_box_num, - nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, - nvl(b.month_box_num, 0) + nvl(a.new_box_num, 0) month_box_num, a.new_consume_pv, nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, - a.team_new_box_num, - nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, - nvl(b.team_month_box_num, 0) + nvl(a.team_new_box_num, 0) team_month_box_num, a.team_new_pv, nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, a.team_new_amount, nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, - nvl(b.big_box_num, 0) big_box_num, - nvl(b.small_box_num, 0) small_box_num, nvl(b.big_team_pv, 0) big_team_pv, nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - a.all_new_box_num, a.all_new_consume_pv, - a.all_team_new_box_num, a.all_team_new_pv, - nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num, - nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv, + nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv, bg.grade_value, bg.grade_name, @@ -769,13 +645,7 @@ cm.pk_parent, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, - nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, - nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, - nvl(b.big_box_num, 0) big_box_num, - nvl(b.small_box_num, 0) small_box_num, - nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num, - nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv, + nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv from cu_member cm left join ${secondTableName} a @@ -789,27 +659,17 @@ - SELECT cmsr.pk_id pkId, - cmsr.member_code memberCode, - cmsr.team_box_num teamBoxNum, - cmsr.small_box_num smallBoxNum, - cmsr.total_team_pv totalTeamPv, - cmsr.small_area_pv smallAreaPv, - cmsp.SETTLE_DATE settleDate - FROM CU_MEMBER_SPE_RETAIL cmsr - INNER JOIN CU_MEMBER_SETTLE_PERIOD cmsp ON cmsp.pk_id = cmsr.period - where cmsr.DEL_FLAG = 0 - - and cmsr.pk_id=#{pkId} - - - and cmsr.SYSTEM_TYPE=#{systemType} - - - and cmsr.pk_Country=#{pkCountry} - - - and cmsr.member_code like #{memberCode} || '%' - - - and cmsp.SETTLE_DATE >= to_date(#{startDate}, 'yyyy-mm-dd') - - - and cmsp.SETTLE_DATE <= to_date(#{endtDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - - order by cmsr.CREATION_TIME desc - - - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java index f5bcd896..dc5b0b8c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java @@ -1,6 +1,5 @@ package com.hzs.retail.member.controller.api; - import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -18,19 +17,12 @@ import java.util.List; /** * 会员首页 - * - * @Description: - * @Author: ljc - * @Time: 2023/5/4 21:06 - * @Classname: ApiHomePageController - * @Package_name: com.hzs.member.base.controller.api */ @Slf4j @RequestMapping("/api/retail-member") @RestController public class ApiRetailHomePageController extends BaseController { - @Autowired private ICuMemberRetailAchieveService retailAchieveService; @@ -45,20 +37,16 @@ public class ApiRetailHomePageController extends BaseController { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); Integer systemType = SecurityUtils.getSystemType(); - if(ObjectUtil.isEmpty(systemType)){ + if (ObjectUtil.isEmpty(systemType)) { systemType = 2; } CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(pkMember, pkCountry, systemType); CuMemberRetailAchieveVO vo = CuMemberRetailAchieveVO.builder() - .totalBox(result.getTotalBoxNum()) - .bigAreaBox(result.getBigRangeTotalBoxNum()) - .smallAreaBox(result.getSmallRangeTotalBoxNum()) .totalSumPv(result.getTotalPv()) .bigArealPv(result.getBigRangeTotalPv()) .smallAreaPv(result.getSmallRangeTotalPv()) .build(); return AjaxResult.success(vo); -// return AjaxResult.success(retailAchieveService.selectMemberSmallBox(pkMember, pkCountry, systemType)); } /** @@ -134,52 +122,6 @@ public class ApiRetailHomePageController extends BaseController { return AjaxResult.success(retailAchieveService.selectMemberBigSmallAchieveDetail(pkMember, pkCountry, systemType)); } - - /** - * 查询会员大小区盒数(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-small-box") - public AjaxResult selectMemberBigSmallBox(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigSmallBox(param)); - } - - - /** - * 查询大区盒数列表(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-box-list") - public AjaxResult selectMemberBigBoxList(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigBoxList(param)); - } - - /** - * 查询会员小区盒数列表(市场动态) - * - * @return AjaxResult - */ - @PostMapping("/small-box-list") - public TableDataInfo selectMemberSmallBoxList(@RequestBody CuMemberRetailAchieveVO cuMemberRetailAchieveVO) { - Long pkMember = SecurityUtils.getUserId(); - cuMemberRetailAchieveVO.setPkMember(pkMember); - Integer systemType = SecurityUtils.getSystemType(); - cuMemberRetailAchieveVO.setSystemType(systemType); - cuMemberRetailAchieveVO.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberRetailAchieveVO.setPkMemberList(retailAchieveService.selectDirectPushByPkMember(pkMember, systemType)); - startPage(); - List retailAchieveVOList = retailAchieveService.selectMemberSmallBoxList(cuMemberRetailAchieveVO); - return getDataTable(retailAchieveVOList); - } - /** * 市场动态 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 34c86e7c..04fc622d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -9,9 +9,7 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.msg.AreaConstants; import com.hzs.common.core.enums.EGrade; @@ -26,7 +24,6 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.service.ICuMemberService; import com.hzs.retail.member.param.RetailMemberRegionParam; @@ -40,11 +37,9 @@ import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; -import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -65,14 +60,12 @@ public class RetailMemberController extends BaseController { @Autowired private ICuMemberRetailRegionService iCuMemberRetailRegionService; @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired private ICuMemberRetailAchieveService retailAchieveService; @DubboReference IAreaServiceApi iAreaServiceApi; @DubboReference - private IGradeServiceApi gradeServiceApi; + IGradeServiceApi gradeServiceApi; /** * 获取登录会员信息 @@ -87,6 +80,7 @@ public class RetailMemberController extends BaseController { } return AjaxResult.success(retailMemberInfoVO); } + @GetMapping("/get-shared-image") public AjaxResult getSharedImage() { JSONObject result = new JSONObject(); @@ -136,46 +130,26 @@ public class RetailMemberController extends BaseController { .regionStatus(EYesNo.YES.getIntValue()) .build()); } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ + if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()) { + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if (notFirst) { + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if (ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >= 0 + ) { + return AjaxResult.success(RetailMemberRegionVO.builder() .regionStatus(EYesNo.YES.getIntValue()) .build()); } - }else{ - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - }else{ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - } + } else { + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } // if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) // && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 // && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 @@ -185,7 +159,6 @@ public class RetailMemberController extends BaseController { // .regionStatus(EYesNo.YES.getIntValue()) // .build()); // } - } } // 达到条件,但是没有选择区域,需要弹窗选择区域 // 验证伞下业绩+自己是否累计30W @@ -238,52 +211,27 @@ public class RetailMemberController extends BaseController { if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { canSet = true; } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ + if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean notFirst = countNum > 0; + if (notFirst) { + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if (ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >= 0 + ) { canSet = true; } - }else{ - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); - int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean notFirst = countNum > 0; - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - canSet = true; - } - }else{ - canSet = true; - } - } -// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 -// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 -// ){ -// canSet = true; -// } + } else { + canSet = true; } } } - if(!canSet){ + if (!canSet) { return AjaxResult.error("还未达到选择收益区域条件"); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java index 9b8436ad..00746509 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java @@ -8,7 +8,6 @@ import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; import com.hzs.retail.member.vo.MarketDynamicsDetailVO; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.List; /** @@ -23,14 +22,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectDirectPushByPkMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); - /** - * 查询大区用户信息 - * - * @param cuMemberAchieveVO - * @return - */ - CuMemberRetailAchieveVO selectBigAreaByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询表名是否存在 * @@ -56,32 +47,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectMemberParentByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** - * 查询会员没有注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxNoWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员最大盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberTotalBox(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询会员业绩 * @@ -130,14 +95,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper getMarketDynamicsDetail(@Param("param") MarketDynamicsQueryDateParam param); - /** - * 查询当天自己新增盒数 - * - * @param param 入参 - * @return Integer - */ - BigDecimal selectSelfNewBox(CuMemberRetailAchieveVO param); - - /** - * 查询会员大小区盒数(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigSmallBox(CuMemberRetailAchieveVO param); - - - /** - * 查询大区盒数列表(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param); - - /** - * 查询会员小区盒数列表(市场动态) - * - * @param param 入参 - * @return List - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - List selectSubMemberIdByRootMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java index 85e209b3..4eea64c3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java @@ -39,7 +39,7 @@ public class MarketDynamicsQueryDateParam implements Serializable { private Integer pageNum = 1; private Integer pageSize = 10; /** - * 查询类型 1-盒数, 2-业绩 + * 查询类型 2-业绩 */ private Integer queryType; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 16c34307..2545fd66 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -18,14 +18,6 @@ public interface ICuMemberRetailAchieveService extends IService - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - /** * 获取会员结算明细 * @param pkMember diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index e7ec2e40..8673f89c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -20,9 +20,7 @@ import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; -import com.hzs.system.config.IGradeServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -192,18 +190,17 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl memberAchieveList, BigDecimal rate) { //查询最大业绩 - if(ObjectUtil.isEmpty(memberAchieveList)){ + if (ObjectUtil.isEmpty(memberAchieveList)) { return null; } for (CuMemberRetailAchieveVO cuMemberRetailAchieveVO : memberAchieveList) { - if(ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())){ + if (ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())) { cuMemberRetailAchieveVO.setArealPv(BigDecimal.ZERO); } } CuMemberRetailAchieveVO maxAchieveVO = memberAchieveList.stream().max(Comparator.comparing(CuMemberRetailAchieveVO::getArealPv)).get(); //查询小区业绩 BigDecimal smallAreaPv = memberAchieveList.stream().filter(achieveVO -> !achieveVO.getPkMember().equals(maxAchieveVO.getPkMember())).map(vo -> null == vo.getArealPv() ? BigDecimal.ZERO : vo.getArealPv()).reduce(BigDecimal.ZERO, BigDecimal::add); -// return CuMemberRetailAchieveVO.builder().smallAreaPv(getBigDecimal(smallAreaPv, rate)).pkBigMember(maxAchieveVO.getPkMember()).bigArealPv(getBigDecimal(maxAchieveVO.getArealPv(), rate)).build(); return CuMemberRetailAchieveVO.builder() .smallAreaPv(smallAreaPv) .pkBigMember(maxAchieveVO.getPkMember()) @@ -212,17 +209,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList, String memberRangeTable) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRangeTable).pkMemberList(pkMemberList).build(); - return baseMapper.selectBigAreaByPkMember(memberAchieveVO); - } - /** * 查询会员直推业绩 @@ -242,8 +228,8 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember) { - //查询参数 - getParam(param); - //查询自己的业绩 - BigDecimal selfBox = baseMapper.selectSelfNewBox(param); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigSmallBox(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); -// BigDecimal selfNewBox = null == selfBox ? 0 : selfBox; - BigDecimal selfNewBox = BigDecimal.ZERO; - if(ObjectUtil.isNotEmpty(selfBox)){ - selfNewBox = selfBox; - } - //判断大小市场增加自己新增的盒数 - if (!pkMember.equals(pkBigMember)) { -// cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox().add(selfNewBox)); - } else { -// cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox().add(selfNewBox)); - } - } - return cuMemberRetailAchieveVO; - } - return CuMemberRetailAchieveVO.builder().bigAreaBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - - - /** - * 获取会员金额、业绩、盒数表 - * - * @return String - */ - private String getAchieveAndBoxTableName(String date) { - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(date); - if(ObjectUtil.isNotEmpty(cuMemberSettlePeriod)){ - int period = cuMemberSettlePeriod.getPkId(); - return TableNameConstants.CU_MEMBER_AMOUNT_BOX + period; - } - return ""; - } - - @Override - public CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - if (null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - param.setPkMemberList(Collections.singletonList(pkBigMember)); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigBoxList(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); - } - return cuMemberRetailAchieveVO; - } - return null; - } - - - private CuMemberRetailAchieveVO getParam(CuMemberRetailAchieveVO param) { - //上月最后一天的表名 - String upLastMonth = DateUtils.beforeMonthLastDateStr(new Date()); - param.setRetailUpMonthTable(getAchieveAndBoxTableName(upLastMonth)); - //昨天的表名 - String yesterdayTableName = LocalDate.now().minus(1, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setMemberRetailTable(getAchieveAndBoxTableName(yesterdayTableName)); - //前天的表名 - String beforeYesterdayTableName = LocalDate.now().minus(2, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setBeforeYesterdayTableName(getAchieveAndBoxTableName(beforeYesterdayTableName)); - //是否是当月第一天 - int isFirst = isFirstDayOfMonth() ? EYesNo.YES.getIntValue() : EYesNo.NO.getIntValue(); - param.setIsFirst(isFirst); - //当天表名 - param.setMemberRetailSTable(getTableSName()); - return param; - } - - @Override - public List selectMemberSmallBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - List pkMemberList = param.getPkMemberList(); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - //删除大区后,如果为空,则不查询 - if (CollUtil.isNotEmpty(pkMemberList)) { - return baseMapper.selectMemberSmallBoxList(param); - } - } - return new ArrayList<>(); - } @Override public CuMemberRetailDataStatisticsResultVO getRetailDataStatisticsDetail(Long pkMember, Integer pkCountry, Integer systemType) { @@ -539,7 +398,7 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if(CollUtil.isEmpty(pkMemberList)){ - return new PageResult(0, new ArrayList<>()); + if (CollUtil.isEmpty(pkMemberList)) { + return new PageResult<>(0, new ArrayList<>()); } param.setPkIdList(pkMemberList); List detailVOList = baseMapper.getMarketDynamicsDetail(param); @@ -568,40 +427,11 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl detailVOList, CuMember cuMember){ + private static final Long SELF_VIRTUAL_ID = -1000L; + private static final String SELF_VIRTUAL_NAME = "个人消费虚拟分支"; + + public static CuMemberRetailDataStatisticsResultVO getCalcMap(List detailVOList, CuMember cuMember) { Long pkId = cuMember.getPkId(); // 非激活直接返0 // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(BigDecimal.ZERO) .totalPv(BigDecimal.ZERO) - .bigRangeTotalBoxNum(BigDecimal.ZERO) .bigRangeTotalPv(BigDecimal.ZERO) - .smallRangeTotalBoxNum(BigDecimal.ZERO) .smallRangeTotalPv(BigDecimal.ZERO) .build(); } calcDetailVOTotalField(detailVOList, pkId); addVirtualBranch(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 excludeDailySettlementData(detailVOList); } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } - CuMemberRetailDataStatisticsDetailVO bigRangeBox = getBigRangeBoxDetailVO(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO bigRangePv = getBigRangePVDetailVO(detailVOList, pkId); -// BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum() - bigRangeBox.getTotalBoxNum(); - BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum().subtract(bigRangeBox.getTotalBoxNum()); - if(smallRangeTotalBoxNum.compareTo(BigDecimal.ZERO) < 0){ - smallRangeTotalBoxNum = BigDecimal.ZERO; - } BigDecimal smallRangeTotalPv = total.getTotalPv().subtract(bigRangePv.getTotalPv()); - if(smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0){ + if (smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0) { smallRangeTotalPv = BigDecimal.ZERO; } return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(total.getTotalBoxNum()) .totalPv(formatPV(total.getTotalPv())) - .bigRangeTotalBoxNum(bigRangeBox.getTotalBoxNum()) .bigRangeTotalPv(formatPV(bigRangePv.getTotalPv())) - .smallRangeTotalBoxNum(smallRangeTotalBoxNum) .smallRangeTotalPv(formatPV(smallRangeTotalPv)) .build(); } + /** * 计算集合内数据总数 + * * @param detailVOList */ - public static void calcDetailVOTotalField(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getTeamBoxNum()) - .add(detailVO.getSNewBoxNum()) - .add(detailVO.getSTeamNewBoxNum()) - .add(detailVO.getBigBoxNum()) - .add(detailVO.getSmallBoxNum()) - ); -// detailVO.setTotalBoxNum( -// detailVO.getConsumeBoxNum() // 个人累计消费盒数(日结) -//// + detailVO.getNewBoxNum() // 个人新增盒数(日结) -// + detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -//// + detailVO.getTeamNewBoxNum() // 团队新增盒数(日结) -// + detailVO.getSNewBoxNum() // 个人新增消费盒数(秒结) -// + detailVO.getSTeamNewBoxNum() // 团队新增盒数(秒结) -// + detailVO.getBigBoxNum() // 个人注水大区盒数(日结) -// + detailVO.getSmallBoxNum() // 个人注水小区盒数(日结) -// ); + public static void calcDetailVOTotalField(List detailVOList, Long pkId) { + detailVOList.forEach(detailVO -> { detailVO.setTotalPv( detailVO.getConsumePv() -// .add(detailVO.getNewConsumePv()) - .add(detailVO.getTeamConsumePv()) -// .add(detailVO.getTeamNewPv()) - .add(detailVO.getSNewConsumePv()) - .add(detailVO.getSTeamNewPv()) + .add(detailVO.getTeamConsumePv()) + .add(detailVO.getSNewConsumePv()) + .add(detailVO.getSTeamNewPv()) ); }); } /** * 排除昨日日结数据 + * * @param detailVOList */ - public static void excludeDailySettlementData(List detailVOList){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getTeamBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -// ); + public static void excludeDailySettlementData(List detailVOList) { + detailVOList.forEach(detailVO -> { detailVO.setTotalPv( detailVO.getTotalPv().subtract(detailVO.getTeamConsumePv()) ); }); } - /** - * 排除昨日日结注水数据 - * 自己的注水不排除 - * @param detailVOList - */ - public static void excludeWaterInjectionData(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - if(!detailVO.getPkId().equals(pkId)){ - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getBigBoxNum()).subtract(detailVO.getSmallBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getBigBoxNum() // 注水大区 -// - detailVO.getSmallBoxNum() // 注水小区 -// ); - } - }); - } - /** * 增加虚拟分支 主要为 * 1.自己的消费总数 @@ -158,103 +98,50 @@ public class DataStatisticsUtil { * * @param detailVOList */ - public static void addVirtualBranch(List detailVOList, Long pkId){ + public static void addVirtualBranch(List detailVOList, Long pkId) { CuMemberRetailDataStatisticsDetailVO detailVO = getDetailVOByPKID(detailVOList, pkId); - if(ObjectUtil.isNotEmpty(detailVO)){ + if (ObjectUtil.isNotEmpty(detailVO)) { CuMemberRetailDataStatisticsDetailVO selfVirtualDetailVO = getCuMemberRetailDataStatisticsDetailVO(detailVO); detailVOList.add(selfVirtualDetailVO); -// if(detailVO.getBigBoxNum() > 0 || detailVO.getSmallBoxNum() > 0){ - if(detailVO.getBigBoxNum().compareTo(BigDecimal.ZERO) >= 0 || detailVO.getSmallBoxNum().compareTo(BigDecimal.ZERO) >= 0){ - CuMemberRetailDataStatisticsDetailVO bigRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(BIG_RANGE_VIRTUAL_ID) - .memberCode(BIG_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getBigBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - CuMemberRetailDataStatisticsDetailVO smallRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(SMALL_RANGE_VIRTUAL_ID) - .memberCode(SMALL_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getSmallBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - detailVOList.add(bigRangeVirtualDetailVO); - detailVOList.add(smallRangeVirtualDetailVO); - } } - } private static CuMemberRetailDataStatisticsDetailVO getCuMemberRetailDataStatisticsDetailVO(CuMemberRetailDataStatisticsDetailVO detailVO) { return CuMemberRetailDataStatisticsDetailVO.builder() .pkId(SELF_VIRTUAL_ID) .memberCode(SELF_VIRTUAL_NAME) - .totalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getSNewBoxNum()) - ) -// .totalBoxNum( -// detailVO.getConsumeBoxNum() -//// + detailVO.getNewBoxNum() -// + detailVO.getSNewBoxNum() -// ) .totalPv( detailVO.getConsumePv() .add(detailVO.getSNewConsumePv()) ) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) .build(); } - /** - * 移除总数Top1 - * @param detailVOList - */ - public static List getSmallRangeList(List detailVOList){ - List result = new ArrayList<>(); - BigDecimal maxTotalBoxNum = getMaxTotalBoxNum(detailVOList); - if (maxTotalBoxNum == null) { - return new ArrayList<>(detailVOList); - } - boolean removed = false; - for (CuMemberRetailDataStatisticsDetailVO vo : detailVOList) { - if (!removed && Objects.equals(vo.getTotalBoxNum(), maxTotalBoxNum)) { - removed = true; - } else { - result.add(vo); - } - } - return result; - } - /** * 根据ID获取对应数据 + * * @param detailVOList * @return */ - public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId){ + public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId) { return detailVOList.stream().filter(o -> o.getPkId().equals(pkId)).findFirst().orElse(null); } /** * 组装市场动态列表数据 + * * @param detailVOList */ - public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param){ - if(StrUtil.isNotEmpty(param.getKeyWords())){ + public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param) { + if (StrUtil.isNotEmpty(param.getKeyWords())) { detailVOList = detailVOList.stream().filter(o -> o.getMemberCode().contains(param.getKeyWords()) || o.getMemberName().contains(param.getKeyWords())).collect(Collectors.toList()); } - MarketDynamicsDetailVO bigRange = null; - if(param.getQueryType().equals(1)){ + MarketDynamicsDetailVO bigRange; + if (param.getQueryType().equals(1)) { bigRange = detailVOList.stream() -// .max(Comparator.comparingInt(MarketDynamicsDetailVO::getTotalBoxNum)) .max(Comparator.comparing(MarketDynamicsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) .orElse(null); - }else{ + } else { bigRange = detailVOList.stream() .max(Comparator.comparing(MarketDynamicsDetailVO::getTodayPv)) .orElse(null); @@ -266,35 +153,22 @@ public class DataStatisticsUtil { return result; } - private static BigDecimal getMaxTotalBoxNum(List detailVOList) { + private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId) { return detailVOList.stream() - .map(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum) - .filter(Objects::nonNull) -// .max(Integer::compare) - .max(BigDecimal::compareTo) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangeBoxDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) -// .max(Comparator.comparingInt(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum)) - .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) + .filter(vo -> !vo.getPkId().equals(pkId)) .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalPv)) .orElse(null); } - public static BigDecimal formatPV(BigDecimal pv){ + + public static BigDecimal formatPV(BigDecimal pv) { return pv.divide( new BigDecimal("10000"), 4, RoundingMode.FLOOR ); } - public static void setQueryDateParam(MarketDynamicsQueryDateParam param){ + + public static void setQueryDateParam(MarketDynamicsQueryDateParam param) { LocalDate.now(ZoneId.of("Asia/Shanghai")); LocalDate currentDate = LocalDate.now(); LocalDate yesterdayDate = currentDate.minusDays(1); @@ -303,57 +177,22 @@ public class DataStatisticsUtil { param.setNowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setYesterdayDate(yesterdayDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setLastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("当前日期: " + currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("上一个月最后一天: " + lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// return MarketDynamicsQueryDateParam.builder() -// .nowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .build(); } - - public static CuMemberRetailDataStatisticsDetailVO getBigRangeWithPV(List detailVOList, CuMember cuMember){ - Long pkId = cuMember.getPkId(); - // 非激活直接返0 - // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ - return CuMemberRetailDataStatisticsDetailVO.builder() - .build(); - } - calcDetailVOTotalField(detailVOList, pkId); - addVirtualBranch(detailVOList, pkId); - CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ - // 昨日非激活 排除昨日日结表数据 - excludeDailySettlementData(detailVOList); - } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } - return getBigRangePVDetailVO(detailVOList, pkId); - } - - - public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember){ + public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember) { Long pkId = cuMember.getPkId(); BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO(); // 非激活直接返0 // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { return null; } calcDetailVOTotalField(detailVOList, pkId); addVirtualBranch(detailVOList, pkId); - CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 excludeDailySettlementData(detailVOList); } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId); bigAndSmallRangeVO.setBigRangeId(big.getPkId()); List smallIdList = detailVOList.stream() diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java index 593613bd..b7cbf855 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java @@ -59,25 +59,6 @@ public class CuMemberRetailAchieveVO implements Serializable { */ private Integer status; - /** - * 总盒数 - */ - @BigDecimalFormat - private BigDecimal totalBox; - - /** - * 小市场盒数 - */ - @BigDecimalFormat - private BigDecimal smallAreaBox; - - - /** - * 大市场盒数 - */ - @BigDecimalFormat - private BigDecimal bigAreaBox; - /** * 小区业绩 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java index 3e52e0d5..b3559969 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java @@ -51,31 +51,6 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal teamNewPv; - /** - * 日结表-个人累计消费盒数 - */ - private BigDecimal consumeBoxNum; - /** - * 日结表-个人当日新消费盒数 - */ - private BigDecimal newBoxNum; - /** - * 日结表-个人伞下累计消费盒数 - */ - private BigDecimal teamBoxNum; - /** - * 日结表-个人伞下新消费盒数 - */ - private BigDecimal teamNewBoxNum; - - /** - * 秒结表-个人新消费盒数 - */ - private BigDecimal sNewBoxNum; - /** - * 秒结表-团队新消费盒数 - */ - private BigDecimal sTeamNewBoxNum; /** * 秒结表-个人新消费pv */ @@ -85,25 +60,10 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal sTeamNewPv; - private BigDecimal sTeamBoxNum; - /** * 个人总业绩 */ private BigDecimal totalPv; - /** - * 个人总盒数 - */ - private BigDecimal totalBoxNum; - - /** - * 注水大区 - */ - private BigDecimal bigBoxNum; - /** - * 注水小区 - */ - private BigDecimal smallBoxNum; @Override public CuMemberRetailDataStatisticsDetailVO clone() { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java index df6c1a61..639e7d08 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java @@ -9,7 +9,6 @@ import lombok.NoArgsConstructor; import java.io.Serializable; import java.math.BigDecimal; - /** * 会员数据统计 */ @@ -30,19 +29,6 @@ public class CuMemberRetailDataStatisticsResultVO implements Serializable { */ private String memberCode; - /** - * 总盒数 - */ - private BigDecimal totalBoxNum; - /** - * 大区盒数 - */ - private BigDecimal bigRangeTotalBoxNum; - /** - * 小区盒数 - */ - private BigDecimal smallRangeTotalBoxNum; - /** * 总业绩 */ diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index f6c673bf..26167ec1 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -10,14 +10,6 @@ AND m.pk_parent = #{pkMember} - - SELECT SUM(t1.arealPv) arealPv ,#{pkMember} pkMember @@ -52,63 +44,6 @@ - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - ) t1 - - - - - - - - - - - - - - - - - - - - - - - - - - - SELECT nvl(sum(box), 0) bigAreaBox, 0 smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box - FROM ${memberRetailTable} ab - where ab.pk_member = #{pkBigMember} - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box - FROM ${retailUpMonthTable} ab - where ab.pk_member = #{pkBigMember} - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box - from ${memberRetailSTable} rs - where rs.pk_member = #{pkBigMember}) t0 - - - - SELECT 0 bigAreaBox, nvl(sum(box), 0) smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box, ab.pk_member - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box, ab.pk_member - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box, - rs.pk_member - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - ) t0 - - - - - - SELECT ab.team_sum_box + ab.sum_box yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${beforeYesterdayTableName} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) realTimeBox, - 0 upMonthBox, - 0 monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box + ab.sum_box monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box * -1 + ab.sum_box * -1 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box + ab.sum_box upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box * -1 + ab.sum_box * -1 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${secondMonthLastDayTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - - - + + select - cmrs.new_box_num, - cmrs.team_new_box_num, cmrs.new_consume_pv, cmrs.team_new_pv, @@ -361,8 +357,6 @@ - - - - - - SELECT min(t0.enable_status) enableStatus, - #{pkMember} pkMember - FROM (SELECT mr.enable_status - FROM ${dpb.memberRetailTable} mr - where mr.pk_member = #{pkMember} - - union all - SELECT mrs.enable_status - FROM ${dpb.memberRetailSTable} mrs - where mrs.pk_member = #{pkMember} - - ) t0 - - - - - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - - ) t1 - - - - - - - - - - - - - - - - - - - - update CU_MEMBER set PK_PARENT = #{pkParent}, @@ -2043,17 +1962,6 @@ and cm.member_name = #{memberName} and cm.phone = #{phone} - - select ca.pk_member,ba.awards_value new_level from cu_member_awards ca - inner join ( - select pk_member,max(pk_id) pk_id from cu_member_awards - where del_flag=0 and pk_member in - - #{item.pkMember} - - group by pk_member - ) cm - on ca.pk_id=cm.pk_id - inner join bd_awards ba - on ca.new_level = ba.pk_id - where ca.del_flag=0 and ba.del_flag=0 - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml index 8cf2aa8d..7d4597f9 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml @@ -20,31 +20,6 @@ - - - - - - merge into CU_MEMBER_LEVEL cml diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java index b5ceaf1b..b3d1e651 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java @@ -656,11 +656,6 @@ public class ActivityServiceImpl implements IActivityService { } // 直推升级 acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 抽奖 - acDrawRewardNumService.giveMemberDrawNum(saOrderExt); - // 直推升级 - acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); } return true; } @@ -888,8 +883,7 @@ public class ActivityServiceImpl implements IActivityService { } // 2024.11.26 新消费赠送活动需求,注册、升级专区处理新需求 - if (ESpecialArea.REGISTER_AREA.getValue() == specialArea - || ESpecialArea.UPGRADE_AREA.getValue() == specialArea) { + if (ESpecialArea.REGISTER_AREA.getValue() == specialArea) { if (null != cuMember && StringUtils.isNotEmpty(cuMember.getMemberName()) && StringUtils.isNotEmpty(cuMember.getPhone())) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java index cf0abfa0..7a60b096 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java @@ -14,33 +14,21 @@ import java.util.List; /** * 会员可抽奖次数记录 服务类 - * - * @author hzs - * @since 2023-04-21 */ public interface IAcDrawRewardNumService extends IService { /* - * @description: 查询会员抽奖活动,查询会员的抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:11 - * @param: null null + * 查询会员抽奖活动,查询会员的抽奖次数 **/ AcDrawRewardNum queryAcDrawRewardNum(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 会员后台查询抽奖次数 - * @author: sui q - * @date: 2023/6/1 10:36 - * @param: null null + * 会员后台查询抽奖次数 **/ List queryDrawRewardExtNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 更新会员抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:43 - * @param: null null + * 更新会员抽奖次数 **/ Boolean updateAcDrawRewardNum(AcDrawRewardNum acDrawRewardNum); @@ -48,49 +36,31 @@ public interface IAcDrawRewardNumService extends IService { * 查询会员账户状态,账户信息 * * @param cuMemberAccount 会员账户条件信息 - * @return: List - * @Author: sui q - * @Date: 2022/9/5 11:57 */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); /* - * @description: 查询 - * @author: sui q - * @date: 2023/4/27 15:14 - * @param: null null + * 查询 **/ AcDrawRewardNumExt queryDrawRewardNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 支付抽奖次数 - * @author: sui q - * @date: 2023/4/27 15:34 - * @param: null null + * 支付抽奖次数 **/ void payDrawRewardNum(CuMemberAccountExt cuMemberAccountExt, Integer payNum, AcDrawRewardNumExt acDrawRewardNumExt); /* - * @description: 在线支付确认生成待支付订单 - * @author: sui q - * @date: 2023/4/27 17:54 - * @param: null null + * 在线支付确认生成待支付订单 **/ String confirmDrawRewardPayNum(AcDrawRewardNumParam acDrawRewardNumParam, AcDrawRewardNumExt acDrawRewardNum); /* - * @description: 赠送抽奖次数 - * @author: sui q - * @date: 2023/4/28 11:27 - * @param: null null + * 赠送抽奖次数 **/ Boolean giveMemberDrawNum(SaOrderExt saOrderExt); /* - * @description: 撤单时回退抽奖次数 - * @author: sui q - * @date: 2023/5/9 9:46 - * @param: null null + * 撤单时回退抽奖次数 **/ Boolean backGiveMemberDrawNum(SaOrderExt saOrderExt); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java index 661f5e3c..40f01d85 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java @@ -49,9 +49,6 @@ import java.util.concurrent.TimeUnit; /** * 会员可抽奖次数记录 服务实现类 - * - * @author hzs - * @since 2023-04-21 */ @Service public class AcDrawRewardNumServiceImpl extends ServiceImpl implements IAcDrawRewardNumService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java index 2358073c..94b4addb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java @@ -12,9 +12,6 @@ import java.util.List; /** * 直推-复购券规则配置 服务类 - * - * @author hzs - * @since 2023-04-22 */ public interface IAcRepurCouponsRuleConfigService extends IService { @@ -70,10 +67,7 @@ public interface IAcRepurCouponsRuleConfigService extends IService queryAcRepurchaseCouponsRule(Date settleDate); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 92e50b18..39c6739f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -82,17 +82,6 @@ public class ApiRetailOrderController { if (ESpecialArea.RETAIL_REGISTER.getValue() == levelParam.getSpecialArea()) { // 注册订单 levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { - // 升级校验 - if (StringUtils.isEmpty(levelParam.getUpgradeMemberCode())) { - return AjaxResult.error("升级编号不能为空"); - } - - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, levelParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - levelParam.setUpgradeMember(updateGradeMember); } try { @@ -111,13 +100,6 @@ public class ApiRetailOrderController { } catch (Exception e) { log.error("会员等级判断异常", e); orderLevelVO.setMsg("会员等级判断异常"); -// if (EYesNo.YES.getIntValue() == levelParam.getFirstCheck()) { -// // 2024.12.25 -- 添加需求,首次校验不需要进行提示错误(9050) -// orderLevelVO.setIsEnough(true); -// return AjaxResult.success(orderLevelVO); -// } else { -// throw e; -// } } return AjaxResult.success(orderLevelVO); } @@ -170,8 +152,7 @@ public class ApiRetailOrderController { // 当前会员ID postageParam.setPkCreator(SecurityUtils.getUserId()); - if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == postageParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { // 注册、升级包邮 return AjaxResult.success(RetailOrderPostageVO.builder() .postage(BigDecimal.ZERO) @@ -323,106 +304,6 @@ public class ApiRetailOrderController { .build()); } - /** - * 确认升级订单 - * - * @param upgradeParam 订单入参 - * @param source 数据来源 - * @return - */ - @RepeatSubmit - @PostMapping("/confirm-upg-order") - public AjaxResult confirmUpgradeOrder(@Valid @RequestBody RetailOrderUpgradeParam upgradeParam, - @RequestHeader("Source") Integer source) { - // 设置数据来源 - upgradeParam.setSource(source); - // 会员ID - upgradeParam.setPkCreator(SecurityUtils.getUserId()); - // 新零售注册专区 - upgradeParam.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); - // 系统类型 - upgradeParam.setSystemType(SecurityUtils.getSystemType()); - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, upgradeParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - upgradeParam.setUpgradeMember(updateGradeMember); - - // 购物车中获取商品信息 - upgradeParam.setOrderItemsParams(convertShoppingCarToSku(upgradeParam.getPkCreator(), upgradeParam.getShopList())); - - // 确认订单 - String str = iRetailOrderService.confirmUpgOrder(upgradeParam); - return confirmOrderReturn(str, upgradeParam.getPkCreator(), upgradeParam.getShopList(), upgradeParam.getOrderCode()); - } - - /** - * 支付升级订单 - * - * @param payParam 支付订单入参 - * @return - */ - @RepeatSubmit - @PostMapping("/pay-upg-order") - public AjaxResult payUpgradeOrder(@Valid @RequestBody RetailOrderPayParam payParam) { - // 当前会员ID - Long pkMember = SecurityUtils.getUserId(); - - // 获取缓存参数 - RetailOrderUpgradeParam upgradeParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + pkMember + payParam.getOrderCode()); - if (null == upgradeParam) { - return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); - } - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, payParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - - // 支付入参 - upgradeParam.setIsPay(EYesNo.YES.getIntValue()); - - // 封装订单信息 - SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(upgradeParam, null, updateGradeMember); - - // 校验会员账户状态等 - R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); - if (!accountResult.isSuccess()) { - return AjaxResult.error(accountResult.getMsg()); - } - CuMemberAccountExt memberAccountExt = accountResult.getData(); - - // 校验余额是否足够 - iSaOrderService.queryRetailOrderSpendDetails(memberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - if (memberAccountExt.getIsPayment()) { - // 进行支付 - saOrderExt.setSpecialArea(upgradeParam.getSpecialArea()); - String payStr = iRetailOrderService.payUpgOrder(saOrderExt, updateGradeMember, memberAccountExt); - if (null != payStr) { - return AjaxResult.error(payStr); - } - } else { - if (StringUtils.isEmpty(memberAccountExt.getErrorMsg())) { - return AjaxResult.error("余额不足,请及时充值"); - } else { - return AjaxResult.error(memberAccountExt.getErrorMsg()); - } - } - - return AjaxResult.success("支付成功"); - } - /** * 确认订单(注册、升级之外的订单) * @@ -529,8 +410,7 @@ public class ApiRetailOrderController { CuMember parentMember = null; // 获取等级值 GradeDTO gradeDTO = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == queryOrderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea()) { parentMember = iMemberServiceApi.getRetailMember(saOrderExt.getPkReference(), null).getData(); gradeDTO = iGradeServiceApi.getGrade(saOrderExt.getPkGrade()).getData(); } @@ -726,8 +606,7 @@ public class ApiRetailOrderController { if (null == buyMember) { return "购买会员编号不存在,请重试"; } - if (ESpecialArea.RETAIL_UPGRADE.getValue() != specialArea - && ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { // 判断购买会员是否是V0,V0不允许下升级、复购以外订单 GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java index 8e60d99a..b0aa7b22 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java @@ -8,11 +8,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:21 - * @Classname: IRetailOrderPostageService - * @PackageName: com.hzs.retail.sale.controller.service + * 新零售订单邮费处理服务 */ public interface IRetailOrderPostageService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java index bc915ada..b7c2f958 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java @@ -10,7 +10,6 @@ import com.hzs.common.domain.system.config.BdGrade; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.system.base.dto.CurrencyDTO; import java.util.List; @@ -29,14 +28,6 @@ public interface IRetailOrderService { */ String confirmRegOrder(RetailOrderRegisterParam registerParam, List gradeList); - /** - * 确认升级订单 - * - * @param upgradeParam 升级订单入参 - * @return - */ - String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam); - /** * 确认其它订单 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java index 5da50448..623a68fd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java @@ -32,11 +32,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:22 - * @Classname: RetailOrderPostageServiceImpl - * @PackageName: com.hzs.retail.sale.controller.service.impl + * 新零售订单邮费处理服务 */ @Slf4j @Service @@ -64,8 +60,7 @@ public class RetailOrderPostageServiceImpl implements IRetailOrderPostageService @Override public String calculatePostage(BigDecimal freePostage, Map> postageMap, RetailOrderParam orderParam) { // 处理邮费 - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 会员专区(注册、升级)免邮费 orderParam.setPostage(BigDecimal.ZERO); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index ff6aa2af..91b10693 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -20,7 +20,6 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; @@ -35,7 +34,6 @@ import com.hzs.retail.sale.controller.service.IRetailOrderService; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; @@ -74,8 +72,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderItemsService iSaOrderItemsService; @Autowired - private ISaOrderWaresService iSaOrderWaresService; - @Autowired private IBdWaresExtendService iBdWaresExtendService; @Autowired private IBdWaresDetailService iBdWaresDetailService; @@ -86,8 +82,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderTempService iSaOrderTempService; @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; - @Autowired private IBdProductService iBdProductService; @Autowired private ISaOrderSyncService iSaOrderSyncService; @@ -129,25 +123,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { return null; } - @Override - public String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam) { - // 升级会员 - CuMember upgradeMember = upgradeParam.getUpgradeMember(); - // 封装订单信息 - SaOrderExt saOrderExt = this.createSaOrder(upgradeParam, null, upgradeMember); - - // 订单缓存(60分钟有效,防止在线支付回调慢) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_ORDER + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), saOrderExt, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - upgradeParam.setPkGrade(upgradeMember.getPkSettleGrade()); - // 缓存订单参数(30分钟有效) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), upgradeParam, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - - // 保存订单时间信息 - this.saveOrderTemp(upgradeParam.getPkCreator(), upgradeParam.getOrderCode(), JSONUtil.toJsonStr(saOrderExt), JSONUtil.toJsonStr(upgradeParam)); - - return null; - } - @Override public String confirmOtherOrder(RetailOrderOtherParam orderParam) { // 购买会员 @@ -215,8 +190,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPkGradeOld(cuMember.getPkSettleGrade()); } - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 注册、升级订单,计算会员等级 BdGrade newGrade = iSaOrderService.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(), gradeList, cuMember, orderParam.getSystemType(), orderParam.getIsPay()); @@ -247,9 +221,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public List createSaOrderItems(RetailOrderParam orderParam, List gradeList, CuMember cuMember, SaOrderExt saOrderExt, CurrencyDTO currency) { - // 需要查询盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(null); - // 订单明细信息 List orderItemsList = new ArrayList<>(); if (null == currency) { @@ -283,24 +254,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 不包邮,处理邮费模板map saOrderHandle.setPostageTmpMap(orderParam.getTranType(), postageMap, waresDetailExt, orderItems); } - - if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } else { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } - - } } } @@ -592,7 +545,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { this.allProductSync(saOrderExt); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType() ) { @@ -641,10 +593,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade(), newMember.getPkVertex()); - newMember.setPkSettleGrade(tmpGrade.getPkId()); - newMember.setPkAwards(tmpGrade.getPkAwards()); - saOrderExt.setPkMember(newMember.getPkId()); resultStr = this.payRegOrder(saOrderExt, newMember, null); @@ -655,15 +603,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (null == cuMember) { return "会员信息不存在"; } - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单 - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade(), cuMember.getPkVertex()); - cuMember.setPkSettleGrade(tmpGrade.getPkId()); - resultStr = this.payUpgOrder(saOrderExt, cuMember, null); - } else { - // 其它订单 - resultStr = this.payOtherOrder(saOrderExt, cuMember, null); - } + // 其它订单 + resultStr = this.payOtherOrder(saOrderExt, cuMember, null); } if (null == resultStr) { iSaOrderTempService.remove(Wrappers.lambdaQuery() @@ -684,23 +625,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); iSaOrderService.save(saOrderExt); - // 订单商品拆分数据 - List orderWaresList = new ArrayList<>(); - // 订单商品拆分map(key:商品主键,value:商品数量) - Map orderWaresMap = new HashMap<>(); - // 订单商品价格拆分map(key:商品主键,value:商品价格) - Map orderWaresPriceMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) Map waresNumberMap = new HashMap<>(); - // 商品限购列表 - List waresLimitList = new ArrayList<>(); - // 商品限购map(key:商品主键,value:商品数量) - Map waresLimitMap = new HashMap<>(); - - // 盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { saOrderItems.setPkOrder(saOrderExt.getPkId()); @@ -708,43 +636,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderItems.setPkCreator(saOrderExt.getPkCreator()); saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - // 指定商品拆分 并且 非赠品 - if (boxProductList.contains(saOrderItems.getWareCode()) - && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - // 盒数 = 商品上传盒数 * 商品数量 - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); - orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - - // 价格 = 产品上传价格 * 产品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())); - if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { - BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); - orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); - } else { - orderWaresPriceMap.put(saOrderItems.getPkWares(), waresPrice); - } - - waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); - } // 商品销量累计 waresNumberMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); } iSaOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - if (orderWaresMap.size() > 0) { - // 处理订单商品拆分数据 - for (Integer key : orderWaresMap.keySet()) { - SaOrderWares saOrderWares = SaOrderWares.builder() - .pkOrder(saOrderExt.getPkId()) - .pkWares(key) - .waresPrice(orderWaresPriceMap.get(key)) - .waresQuantity(orderWaresMap.get(key)) - .build(); - saOrderWares.setPkCreator(saOrderExt.getPkCreator()); - saOrderWares.setCreationTime(saOrderExt.getCreationTime()); - orderWaresList.add(saOrderWares); - } - } if (waresNumberMap.size() > 0) { // 处理订单商品销量、会员商品限购 for (Integer key : waresNumberMap.keySet()) { @@ -754,38 +650,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { .build()); } } - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() - || ESpecialArea.RETAIL_RESCISSION.getValue() == saOrderExt.getOrderType()) { - if (waresLimitMap.size() > 0) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - for (Integer key : waresLimitMap.keySet()) { - SaOrderWaresLimit saOrderWaresLimit = SaOrderWaresLimit.builder() - .pkMember(saOrderExt.getPkMember()) - .orderType(saOrderExt.getOrderType()) - .pkWares(key) - .waresQuantity(waresLimitMap.get(key)) - .limitDate(limitDate) - .build(); - saOrderWaresLimit.setPkCreator(saOrderExt.getPkCreator()); - saOrderWaresLimit.setCreationTime(saOrderExt.getCreationTime()); - saOrderWaresLimit.setPkCountry(saOrderExt.getPkCountry()); - waresLimitList.add(saOrderWaresLimit); - } - } - } - if (orderWaresList.size() > 0) { - // 订单商品拆分表 - iSaOrderWaresService.saveBatch(orderWaresList); - } if (waresNumberList.size() > 0) { // 更新商品销量表 iBdWaresExtendService.updateWaresSalesAccrual(waresNumberList); } - if (waresLimitList.size() > 0) { - // 更新会员商品限购 - iSaOrderWaresLimitService.saveBatchLimit(waresLimitList); - } } @Transactional(rollbackFor = Exception.class) @@ -832,7 +701,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private Boolean handleMemberActivate(CuMember cuMember, SaOrderExt saOrder) { if ((null == cuMember.getIsActivate() || EYesNo.YES.getIntValue() != cuMember.getIsActivate()) - && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) + && EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() ) { // 会员激活状态为空 或 未激活,并且是 注册、升级 订单,判断会员是否激活 if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { @@ -846,88 +715,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } return false; - -// if (null == cuMember.getIsActivate()) { -//// // 会员激活状态为空,按未激活处理 -//// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// -// // new 暂时不处理激活,只要是会员就按激活处理,有订单就有支付状态和时间 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (null != saOrder) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// } -// return true; - -// if (EYesNo.YES.getIntValue() != cuMember.getIsActivate() -// && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) -// ) { -// // 会员未激活,并且是 注册、升级、复购 订单,判断会员是否激活 -// List boxProductList = BoxProductUtil.getBoxProductListBySystemType(saOrder.getSystemType()); -// -// for (SaOrderItems saOrderItems : saOrder.getOrderItemsList()) { -// if (boxProductList.contains(saOrderItems.getWareCode())) { -// // 存在指定盒数商品 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// return true; -// } -// } -// } -// return false; - } - - /** - * 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 - * - * @param pkMember 会员ID - * @param specialArea 所属专区 - * @param waresDetailExtList 购买商品列表 - * @param boxProductList 盒数商品列表 - * @return - */ - private void checkWaresLimit(Long pkMember, Integer specialArea, List waresDetailExtList, List boxProductList) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - // 商品数量map(key: 商品编号,value: 商品数量) - Map waresNumMap = new HashMap<>(); - // 商品信息map(key: 商品编号,value: 商品名称) - Map waresNameMap = new HashMap<>(); - for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { - if ((ESpecialArea.RETAIL_REPURCHASE.getValue() == specialArea - || ESpecialArea.RETAIL_RESCISSION.getValue() == specialArea) - && boxProductList.contains(waresDetailExt.getWaresCode()) - && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift() - ) { - // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每月每人限购50件(赠品排除) - waresNumMap.merge(waresDetailExt.getWaresCode(), waresDetailExt.getWaresQuantity(), Integer::sum); - waresNameMap.put(waresDetailExt.getWaresCode(), waresDetailExt.getWaresName()); - } - } - - if (!waresNumMap.isEmpty()) { - for (String key : waresNumMap.keySet()) { - if (waresNumMap.get(key) > 50) { - throw new ServiceException("商品【" + waresNameMap.get(key) + "】每月限购50件"); - } - } - - List limitList = iSaOrderWaresLimitService.listWaresList(pkMember, specialArea, limitDate, new ArrayList<>(waresNumMap.keySet())); - if (CollectionUtil.isNotEmpty(limitList)) { - for (SaOrderWaresLimitExt waresLimitExt : limitList) { - Integer waresNum = waresNumMap.get(waresLimitExt.getWaresCode()); - if (null != waresNum - && waresNum + waresLimitExt.getWaresQuantity() > 50) { - throw new ServiceException("商品【" + waresLimitExt.getWaresName() + "】每月限购50件"); - } - } - } - } } /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java deleted file mode 100644 index b85a29c0..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.retail.sale.param; - -import com.hzs.common.domain.member.base.CuMember; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.Size; -import java.io.Serializable; - -/** - * 新零售升级订单入参 - */ -@EqualsAndHashCode(callSuper = true) -@Data -public class RetailOrderUpgradeParam extends RetailOrderParam implements Serializable { - - /** - * 升级编号 - */ - @NotEmpty(message = "升级编号不能为空") - @Size(max = 20, message = "升级编号不能超过20位") - private String upgradeMemberCode; - - /** - * 升级会员 - */ - private CuMember upgradeMember; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java index bf96bdd6..3a2e422f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java @@ -1,22 +1,15 @@ package com.hzs.sale.order.controller; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; -import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; @@ -24,7 +17,6 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; @@ -47,8 +39,6 @@ public abstract class ParentOrderController extends BaseController { private ISaOrderService orderService; - private ISaOrderItemsService orderItemsService; - protected RedisService redisService; @Autowired @@ -68,355 +58,6 @@ public abstract class ParentOrderController extends BaseController { return orderService; } - @Autowired - public void setOrderItemsService(ISaOrderItemsService orderItemsService) { - this.orderItemsService = orderItemsService; - } - - public ISaOrderItemsService getOrderItemsService() { - return orderItemsService; - } - - /** - * 根据code、编码获取值 - * - * @param code 查询的code - */ - protected CuMember getCuMemberByCode(String code) { - return orderService.getCuMemberByCode(code); - } - - /** - * 验证字段是否必输 - * - * @param fieldList 需要验证的字段 - */ - protected boolean validateFieldNotNull(OrderParam orderParam, List fieldList) { - return fieldList.stream().anyMatch(field -> { - Object obj = ReflectUtils.invokeGetter(orderParam, field); - return obj == null || "".equals(obj); - }); - } - - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名、安置人必输 - */ - protected AjaxResult validatePhone(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getPhone()) || StringUtils.isEmpty(orderParam.getMemberName())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - // 手机号 - String phone = orderParam.getPhone(); - // 会员姓名 - String memberName = orderParam.getMemberName(); - // 验证手机号注册次数 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().phone(phone).payStatus(EPayStatus.PAID.getValue()).pkSettleGrade(EGrade.VIP.getValue()).pkSettleCountry(orderParam.getPkSettleCountry()).build()); - // 系统中存在该手机号走的验证 - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - // 手机号注册次数 - if (!validatePhoneCount(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.SYSTEM_REGISTER_COUNT)); - } - // 一个手机号只能有一个姓名 - boolean flag = cuMemberExtList.stream().allMatch(cuMemberExt -> memberName.equals(cuMemberExt.getMemberName())); - if (!flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PHONE_ALREADY_REGISTER)); - } - } - if (!orderParam.getIsHaiFun()) { - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - // 安置人 - // 1.只能在同一个团队内 验证安置人及安置人伞上是否存在该手机号+姓名 - // 很多情况安置人跟伞下是一样的,从redis获取安置人,验证安置人手机号跟姓名是否一致 - CuMember placeParentCuMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (!placeParentCuMember.getMemberName().equals(memberName) || - !placeParentCuMember.getPhone().equals(phone)) { - // 寻找安置人伞上,验证安置伞上是否存在该手机姓名,如果伞上没有找到手机号,其他地方找到了,说明不在一个团队 - List sponsorOnUmbrella = orderService.querySponsorOnUmbrella(placeParentCuMember.getPkId(), phone); - CuMemberExt searchCuMember = null; - for (CuMemberExt sponsor : sponsorOnUmbrella) { - if (sponsor.getPhone().equals(phone) && sponsor.getMemberName().equals(memberName)) { - searchCuMember = sponsor; - break; - } - } - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - if (searchCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } else { - // 验证cuMemberExtList是否在searchCuMember的伞下,不在伞下说明游离了 - List validateSponsorOnUmbrella = orderService.selectPlaceSponsorUnderUmbrellaByCondition(searchCuMember.getPkId(), cuMemberExtList); - if (CollectionUtil.isEmpty(validateSponsorOnUmbrella) || validateSponsorOnUmbrella.size() != cuMemberExtList.size()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } - } - } - } - } - return AjaxResult.success(); - } - - /** - * 验证推荐编号,成功后返回姓名,如果首单返回安置人、安置部门 - * - * @param orderParam 必须推荐人 - */ - protected AjaxResult validateReferenceRelation(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - CuMember cuMember = getCuMemberByCode(orderParam.getParent()); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - // 验证会员支付状态,只有支付状态才能进行推荐人 - if (cuMember.getPayStatus() != EPayStatus.PAID.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_PAY)); - } - // 验证推荐人跟报单人关系, 报单人一定在最上,然后是推荐人 - // 推荐人=报单人,不用在验证报单人在推荐人上面 - if (!cuMember.getPkId().equals(orderParam.getCenterCodeId())) { - // 查找报单人安置伞下是否存在推荐人 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), cuMember.getMemberCode()); - if (CollectionUtil.isEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_TEAM)); - } - } - // 存在首单,只返回推荐人姓名 - orderParam.setParentId(cuMember.getPkId()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setParentName(cuMember.getMemberName()); - } else { - orderParam.setParentName(cuMember.getMemberName()); - } - - String firstOrder = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(firstOrder)) { - // 判断是否为首单,根据订单关系,按照订单关系,是首单的话,直接带出极左极下,放在第一部门,不能修改 - Integer count = orderService.queryCuMemberByPkMember(cuMember.getPkId()); - if (count == 0) { - // 验证网体 - orderParam.setIsFirst(true); - // 不存在首单,返回推荐人姓名、安置人编号、安置人姓名、安置人部门 - // 查找推荐人极左极下 - CuMemberExt cuMemberExt = orderService.queryPlaceSponsorLastLeft(cuMember.getPkId(), EPlaceDept.LEFT_DEPT.getValue()); - if (cuMemberExt == null) { - orderParam.setPlaceParentId(cuMember.getPkId()); - orderParam.setPlaceParent(cuMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } - } else { - orderParam.setPlaceParentId(cuMemberExt.getPkId()); - orderParam.setPlaceParent(cuMemberExt.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } - } - String placePosition = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.PLACE_POSITION.getKey()); - if (Objects.equals("3", placePosition)) { - orderParam.setPlaceDept(EPlaceDept.RIGHT_DEPT.getValue()); - } else { - orderParam.setPlaceDept(EPlaceDept.LEFT_DEPT.getValue()); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证安置编号、安置部门,成功后返回姓名 - * - * @param orderParam 必须安置人 - */ - protected AjaxResult validatePlaceParentMemberCode(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - - // 验证推荐编号、安置编号是否存在,不验证大小写,去空格。 - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParent(parentMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(parentMember.getPkId())) { - orderParam.setParentName(parentMember.getMemberName()); - } else { - orderParam.setParentName(parentMember.getMemberName()); - } - - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXISTS)); - } - orderParam.setPlaceParentId(placeMember.getPkId()); - orderParam.setPlaceParent(placeMember.getMemberCode()); - - if (SecurityUtils.getUserId().equals(placeMember.getPkId())) { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } else { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } - // 当安置人跟安置位置都有值是需要验证 需要验证安置位置 - if (orderParam.getPlaceDept() != null && orderParam.getPlaceDept() > 0) { - // 安置人在推荐人伞下,含自己。 推荐人在报单中心伞下,含自己,在推荐那边验证 - if (!orderParam.getPlaceParent().equals(orderParam.getParent())) { - // 查找推荐人安置伞下 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(parentMember.getPkId(), orderParam.getPlaceParent()); - // 查找是否在伞下 - boolean flag = cuMemberExtList.stream().noneMatch(placeSponsor -> - orderParam.getPlaceParent().equals(placeSponsor.getMemberCode()) || orderParam.getPlaceParent().equals(placeSponsor.getServiceCode()) - ); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - // 推荐人安置人左区或者右区只能有1个,验证安置人是否已经有点位 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().pkPlaceParent(placeMember.getPkId()).category(10).placeDept(orderParam.getPlaceDept()).build()); - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - // 安置部门为第二部门时,需要判断推荐人是否推荐过首单,可以安置在第二部门,否则只能在第一部门; - // 推荐过左区可以放右区,需要验证安置人是否有有单 - // 西非不验证安置部门是否推荐过首单,只需要验证安置左区必须有人 - if (orderParam.getPlaceDept() == EPlaceDept.RIGHT_DEPT.getValue()) { - // 推荐人是否有首单 - // 从参数中获取是否需要验证安置人有首单 - Integer pkCountry = orderParam.getPkSettleCountry(); - if (!placeMember.getPkId().equals(parentMember.getPkId()) && orderService.validateFirstOrder(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_REFERENCE)); - } - // 安置人左区是否有人 - if (orderService.validateLeftExistMember(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXIST)); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证需要注册的信息, 订单保存时需要调用的验证 - * - * @param orderParam 所有信息 - */ - protected AjaxResult validateSaveMember(OrderParam orderParam) { - // 安置编号 - String placeParent = orderParam.getPlaceParent(); - // 安置部门 - Integer placeDept = orderParam.getPlaceDept(); - AjaxResult result = validateFun(orderParam); - if (result != null) { - return result; - } - // 验证是否首单,首单安置人安置部门不能变动 - if (orderParam.getIsFirst()) { - // 判断安置人跟安置部门是否一致 - if (!(placeParent.equals(orderParam.getPlaceParent()) && placeDept.equals(orderParam.getPlaceDept()))) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_IS_LAST_LEFT)); - } - } else { -// // 验证过首单后可以不用在验证安置人,不是首单的情况直接验证安置人 - // 验证安置人 - result = validatePlaceParentMemberCode(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - } - return AjaxResult.success(orderParam); - } - - protected AjaxResult validateFun(OrderParam orderParam) { - // 报单中心 - Long centerCodeId = orderParam.getCenterCodeId(); - // 验证权限 - AjaxResult result = validateRegisterAuthority(centerCodeId, orderParam.getSpecialArea()); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证手机号 - result = validatePhone(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证推荐人 - result = validateReferenceRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - return null; - } - - /** - * 对安置位置进行加锁预防位置重复 - * - * @param placeParentId 安置人 - * @param placeDept 安置位置 - */ - protected boolean validatePlacePosition(Long placeParentId, Integer placeDept) { - // 验证通过对安置人,安置部门加锁,防止同时安置引起错误,最后解锁 - return orderService.lockKey(getLockKey(placeParentId, placeDept)); - } - - /** - * @param placeParentId 安置位置 - * @param placeDept 安置部门 - */ - private String getLockKey(Long placeParentId, Integer placeDept) { - return CacheConstants.POSITION + - placeParentId + - placeDept; - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - * - * @param centerCodeId 验证的权限 - */ - protected AjaxResult validateRegisterAuthority(Long centerCodeId, Integer specialArea) { - // 前台登录验证登录会员,后台空点验证输入的报单人 - CuMember cuMember = orderService.getCuMemberByKey(centerCodeId); - if (cuMember == null || cuMember.getRegisterAuthority() == ERegistrationAuthority.ORDINARY.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_AUTHORITY)); - } - return AjaxResult.success(); - } - - /** - * 检查输入的条件 - * - * @param orderParam 条件 - * @return boolean - */ - protected Boolean checkRecMsgBoolean(OrderParam orderParam) { - if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay())) { - orderParam.setTransType(null); - return orderParam.getSpecialArea() != null - && orderParam.getOrderItemsParams() != null - && orderParam.getOrderItemsParams().size() > 0; - } else { - return orderParam.getSpecialArea() != null - && orderParam.getDeliveryWay() != null && orderParam.getTransType() != null - && orderParam.getRecName() != null && orderParam.getRecPhone() != null - && orderParam.getRecProvince() != null && orderParam.getRecCity() != null - && orderParam.getOrderItemsParams() != null && orderParam.getRecAddress() != null - && orderParam.getOrderItemsParams().size() > 0; - } - } - /** * 检查输入的条件 * @@ -460,17 +101,6 @@ public abstract class ParentOrderController extends BaseController { orderParam.setPkLoginSettleCountry(SecurityUtils.getPkCountry()); } - /** - * 验证手机号注册次数 - * - * @param cuMemberExtList 会员数量 - */ - private Boolean validatePhoneCount(List cuMemberExtList) { - // 判断次数,获取系统参数,从redis中获取系统参数 - String value = orderService.querySystemConfigByKey(cuMemberExtList.get(0).getPkSettleCountry(), ESystemConfig.REGISTER_NUMBER.getKey()); - return cuMemberExtList.size() < Integer.parseInt(value); - } - protected CuMemberAccount getCuMemberAccount(OrderParam orderParam) { CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(orderParam.getCenterCodeId()).build(); cuMemberAccount.setPkCountry(orderParam.getPkLoginSettleCountry()); @@ -500,32 +130,6 @@ public abstract class ParentOrderController extends BaseController { return AjaxResult.success(cuMemberAccountExt); } - /** - * 验证升级关系,只能给自己或者自己安置伞下升级 - * - * @param orderParam 前台传递的参数 - */ - protected AjaxResult validateUpgradeRelation(OrderParam orderParam) { - CuMember upgradeMember = orderService.getCuMemberByCode(orderParam.getUpgradeMemberCode()); - if (upgradeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_DOES_NOT_EXITS)); - } - if (null != orderParam.getCenterCodeId() && orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } else { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } - - if (!orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - // 可以给别人升级,只能是自己的安置伞下 - List cuMemberExtList = getOrderService().queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), upgradeMember.getMemberCode()); - boolean flag = cuMemberExtList.stream().noneMatch(cuMemberExt -> cuMemberExt.getPkId().equals(upgradeMember.getPkId())); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - return AjaxResult.success(orderParam); - } protected SaOrder getSaOrderQueryParam(OrderParam orderParam) { SaOrder saOrder = SaOrder.builder() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java deleted file mode 100644 index cab5d6cc..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.IMemberServiceApi; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.*; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 嗨粉订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiFanSaOrderController extends ParentOrderController { - - @DubboReference - IMemberServiceApi iMemberServiceApi; - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-fun-order") - @RepeatSubmit - public AjaxResult confirmHaiFunOrder(@Validated @RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 自注册 - */ - @PostMapping("/confirm-self-fun-order") - @RepeatSubmit - public AjaxResult confirmSelfFunOrder(@Validated @RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - - CuMember cuMember = iMemberServiceApi.queryMember(orderParam.getCenterCodeId()).getData(); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - - if (getOrderService().confirmSelfFunOrderByOrderParam(orderParam, cuMember)) { - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java deleted file mode 100644 index 462f43b4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ /dev/null @@ -1,171 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.enums.EOrderType; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.OrderParam; -import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -/** - * 其他订单(升级、复购)订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiOthSaOrderController extends ParentOrderController { - - @Autowired - private ISaOrderService orderService; - - /** - * @param orderParam 前台传递的参数 - */ - @PostMapping("/confirm-oth-order") - @RepeatSubmit - public AjaxResult confirmOtherOrder(@RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { - convertShoppingCarToSku(orderParam); - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (StringUtils.isEmpty(orderParam.getUpgradeMemberCode())) { - orderParam.setUpgradeMemberCode(SecurityUtils.getMemberCode()); - } - // 验证复购的人是否在推荐人伞下 - AjaxResult result = validateUpgradeRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - // 升级订单,校验是否满足升级条件 - orderParam.setUpgradeMemberCodeTmp(orderParam.getUpgradeMemberCode()); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (!orderReturn.getIsEnough()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } - } - if (!getOrderService().confirmRepurchaseSaOrder(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - } - return AjaxResult.success(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/validate-upg-rel") - public AjaxResult validateUpgradeMemberCodeRelation(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - return validateUpgradeRelation(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/query-special-deduct") - public AjaxResult querySpecialDeduct(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - return validateUpgradeRelation(orderParam); - } - - - /** - * 支付升级订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-oth-order") - @RepeatSubmit - public AjaxResult payOtherOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getOrderCode() == null || orderParam.getSpecialArea() == null || - StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - if (orderParam.getSpecialArea() == EOrderType.REGISTER_ORDER.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - // 验证账户余额 - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - SaOrder saOrderQueryParam = getSaOrderQueryParam(orderParam); - SaOrderExt saOrderExt = getOrderService().querySaleOrderExtByOrderCode(saOrderQueryParam, null); - - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - if (oldOrderParam == null) { - oldOrderParam = orderParam; - oldOrderParam.setRecProvince(saOrderExt.getRecProvince()); - } - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - // 升级订单 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (getOrderService().payUpgradeSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } else { - // 复购订单 - if (getOrderService().payRepurchaseSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } - } - } - - - if (cuMemberAccountExt.getErrorMsg() == null) { - cuMemberAccountExt.setErrorMsg(TransactionUtils.getContent(MemberMsgConstants.MEMBER_ACCOUNT_BALANCE_NOT_ENOUGH)); - } - - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index f3da318a..8a47f7dc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -1,10 +1,7 @@ package com.hzs.sale.order.controller.api; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.constant.msg.SaOrderMsgConstants; import com.hzs.common.core.enums.EDelivery; @@ -21,18 +18,13 @@ import com.hzs.sale.order.controller.ParentOrderController; import com.hzs.sale.order.param.CuMemberAccountParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.concurrent.TimeUnit; /** * 订单控制类 @@ -43,142 +35,7 @@ import java.util.concurrent.TimeUnit; public class ApiRegSaOrderController extends ParentOrderController { @DubboReference - IGradeServiceApi gradeServiceApi; - @Autowired - private ISaOrderService orderService; - - /** - * 确认注册订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-reg-order") - @RepeatSubmit - public AjaxResult confirmRegisterOrder(@Validated @RequestBody OrderParam orderParam, - @RequestHeader("Source") Integer source) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - initSecurityOrderParam(orderParam); - // 验证必输项 - if (source == null || validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setSource(source); - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), ShoppingCartVO.builder() - .deleteList(orderParam.getDeleteList()) - .build()); - } - return AjaxResult.success(OrderReturn.builder().orderCode(orderParam.getOrderCode()).specialArea(orderParam.getSpecialArea()).build()); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NO_JURISDICTION)); - } - } - - /** - * 支付注册订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-reg-order") - @RepeatSubmit - public AjaxResult payRegisterOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 判断是否是待支付,待支付的话验证订单编号是否存在 - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - - boolean isToBePay = getOrderService().getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember newCuMember; - SaOrderExt saOrderExt; - boolean isHaiFun = false; - if (isToBePay) { - if (StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_PASSWORD_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getOrderCode())) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_CODE_EMPTY)); - } - saOrderExt = getOrderService().querySaleOrderExtByOrderCode(getSaOrderQueryParam(orderParam), null); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - newCuMember = getOrderService().getCuMemberByKey(saOrderExt.getPkMember()); - } else { - String payPwd = orderParam.getPayPwd(); - orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - initSecurityOrderParam(orderParam); - orderParam.setPayPwd(payPwd); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidSaveField())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - String orderCode = orderParam.getOrderCode(); - newCuMember = getOrderService().packageCuMember(orderParam); - if (StringUtils.isNotEmpty(orderParam.getMemberCode())) { - newCuMember.setMemberCode(orderParam.getMemberCode()); - } - saOrderExt = getOrderService().packageSaOrder(orderParam, newCuMember); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - saOrderExt.setOrderCode(orderCode); - } - - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - // 对安置位置加锁 - if (validatePlacePosition(orderParam.getPlaceParentId(), orderParam.getPlaceDept())) { - // 验证余额状态 - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - getOrderService().payRegSaOrder(saOrderExt, newCuMember, cuMemberAccountExt, isHaiFun); - } else { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY)); - } else { - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - } - // 保存逻辑 保存订单、保存会员 - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - OrderReturn orderReturn = OrderReturn.builder() - .memberCode(newCuMember.getMemberCode()) - .memberName(newCuMember.getMemberName()) - .phone(newCuMember.getPhone()) - .email(newCuMember.getEmail()) - .loginPassword(newCuMember.getLoginPassword()) - .payPassword(newCuMember.getPayPassword()) - .build(); - return AjaxResult.success(orderReturn); - } + IGradeServiceApi iGradeServiceApi; /** * 查询订单 @@ -224,7 +81,7 @@ public class ApiRegSaOrderController extends ParentOrderController { if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { CuMember parentCuMember = getOrderService().getCuMemberByKey(cuMember.getPkParent()); CuMember placeCuMember = getOrderService().getCuMemberByKey(cuMember.getPkPlaceParent()); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); orderReturn.setPhone(cuMember.getPhone()); orderReturn.setParent(parentCuMember.getMemberCode()); @@ -238,16 +95,12 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderReturn.setPlaceDept(cuMember.getPlaceDept()); orderReturn.setSource(cuMember.getSource()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { - getOrderService().setLastCuMemberGrade(cuMember, saOrder); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } } } else { orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); if (orderParam.getPkGrade() != null) { - GradeDTO gradeDTO = gradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } orderReturn.setMemberCode(orderParam.getMemberCode()); @@ -288,8 +141,6 @@ public class ApiRegSaOrderController extends ParentOrderController { **/ @PostMapping("/self-order-postage") public AjaxResult selfOrderPostage(@RequestBody OrderParam orderParam) { - //提货订单邮费 - Integer pkCountry = SecurityUtils.getPkCountry(); // 验证必输项,一个条件未填写都不计算邮费 orderParam.setTransType(orderParam.getTranType()); if (checkRecPostageMsgBoolean(orderParam) && orderParam.getDeliveryWay() == EDelivery.FAST_MAIL.getValue()) { @@ -350,53 +201,6 @@ public class ApiRegSaOrderController extends ParentOrderController { return null; } - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名 - */ - @Override - @PostMapping("/valid-phone") - public AjaxResult validatePhone(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePhone(orderParam); - } - - /** - * 验证推荐编号、推荐关系,成功后返回姓名,只有注册订单调用 - * - * @param orderParam 必须推荐人 - */ - @Override - @PostMapping("/valid-p-code") - public AjaxResult validateReferenceRelation(@RequestBody OrderParam orderParam) { - // 报单中心只能是登陆人 - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - initPkCountry(orderParam); - return super.validateReferenceRelation(orderParam); - } - - /** - * 验证安置编号,成功后返回姓名 - * - * @param orderParam 必须安置人 当传输的值中安置部门不为空时,校验安置位置 - */ - @Override - @PostMapping("/valid-p-p-code") - public AjaxResult validatePlaceParentMemberCode(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePlaceParentMemberCode(orderParam); - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - */ - @PostMapping("/valid-authority") - public AjaxResult validateRegisterAuthority() { - // 前台登录验证登录会员,后台空点验证输入的报单人 - return super.validateRegisterAuthority(SecurityUtils.getUserId(), null); - } - /** * 校验会员等级, 计算会员等级 * @@ -413,108 +217,14 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderParam.setCenterCodeId(SecurityUtils.getUserId()); convertShoppingCarToSku(orderParam); - // 计算等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (orderParam.getUpgradeMemberCode() == null) { - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - } else { - CuMember cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - orderParam.setCenterCodeId(cuMember.getPkId()); - } - } + initPkCountry(orderParam); OrderReturn orderReturn = getOrderService().computeLevel(orderParam); if (orderReturn.getIsEnough()) { return AjaxResult.success(orderReturn); } else { - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); - } + return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); } } - /** - * 快速注册 - * - * @param orderParam 参数 - */ - @PostMapping("/quick-reg") - public AjaxResult quickRegistration(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - CuMember parentCuMember; - if (StringUtils.isEmpty(orderParam.getParent())) { - orderParam.setParentId(SecurityUtils.getUserId()); - parentCuMember = getOrderService().getCuMemberByKey(orderParam.getParentId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } else { - parentCuMember = getCuMemberByCode(orderParam.getParent()); - if (parentCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParentId(parentCuMember.getPkId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } - - CuMember cuMember = CuMember.builder() - .pkParent(orderParam.getParentId()) - .memberName(orderParam.getMemberName()) - .memberCode(orderParam.getMemberCode()) - .pkSettleCountry(SecurityUtils.getPkCountry()) - .build(); - boolean isFirst = getOrderService().validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - cuMember = getOrderService().obtainLastResettleByRecommend(cuMember, Boolean.TRUE, isFirst); - - String placeParentName; - if (null == cuMember.getPkPlaceParent()) { - if (SecurityUtils.getUserId().equals(parentCuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } else { - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } - - return AjaxResult.success(OrderReturn.builder() - .isFirst(isFirst) - .parentName(orderParam.getParentName()) - .placeParent(cuMember.getMemberCode()) - .placeParentName(placeParentName) - .placeDept(cuMember.getPlaceDept()).build()); - } - - @PostMapping("/update-default") - public AjaxResult setRegisterDefault(@RequestBody OrderParam orderParam) { - if (orderParam.getDisplayDefault() == null) { - orderParam.setDisplayDefault(0); - } - redisService.setCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId(), orderParam.getDisplayDefault(), CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.DAYS); - return AjaxResult.success(); - } - - @GetMapping("/query-default") - public AjaxResult setRegisterDefault() { - Integer displayDefault = redisService.getCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId()); - return AjaxResult.success(OrderReturn.builder().displayDefault(displayDefault == null ? 0 : displayDefault).build()); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java index f47c79d2..23b18aaf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java @@ -14,15 +14,11 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * 销售订单-明细表 Mapper 接口 - * - * @author hzs - * @since 2022-08-31 */ public interface SaOrderItemsMapper extends BaseMapper { @@ -119,17 +115,11 @@ public interface SaOrderItemsMapper extends BaseMapper { * 更新订单明细表,将订单明细更改为删除 * * @param saOrder 订单 - * @return: Boolean - * @Author: sui q - * @Date: 2022/10/24 20:48 */ Integer updateOrderItems(SaOrder saOrder); /* - * @description: - * @author: sui q - * @date: 2023/7/27 16:16 - * @param: null null + * **/ void updateOrderItemsByMemberList(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); @@ -140,9 +130,6 @@ public interface SaOrderItemsMapper extends BaseMapper { * @param pkOrderItemsId 订单明细 * @param pkApprove 审核人 * @param currentDate 更新时间 - * @return: Boolean - * @Author: sui q - * @Date: 2023/3/28 11:25 */ Integer updateOrderItemsById(@Param("pkOrderItemsId") List pkOrderItemsId, @Param("pkApprove") Long pkApprove, @Param("currentDate") Date currentDate); @@ -155,11 +142,7 @@ public interface SaOrderItemsMapper extends BaseMapper { List queryListByOrderId(@Param("orderIdList") List orderIdList); /** - * @description: 根据订单ID查询订单商品明细列表 - * @author: zhang jing - * @date: 2023/5/29 15:38 - * @param: [orderIdList, tOrderIdList] - * @return: java.util.List + * 根据订单ID查询订单商品明细列表 **/ List waresListByOrderId(@Param("orderIdList") List orderIdList); @@ -206,11 +189,7 @@ public interface SaOrderItemsMapper extends BaseMapper { List selectByList(@Param("pkOrder") Long pkOrder); /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List + * 根据订单ID查询商品 **/ List getOrderItemsParams(@Param("orderIdList") List orderIdList); @@ -260,22 +239,6 @@ public interface SaOrderItemsMapper extends BaseMapper { */ List selectByWaresCodeList(@Param("orderCode") String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(@Param("pkMember") Long pkMember, - @Param("waresCodeList") List waresCodeList, - @Param("payTime") Date payTime, - @Param("orderTypeList") List orderTypeList, - @Param("systemType") Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java index 9de5b9c0..a0f3ad2c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 + * Mapper 接口 */ public interface SaOrderRelationItemsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java index 5d3cf456..54794409 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface SaOrderRelationMapper extends BaseMapper { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java index 77ce7f4b..5769b1f4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java @@ -1,55 +1,12 @@ package com.hzs.sale.order.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员商品限购 Mapper 接口 - * - * @author hzs - * @since 2025-03-11 */ public interface SaOrderWaresLimitMapper extends BaseMapper { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(@Param("pkMember") Long pkMember, - @Param("orderType") Integer orderType, - @Param("limitDate") String limitDate, - @Param("waresCodeList") List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(@Param("dataList") List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(@Param("pkOrder") Long pkOrder, - @Param("pkMember") Long pkMember, - @Param("modifiedTime") Date modifiedTime, - @Param("waresCodeList") List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java index 256ec76a..32e3562f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java @@ -42,14 +42,6 @@ public interface IOrderBusinessService { */ String checkOrderDeliver(List orderCodeList, Integer pkCountry); - /** - * 校验新零售盒数产品是否可以换货 - * - * @param param 请求入参 - * @return - */ - String checkOrderRetailProduct(OrderProductParam param); - /** * 本次业务修改费用 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index f9177c35..d92177ae 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -14,7 +14,6 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -208,18 +207,6 @@ public interface ISaOrderItemsService extends IService { */ List selectByWaresCodeList(String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java index b723be42..fdfef547 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * 服务类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务类 */ public interface ISaOrderRelationItemsService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java index b336e5ef..f81fcba3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 服务类 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface ISaOrderRelationService extends IService { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index a5a46abe..b244439a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -25,43 +24,6 @@ import java.util.List; */ public interface ISaOrderService extends IService { - /** - * 验证手机号注册次数 - * 根据手机号查询出目前系统所有的会员 - * - * @param cuMember 会员的各种属性、手机号码必输 国家 - */ - List queryMemberExtByCondition(CuMember cuMember); - - /** - * 查找安置人伞上 - * - * @param placeParentId 安置人 - */ - List querySponsorOnUmbrella(Long placeParentId, String phone); - - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList); - - /** - * 查找安置人伞下 - * - * @param memberId 安置人,编号 - */ - List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent); - - /** - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 1代表左区极左极下,2代表右区极左极下 - */ - CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept); - /** * 根据订单编号查询订单 * @@ -121,13 +83,6 @@ public interface ISaOrderService extends IService { */ CuMember getCuMemberByCode(String code); - /** - * 加锁,将键锁定 - * - * @param key 锁定的键 - */ - Boolean lockKey(String key); - /** * 查询会员账户状态,账户信息 * @@ -143,81 +98,11 @@ public interface ISaOrderService extends IService { */ CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); - - /** - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam 会员端的报单信息 - */ - Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam); - - /* - * 确认嗨粉订单根据参数 - **/ - Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - */ - CuMember packageCuMember(OrderParam orderParam); - /* * 这是会员等级 **/ Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); - /** - * 点击支付按钮,输入密码,确认下单(注册订单) - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - * @param isHaiFun 是否嗨粉 - */ - Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun); - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 生成升级待支付订单 - * - * @param orderParam 参数信息 - */ - Boolean confirmRepurchaseSaOrder(OrderParam orderParam); - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 订单以及明细入库等处理 - * - * @param saOrderExt 订单(带明细) - */ - void processOrder(SaOrderExt saOrderExt); - /** * 是否直接支付 * @@ -270,14 +155,6 @@ public interface ISaOrderService extends IService { */ GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade); - /** - * 根据推荐人获取极左极下最末安置人 - * - * @param cuMember 会员 需要放(推荐人、国家、新用户姓名、新用户手机号) - * @param isFirstAchieve 是否验证首购业绩 - */ - CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst); - /** * 生成空单注册 * @@ -285,22 +162,6 @@ public interface ISaOrderService extends IService { */ String registerEmptyOrder(OrderBlankRegParams orderBlankRegParams); - /** - * 验证是否必须有首单 - * - * @param pkParent 推荐人主键 - * @param pkCountry 国家 - */ - boolean validateFirstOrder(Long pkParent, Integer pkCountry); - - /** - * 验证是否左区必须现有安置才能安置右区 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry); - /** * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 * @@ -540,7 +401,6 @@ public interface ISaOrderService extends IService { */ void waresSalesAccrual(List waresNumberParamList); - /** * 会员首页我的市场 * @@ -620,12 +480,4 @@ public interface ISaOrderService extends IService { List gradeList, CuMember updateGradeMember, Integer systemType, Integer isPay); - /** - * 处理最终等级(多送2级) - * @param gradeList - * @param pkGrade - * @return - */ - BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java index fff476ed..807d6c8a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java @@ -1,48 +1,12 @@ package com.hzs.sale.order.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务类 - * - * @author hzs - * @since 2025-03-11 */ public interface ISaOrderWaresLimitService extends IService { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java index 85a7d103..20302130 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java @@ -5,9 +5,6 @@ import com.hzs.common.domain.sale.order.SaOrderWares; /** * 订单商品拆分 服务类 - * - * @author hzs - * @since 2024-12-13 */ public interface ISaOrderWaresService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index 73b02276..ec0b2da2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -91,8 +91,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { private IBdProductService iBdProductService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdWaresService iBdWaresService; @DubboReference IServiceChargeServiceApi iServiceChargeServiceApi; @@ -151,34 +149,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - @Override - public String checkOrderRetailProduct(OrderProductParam param) { - // 盒数商品对应的产品列表 - List pkProductList = iBdWaresService.listBoxProduct(BoxProductUtil.getBoxWaresListBySystemType(null)); - // 换货产品列表 - List paramProductList = param.getItemList().stream().map(OrderProductDetailParam::getPkProduct).collect(Collectors.toList()); - - SaOrder saOrder = iSaOrderService.getOne(Wrappers.lambdaQuery() - .eq(SaOrder::getOrderCode, param.getOrderCode()) - ); - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 盒数商品订单,换货的产品是否都是盒数商品下的,如果是则可以进行更换,如果不是则不能更换 - for (Integer pkProduct : paramProductList) { - if (!pkProductList.contains(pkProduct)) { - return "盒数商品与普通商品不能互相换货"; - } - } - } else { - // 非盒数商品订单 - for (Integer pkProduct : paramProductList) { - if (pkProductList.contains(pkProduct)) { - return "普通商品与盒数商品不能互相换货"; - } - } - } - return null; - } - @Override public Map queryChargeLog(List saOrderList, EApprovalBusiness eApprovalBusiness, Integer pkCountry) { // key 订单编号, value 扣款实体 @@ -1440,23 +1410,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } } else if (orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue())) { // 其他撤单 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return validateCancelOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - validateCancelOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 2025.03.05 复购可以升级,需要必须从最后一单开始撤单 List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), + Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), null); if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { validateCancelOrderVO.setMsg("撤销复购订单,只能从最新的订单开始撤销,最新的订单编号:" + saOrderList.get(0).getOrderCode()); @@ -2286,13 +2243,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { saOrderItems.setPkWares(0); saOrderItems.setPkWaresDetail(0); saOrderItems.setPkWaresSpecsSku(0); - - // 2025.02.11 如果是盒数商品换货,需要更新成最新的盒数商品ID - List tmpList = iBdWaresService.listBoxProductAndWares(BoxProductUtil.getBoxWaresListBySystemType(null), saOrderItems.getPkProduct(), ESpecialArea.getRetailSpecialAreaValue(saOrder.getOrderType())); - if (CollectionUtil.isNotEmpty(tmpList)) { - saOrderItems.setPkWares(tmpList.get(0).getPkWares()); - } - createOrderItemsList.add(saOrderItems); } else { // 更新数据 @@ -2377,13 +2327,8 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - /** - * @description: 校验自助撤单 - * @author: zhang jing - * @date: 2023/11/21 15:23 - * @param: [orderCancelParam, businessCode] - * @return: com.hzs.sale.order.vo.ValidateCancelOrderVO + * 校验自助撤单 **/ @Override public MyOrderVO checkSelfOrder(Long userId, MyOrderVO myOrderVO) { @@ -2392,7 +2337,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() || - myOrderVO.getOrderType() == EOrderType.RETAIL_UPGRADE.getValue() || myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue()) { String lastOrderCode = iSaOrderService.lastOrderList(userId, myOrderVO.getPkCountry()); if (StringUtils.isEmpty(lastOrderCode) || !lastOrderCode.equals(myOrderVO.getOrderCode())) { @@ -2455,21 +2399,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } } - // 升级撤单验证 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - myOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return myOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - myOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } myOrderVO.setSaOrderExt(saOrderExt); return myOrderVO; } @@ -2679,7 +2608,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { log.error("订单抵扣驳回处理失败:更新数据失败"); throw new BaseException(TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_ERROR)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 6469d6ba..744e5f9b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -781,14 +781,7 @@ public class SaOrderHandle { GradeDTO getMemberGradeAndAwardByCountry(CuMember cuMember, Integer specialArea, BigDecimal settleOrderAmount, BigDecimal settleOrderPv, Integer pkCountry, String upgradeWay) { // 根据推荐人等级获取推荐等级 - List gradeList; - if (EOrderType.UPGRADE_ORDER.getValue() != specialArea && - cuMember != null && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { - gradeList = gradeServiceApi.queryHaiFunGradeConfigByCondition(pkCountry).getData(); - } else { - gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); - } + List gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); if (gradeList != null && gradeList.size() > 0) { for (GradeDTO gradeDTO : gradeList) { if (validateGradeByAchieve(settleOrderAmount, settleOrderPv, gradeDTO)) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 51375c86..2840ac68 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -20,7 +20,6 @@ import com.hzs.sale.order.vo.WaresOrderVo; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.math.BigDecimal; import java.util.*; /** @@ -94,32 +93,16 @@ public class SaOrderItemsServiceImpl extends ServiceImpl selectByList(Long pkOrder) { return baseMapper.selectByList(pkOrder); } - /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List - **/ @Override public List getOrderItemsParams(List orderIdList) { return baseMapper.getOrderItemsParams(orderIdList); @@ -175,22 +158,11 @@ public class SaOrderItemsServiceImpl extends ServiceImpl selectByWaresCodeList(String orderCode) { return baseMapper.selectByWaresCodeList(orderCode); } - @Override - public BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType) { - return baseMapper.getRetailWaresQuantityNew(pkMember, waresCodeList, payTime, orderTypeList, systemType); - } - @Override public int countOrderDeliver(List orderCodeList, Integer pkCountry) { return baseMapper.countOrderDeliver(orderCodeList, pkCountry); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java index ee0d7485..207866f9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.sale.order.service.ISaOrderRelationItemsService; import org.springframework.stereotype.Service; /** - *

- * 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务实现类 */ @Service public class SaOrderRelationItemsServiceImpl extends ServiceImpl implements ISaOrderRelationItemsService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java index f71e24e7..0b26cdb7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java @@ -7,18 +7,9 @@ import com.hzs.sale.order.service.ISaOrderRelationService; import org.springframework.stereotype.Service; /** - *

* 订单与虚拟订单关联表 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 */ @Service public class SaOrderRelationServiceImpl extends ServiceImpl implements ISaOrderRelationService { - @Override - public SaOrderRelation querySaOrderRelationBySaOrder(String orderCode) { - return baseMapper.querySaOrderRelationBySaOrder(orderCode); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 28ef5cd3..223b158a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -8,7 +8,6 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; import com.hzs.common.core.constant.*; @@ -17,14 +16,11 @@ import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.exception.ServiceException; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.business.UpPolicyCurrency; -import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; @@ -32,7 +28,6 @@ import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.base.BdCountry; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; @@ -45,9 +40,7 @@ import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.CuMemberBankParam; import com.hzs.member.account.dto.MemberAmountDTO; -import com.hzs.member.achieve.IMemberAchieveServiceApi; import com.hzs.member.base.IMemberServiceApi; -import com.hzs.member.detail.ICuMemberDetailServiceApi; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.sale.deliver.service.ISaDeliverItemsService; import com.hzs.sale.index.vo.CuMemberMyMarketDetailVO; @@ -59,7 +52,6 @@ import com.hzs.sale.order.service.*; import com.hzs.sale.order.vo.*; import com.hzs.sale.product.service.IBdProductExtendService; import com.hzs.sale.wares.service.*; -import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; @@ -82,10 +74,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; -import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -102,8 +92,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IAwardsServiceApi awardsServiceApi; @DubboReference - IAreaServiceApi areaServiceApi; - @DubboReference IMemberBankServiceApi memberBankServiceApi; @DubboReference IMemberAccountServiceApi memberAccountServiceApi; @@ -116,16 +104,12 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IApprovalServiceApi approvalServiceApi; @DubboReference - IMemberAchieveServiceApi memberAchieveServiceApi; - @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @DubboReference ICuMemberServiceLogServiceApi cuMemberServiceLogServiceApi; @DubboReference IMemberTradeServiceApi memberTradeServiceApi; @DubboReference - ICuMemberDetailServiceApi iCuMemberDetailServiceApi; - @DubboReference IGradeServiceApi iGradeServiceApi; @Autowired @@ -143,49 +127,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Autowired private RabbitTemplate rabbitTemplate; @Autowired - private ISaOrderRelationService saOrderRelationService; - @Autowired private IBdWaresSpecsRelationService waresSpecsRelationService; @Autowired - private ISaOrderRelationItemsService saOrderRelationItemsService; - @Autowired private ISaDeliverItemsService saDeliverItemsService; @Autowired private IAcRetailPickService iAcRetailPickService; - @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; @Autowired private IOrderBusinessService orderBusinessService; @Autowired private ISaOrderChargeLogService saOrderChargeLogService; - @Autowired - private RedisService redisService; - - @Override - public List queryMemberExtByCondition(CuMember cuMember) { - return memberServiceApi.getMemberInfo(cuMember).getData(); - } - - @Override - public List querySponsorOnUmbrella(Long placeParentId, String phone) { - return memberServiceApi.querySponsorOnUmbrella(placeParentId, null, phone).getData(); - } - - @Override - public List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList) { - return memberServiceApi.selectPlaceSponsorUnderUmbrellaByCondition(memberId, cuMemberExtList).getData(); - } - - @Override - public List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent) { - return memberServiceApi.queryPlaceSponsorUnderUmbrella(memberId, placeParent).getData(); - } - - @Override - public CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept) { - return memberServiceApi.queryPlaceSponsorLastLeft(memberId, placeDept).getData(); - } @Override public SaOrder querySaleOrderByOrderCode(SaOrder saOrder) { @@ -271,11 +222,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return memberServiceApi.getMemberByCode(code).getData(); } - @Override - public Boolean lockKey(String key) { - return redisService.lockKeyOnce(key); - } - @Override public List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { return memberAccountServiceApi.queryMemberAccountByCondition(cuMemberAccount).getData(); @@ -285,11 +231,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl public CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList) { BigDecimal payMoney = saOrder.getOrderAmount(); - // 海粉只有升级可以用奖金币,其他专区只能用现金币,验证会员等级,会员是海粉的话除现金账户,其他账户置为0 CuMember cuMember = getCuMemberByKey(saOrder.getPkMember()); - if (EOrderType.UPGRADE_ORDER.getValue() != saOrder.getOrderType() && - cuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, cuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { + if (null != cuMember) { cuMemberAccount.setAccount1(BigDecimal.ZERO); cuMemberAccount.setAccount3(BigDecimal.ZERO); cuMemberAccount.setAccount4(BigDecimal.ZERO); @@ -355,12 +298,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 原始支付金额(订单金额 + 邮费) BigDecimal original = payMoney; - // 2024.05.30 与业务确认,政策币个人配置优先特殊配置 // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -458,111 +399,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 会员端的报单信息 - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - if (isToBePay) { - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - } else if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - // 2023.10.16按最新需求,注册订单需要在支付前需要显示会员编号 - cuMember = memberServiceApi.createRegisterMemberCode(cuMember).getData(); - } - - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者海粉订单 - if (isToBePay && !orderParam.getIsHaiFun()) { - processOrder(saOrderExt); - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(cuMember); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("confirmRegSaOrderByOrderParam 保存会员失败."); - throw new ServiceException("保存会员失败."); - } - } else { - log.error("confirmRegSaOrderByOrderParam 保存会员失败. {}", saveResult.getMsg()); - throw new ServiceException("保存会员失败."); - } - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - @Override - public Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember) { - // 获取会员编号、会员主键 - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者嗨粉订单 - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - return true; - } - - @Override - public SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember) { - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return null; - } - return saOrderExt; - } - - @Override - public CuMember packageCuMember(OrderParam orderParam) { - if (null != orderParam.getPkParent()) { - orderParam.setParentId(orderParam.getPkParent()); - } else { - if (StringUtils.isNotEmpty(orderParam.getParent())) { - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember != null) { - orderParam.setParentId(parentMember.getPkId()); - } - } - } - - if (StringUtils.isNotEmpty(orderParam.getPlaceParent())) { - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember != null) { - orderParam.setPlaceParentId(placeMember.getPkId()); - } - } - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - return cuMember; - } - - /** - * 设置会员最终的等级 - * - * @param cuMember 会员 - * @param saOrderExt 订单 - * @return boolean - */ @Override public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt); @@ -579,9 +415,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (parentCuMember.getPkSettleCountry() != null && cuMember.getPkSettleCountry() != null && Objects.equals(parentCuMember.getPkSettleCountry(), cuMember.getPkSettleCountry())) { GradeDTO validateGradeDTO = queryGradeConfigByCondition(parentCuMember.getPkSettleCountry(), parentCuMember.getPkSettleGrade()); // 获取推荐人可以推荐的等级 - GradeDTO tmpGradeDTO = gradeDTO; if (validateGradeDTO == null || validateGradeDTO.getBdGradeScopeExtList() == null || - validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> tmpGradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { + validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> gradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { return true; } } @@ -611,41 +446,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl return false; } - /** - * 保存订单信息 - * - * @param saOrderExt 订单 - */ - @Transactional(rollbackFor = Exception.class) - @Override - public void processOrder(SaOrderExt saOrderExt) { - // 待支付直接保存订单、会员 - // 保存订单 - save(saOrderExt); - // 将订单表主键封装为明细表主键 - List waresNumberParamList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkOrder(saOrderExt.getPkId()); - if (saOrderItems.getPkWares() != null && saOrderItems.getPkWares() != 0) { - // 换货或等,商品为0,则不需要处理 - waresNumberParamList.add(WaresNumberParam.builder().pkWares(saOrderItems.getPkWares()).number(saOrderItems.getWaresQuantity()).build()); - } - }); - // 更新销量 - // 过滤相同商品主键数据 - List waresNumberList = waresNumberParamList.stream().filter(DeduplicationUtil.distinctByKey(WaresNumberParam::getPkWares)).collect(Collectors.toList()); - waresSalesAccrual(waresNumberList); - // 保存订单明细 - saOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - } - @Override public boolean getIsToBePayByOrderType(Integer pkCountry, Integer specialArea) { String confirmPay; if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { @@ -671,8 +476,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (getIsToBePayByOrderType(pkCountry, specialArea)) { if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_TIME.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_TIME.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { @@ -693,359 +496,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return timeSecond; } - /** - * 点击支付按钮,输入密码,确认下单 - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun) { - boolean isToBePay = getIsToBePayByOrderType(newCuMember.getPkSettleCountry(), saOrderExt.getOrderType()); - Date currentDateTime = DateUtils.currentDateTime(); - Long pkCreator = saOrderExt.getPkCreator(); - newCuMember.setPayStatus(EPayStatus.PAID.getValue()); - newCuMember.setPayTime(currentDateTime); - saOrderExt.setPayTime(currentDateTime); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - if (isToBePay && !isHaiFun) { - // 根据业绩判断自动上树 - newCuMember.setPkModified(pkCreator); - newCuMember.setModifiedTime(currentDateTime); - saOrderExt.setPkModified(pkCreator); - saOrderExt.setModifiedTime(currentDateTime); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setPkModified(pkCreator); - saOrderItems.setModifiedTime(currentDateTime); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 更新订单信息 - updateSaOrder(saOrderExt); - } else { - newCuMember.setConsumeMoney(BigDecimal.ZERO); - newCuMember.setConsumeAchieve(BigDecimal.ZERO); - if (setLastCuMemberGrade(newCuMember, saOrderExt)) { - return false; - } - if (isHaiFun) { - if (null == newCuMember.getPkPlaceParent() - || null == newCuMember.getPlaceDept()) { - // 2024.01.13 当安置人和安置部门为空时,则进行重新上树 - CuMember cuMember = repeatTry(newCuMember, Boolean.FALSE); - newCuMember.setPkPlaceParent(cuMember.getPkPlaceParent()); - newCuMember.setPlaceDept(cuMember.getPlaceDept()); - } - isToBePay = false; - } - newCuMember.setCreationTime(currentDateTime); - saOrderExt.setCreationTime(currentDateTime); - - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 保存订单信息 - processOrder(saOrderExt); - } - - // 2024.05.29 会员续约需求,【有效期】为购买时间次年的上月最后一天 - newCuMember.setExpireDate(DateUtils.beforeMonthLastDate(DateUtils.addYears(currentDateTime, 1))); - // 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员) - newCuMember.setStopDate(DateUtils.addMonths(newCuMember.getExpireDate(), 6)); - - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(newCuMember, saOrderExt, isToBePay, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRegSaOrder 保存会员失败!."); - throw new ServiceException("保存会员失败!."); - } - } else { - log.error("payRegSaOrder 保存会员失败!.,{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!."); - } - - try { - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - log.error("payRegSaOrder 发送短信或推送MQ失败,", e); - } - return Boolean.TRUE; - } - - /** - * 尝试重新换位置 - * - * @param newCuMember 修改的会员 - */ - private synchronized CuMember repeatTry(CuMember newCuMember, Boolean isFirstAchieve) { - CuMember cuMember = obtainLastResettleByRecommend(newCuMember, isFirstAchieve, null); - if (!lockKey(CacheConstants.POSITION + cuMember.getPkPlaceParent() + cuMember.getPlaceDept())) { - try { - Thread.sleep(300); - repeatTry(newCuMember, isFirstAchieve); - } catch (Exception e) { - e.printStackTrace(); - } - } - return cuMember; - } - - private void updateSaOrder(SaOrderExt saOrderExt) { - redisService.lockKeyMany(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - try { - updateById(saOrderExt); - saOrderItemsService.updateBatchById(saOrderExt.getOrderItemsList()); - } finally { - redisService.unlock(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - } - } - - /** - * @param saOrderExt 销售订单 - * @Description: 销售订单更改状态为待支付 - * @return: void - * @Author: sui q - * @Date: 2022/10/24 21:35 - */ - public void encapsulationSaOrder(SaOrderExt saOrderExt) { - saOrderExt.setPayTime(new Date()); - saOrderExt.setPkModified(saOrderExt.getPkCreator()); - saOrderExt.setModifiedTime(saOrderExt.getPayTime()); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkModified(saOrderExt.getPkCreator()); - saOrderItems.setModifiedTime(saOrderExt.getPayTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - }); - } - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - GradeDTO oldGradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - // 封装等级,重新计算会员等级 - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - String upgradeWay = querySystemConfigByKey(saOrderExt.getPkCountry(), ESystemConfig.UPGRADE_WAY.getKey()); - if (oldGradeDTO.getGradeValue() >= cuMember.getPkSettleGradeValue() && !Objects.equals(Integer.toString(EUpgradeWay.TOTAL.getValue()), upgradeWay)) { - return false; - } - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - // 处理会员信息,更新会员等级,扣款 - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payUpgradeSaOrder 保存会员失败!!!"); - throw new ServiceException("保存会员失败!!!"); - } - } else { - log.error("payUpgradeSaOrder 保存会员失败!!!{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!!!"); - } - try { -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - - if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRepurchaseSaOrder(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember; - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { - cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - } else { - cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); - } - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (saOrderExt.getOrderItemsList().size() == 0) { - return false; - } - - // 升级订单验证等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - } - - if (isToBePay) { - processOrder(saOrderExt); - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - /** - * @param orderAmount 订单金额 - * @param postage 邮费 - * @param saOrderExtList 订单列表 - * @Description: 复购订单、福利订单插入 订单跟虚拟订单关系 - * @return: void - * @Author: sui q - * @Date: 2023/3/17 17:46 - */ - private void saveSaOrderRelation(BigDecimal orderAmount, BigDecimal postage, List saOrderExtList) { - if (saOrderExtList.size() > 0) { - SaOrderExt saOrderExt = saOrderExtList.get(0); - SaOrderRelation saOrderRelation = SaOrderRelation.builder() - .orderCode(saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue())) - .orderType(saOrderExt.getOrderType()) - .pkRate(saOrderExt.getPkRate()) - .orderAmount(orderAmount) - .postage(postage) - .build(); - saOrderRelation.setPkCreator(saOrderExt.getPkCreator()); - saOrderRelation.setPkCountry(saOrderExt.getPkCountry()); - saOrderRelationService.save(saOrderRelation); - List saOrderRelationItemsList = new ArrayList<>(); - for (SaOrderExt saOrder : saOrderExtList) { - SaOrderRelationItems saOrderRelationItems = SaOrderRelationItems.builder() - .pkOrder(saOrder.getPkId()) - .build(); - saOrderRelationItems.setPkCountry(saOrder.getPkCountry()); - saOrderRelationItems.setPkCreator(saOrder.getPkCreator()); - saOrderRelationItemsList.add(saOrderRelationItems); - } - saOrderRelationItemsService.saveBatch(saOrderRelationItemsList); - } - } - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - - // 处理会员信息,更新会员等级,扣款 - CuMember member = getCuMemberByKey(saOrderExt.getPkMember()); - CuMember cuMember = calculateHaFunMemberGrade(saOrderExt, member); - - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRepurchaseSaOrder 保存订单失败!"); - throw new ServiceException("保存订单失败!"); - } - } else { - log.error("payRepurchaseSaOrder 保存订单失败! {}", saveResult.getMsg()); - throw new ServiceException("保存订单失败!"); - } - - try { -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - /** - * 封装整个订单 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - private SaOrderExt packageWholeSaOrder(OrderParam orderParam, CuMember cuMember) { - // 获取订单编号 - String orderCode = orderParam.getOrderCode(); - if (StringUtils.isEmpty(orderCode)) { - orderCode = saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue()); - } - SaOrderExt saOrderExt = saOrderHandle.packageSaveSaOrder(orderParam, cuMember, orderCode); - // 封装订单明细(2024.02.02添加处理订单扩展类型) - saOrderHandle.packSaOrderItems(cuMember, saOrderExt, orderParam); - // 第二次封装订单,根据明细表计算订单主表金额、业绩,处理明细仓库 - // key为产品id - List productIdList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderExt.setPkRate(saOrderItems.getPkRate()); - if (EYesNo.YES.getIntValue() == saOrderItems.getIsGift()) { - return; - } - // 总价; - saOrderExt.setOrderAmount(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAmount(), saOrderItems.getPrice(), saOrderItems.getQuantity())); - // 总业绩 - saOrderExt.setOrderAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAchieve(), saOrderItems.getAchievement(), saOrderItems.getQuantity())); - // 总考核业绩 - saOrderExt.setOrderAssAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAssAchieve(), saOrderItems.getAssAchievement(), saOrderItems.getQuantity())); - productIdList.add(saOrderItems.getPkProduct()); - }); - - if (CountryConstants.CHINA_COUNTRY.equals(saOrderExt.getPkCountry())) { - // 中国金额四舍五入保留2位小数 - saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().setScale(2, RoundingMode.HALF_UP)); - } - - if (productIdList.size() > 0 && saOrderExt.getRecProvince() != null) { - // 根据产品,先查看是否由仓库,有仓库的话修改仓库 - List bdProductStorehouseList = areaServiceApi.queryBdProductStorehouseByCondition(productIdList, saOrderExt.getRecProvince()).getData(); - Map bdProductStorehouseMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(bdProductStorehouseList)) { - bdProductStorehouseList.forEach(bdProductStorehouse -> bdProductStorehouseMap.put(bdProductStorehouse.getPkProduct(), bdProductStorehouse)); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - if (bdProductStorehouseMap.containsKey(saOrderItems.getPkProduct())) { - BdProductStorehouseExt bdProductStorehouseExt = bdProductStorehouseMap.get(saOrderItems.getPkProduct()); - saOrderItems.setPkStorehouse(bdProductStorehouseExt.getPkStorehouse().intValue()); - } - } - } - } - saOrderExt.setUploadAchieve(saOrderExt.getOrderAchieve()); - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - - @Override public void queryPostageByParam(OrderParam orderParam) { CuMember cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); @@ -1100,10 +550,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl String upgradeWay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_WAY.getKey()); // 会员等级为1的话 为一次性补差升级; CuMember cuMember = getCuMemberByKey(pkMember); - if (specialArea.equals(EOrderType.UPGRADE_ORDER.getValue())) { - //补差升级,当天的按照累计升级,非当天按照补差升级 - upgradeWay = Integer.toString(EUpgradeWay.DIFFERENCE.getValue()); - } return saOrderHandle.getMemberGradeAndAwardByCountry(cuMember, specialArea, orderAmount, orderAchieve, pkCountry, upgradeWay); } @@ -1111,8 +557,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl * 生成空单注册 * * @param orderBlankRegParams 参数 - * @return: String - * @Date: 2022/11/14 15:10 */ @Override @Transactional(rollbackFor = Exception.class) @@ -1495,50 +939,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return saOrderHandle.queryGradeConfigByCondition(pkCountry, pkGrade); } - @Override - public CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst) { - // 验证是否首单 - if (isFirst == null) { - isFirst = validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - } - cuMember = memberAchieveServiceApi.queryCuMemberAchieveByPkMember(cuMember, isFirst, isFirstAchieve).getData(); - // 验证是否推荐过人,没有推荐只能放入极左极下 - return cuMember; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkParent 推荐人 - * @param pkCountry 国家 - */ - @Override - public boolean validateFirstOrder(Long pkParent, Integer pkCountry) { - String validateFirstOrder = querySystemConfigByKey(pkCountry, ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateFirstOrder)) { - Integer count = queryCuMemberByPkMember(pkParent); - return count == 0; - } - return false; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - @Override - public boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry) { - String validateParent = querySystemConfigByKey(pkCountry, ESystemConfig.PARENT_VALIDATE.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateParent)) { - // 因为使用Member作为入参,此处 category 传入 10,代表 0=正常,1=待激活 - List cuMemberExtList = queryMemberExtByCondition(CuMember.builder().pkPlaceParent(pkPlaceParent).placeDept(EPlaceDept.LEFT_DEPT.getValue()).category(10).build()); - return cuMemberExtList.size() == 0; - } - return false; - } - @Override public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); @@ -1729,8 +1129,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl private CuMember calculateHaFunMemberGrade(SaOrderExt saOrderExt, CuMember newCuMember) { CuMember cuMember = null; - if (newCuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, newCuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, newCuMember.getPkSettleCountry())) { + if (newCuMember != null) { int oldLevel = newCuMember.getPkSettleGrade(); // 封装等级,重新计算会员等级 setLastCuMemberGrade(newCuMember, saOrderExt); @@ -1742,12 +1141,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return cuMember; } - /** - * 空单注册审核通过 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1757,12 +1150,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 空单注册审核驳回 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderReject(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1794,9 +1181,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 定时关单 订单三十分钟未支付自动关闭 - */ @Override public void closeOrder() { R> configMap = systemConfigServiceApi.getSystemConfig(); @@ -1815,9 +1199,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REGISTER_ORDER_TIME.getKey())) { // 注册专区 orderType = EOrderType.REGISTER_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.UPGRADE_ORDER_TIME.getKey())) { - // 升级专区 - orderType = EOrderType.UPGRADE_ORDER.getValue(); } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REPURCHASE_ORDER_TIME.getKey())) { // 复购专区时间 orderType = EOrderType.REPURCHASE_ORDER.getValue(); @@ -1836,27 +1217,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - /** - * 统计用户pv - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumPv(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumPv(startPayDate, endPayDate, memberId); } - /** - * 统计用户金额 - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumAmount(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumAmount(startPayDate, endPayDate, memberId); @@ -1867,9 +1232,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderType(memberId, pkCountry); } - /** - * 商品销量累计 - */ @Override public void waresSalesAccrual(List waresNumberParamList) { try { @@ -1907,7 +1269,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl public SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate) { List orderTypeList = new ArrayList<>(); orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("sum(order_amount) orderAmount,sum(order_achieve) orderAchieve") .eq(SaOrderFieldConstants.ORDER_STATUS, EOrderStatus.PAY.getValue()) @@ -1932,12 +1293,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return i; } - /** - * 根据编号查询会员首单 - * - * @param memberCodeList - * @return - */ @Override public List checkMemberIsFirstOrder(List memberCodeList) { return baseMapper.checkMemberIsFirstOrder(memberCodeList); @@ -2015,12 +1370,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryByPkIdOrCode(pkOrder, orderCode, pkCountry); } - - /** - * 查询订单单品统计 - * - * @return - */ @Override public List singleItemStat(SingleItemStatParam singleItemStatParam) { return baseMapper.singleItemStat(singleItemStatParam); @@ -2095,8 +1444,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { + if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -2193,28 +1541,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 计算新零售撤单等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @return - */ - private GradeDTO calculateRetailCancelGrade(CuMember cuMember, SaOrder saOrder) { - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrder.getPkId()).getData(); - if (null != cuMemberLevel) { - return gradeServiceApi.getGrade(cuMemberLevel.getNewLevel()).getData(); - } - - // 没有升级记录,直接查会员注册信息表 - CuMemberRegister cuMemberRegister = iCuMemberDetailServiceApi.getMemberRegister(cuMember.getPkId()).getData(); - if (null == cuMemberRegister) { - throw new ServiceException("没有会员注册信息"); - } - return gradeServiceApi.getGrade(cuMemberRegister.getPkRegisterGrade()).getData(); - } - /** * 处理撤销升级订单 * @@ -2226,93 +1552,13 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void handleCancelUpgradeOrder(SaOrderExt saOrderExt, SaOrder updSaOrder, Long pkApprove, BusinessCommissionDTO businessCommissionDTO) { // 其他撤单 撤销升级订单 CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 计算等级 - // 空单注册,从cu_member_register中获取 - if (updSaOrder == null) { - CuMemberRegister cuMemberRegister = memberServiceApi.queryCuMemberRegister(saOrderExt.getPkMember()).getData(); - cuMember.setPkRegisterGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setPkSettleGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setConsumeMoney(BigDecimal.ZERO); - cuMember.setConsumeAchieve(cuMemberRegister.getConsumeAchieve()); - - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrderExt.getPkId()).getData(); - if (null != cuMemberLevel) { - // 存在手动升级 - cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); - } - } else { - // 传的订单是当前撤的订单 - GradeDTO gradeDTO = calculateRetailCancelGrade(cuMember, saOrderExt); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - } - - Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); - if (null == firstDate) { - // 盒数商品订单最早的时间为空,则会员未激活 - cuMember.setPayTime(null); - cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); - cuMember.setIsActivate(EYesNo.NO.getIntValue()); - } - saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单存在盒数商品撤单,需要处理降级操作 - if (saOrderExt.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // TODO 目前只有注册、升级才能激活,复购不进行处理 -// Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); -// if (null == firstDate) { -// // 盒数商品订单最早的时间为空,则会员未激活 -// cuMember.setPayTime(null); -// cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); -// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } - - // TODO 恢复升级专区,复购专区不需要处理等级问题 -// // 如果复购订单后面还有升级订单,不需要处理等级问题; 复购订单后面没有升级订单,走新逻辑校验 -// if (this.count(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, saOrderExt.getPkMember()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_UPGRADE.getValue()) -// .ge(SaOrder::getPayTime, saOrderExt.getPayTime()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// ) == 0) { -// // 带有盒数商品的订单,需要校验等级 -// List gradeList = iGradeServiceApi.getRetailGradeList().getData(); -// // 当前会员等级 -// BdGrade memberGrade = this.getGrade(cuMember.getPkSettleGrade(), gradeList); -// -// // 需要添加的升级记录列表 -// List createLevelList = new ArrayList<>(); -// // 需要删除的升级记录列表 -// List deleteLevelList = new ArrayList<>(); -// // 新等级计算 -// BdGrade newGrade = this.handleNewGrade(cuMember, memberGrade, gradeList, saOrderExt, createLevelList, deleteLevelList); -// -// if (memberGrade.getGradeValue() < EGrade.VIP.getValue() && newGrade.getGradeValue() < memberGrade.getGradeValue()) { -// // 当前会员等级不是V4或者V5 并且 新等级小于当前等级需要进行处理 -// saOrderExt.setNewGrade(newGrade); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } -// saOrderExt.setCreateLevelList(createLevelList); -// saOrderExt.setDeleteLevelList(deleteLevelList); -// } - } - } else if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { // 新提货订单 if (!iAcRetailPickService.cancelRetailPickOrder(saOrderExt.getPkId(), pkApprove)) { throw new ServiceException("撤销订单退还提货失败"); } } - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || - EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { - // 需要查询盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); - // 复购、重消订单处理限购 - iSaOrderWaresLimitService.updateCancelOrder(saOrderExt.getPkId(), saOrderExt.getPkMember(), saOrderExt.getModifiedTime(), boxProductList); - } - if (!memberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO).getData()) { throw new ServiceException("撤单处理会员失败"); } @@ -2326,7 +1572,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void pushCancelOrderMq(SaOrderExt saOrderExt) { try { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { // 撤单标记为 true @@ -2349,71 +1594,14 @@ public class SaOrderServiceImpl extends ServiceImpl impl gradeList = iGradeServiceApi.getRetailGradeList().getData(); } - // 盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(systemType); - // 当前产品盒数 BigDecimal boxNum = BigDecimal.ZERO; - // 处理商品盒数 - this.handleWaresBoxNum(specialArea, orderItemsParams); - // 判断订单明细中指定产品数量,校验等级 - for (OrderItemsParam orderItemsParam : orderItemsParams) { - if (boxWaresList.contains(orderItemsParam.getWaresCode())) { - // 存在指定商品,需要累计盒数 - boxNum = boxNum.add(orderItemsParam.getBoxNum().multiply(new BigDecimal(orderItemsParam.getQuantity()))); - } - } // 返回等级 BdGrade bdGrade = null; if (ESpecialArea.RETAIL_REGISTER.getValue() == specialArea) { // 注册专区直接算等级 - bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea) { - // 升级专区,一次性补差升级 - if (boxNum.compareTo(BigDecimal.ZERO) == 0) { - // 不满足升级条件 - throw new ServiceException("不满足升级条件"); - } - - // 当前会员等级 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); - // 2025.08.01 非雨汐团队会多升2级 - if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { - // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - - // 获取升级盒数基数 - BigDecimal baseBoxNum = this.handleBaseBoxNum(updateGradeMember, memberGrade, gradeList, boxWaresList, systemType); - // 计算等级 - bdGrade = this.getGradeByBox(boxNum.add(baseBoxNum), gradeList, memberGrade, true); - - if (bdGrade.getGradeValue().equals(memberGrade.getGradeValue()) - && (EGrade.HAI_FAN.getValue() == bdGrade.getGradeValue() || EGrade.YOU_KE.getValue() == bdGrade.getGradeValue()) - ) { - // 旧等级与新等级相同 并且 旧等级为V1或V2 - return null; - } - - // 2025.08.01 非雨汐团队会多升2级 - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - - // 会员等级 大于等于 购买盒数等级,则不满足升级条件 - if (memberGrade.getGradeValue().compareTo(tmpGrade.getGradeValue()) >= 0) { - return null; - } + bdGrade = this.getGradeByBox(boxNum, gradeList, null); } return bdGrade; } @@ -2421,13 +1609,12 @@ public class SaOrderServiceImpl extends ServiceImpl impl /** * 根据盒数计算等级 * - * @param boxTotal 总盒数 - * @param gradeList 等级列表(可为空) - * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 - * @param checkUpgrade 校验升级 + * @param boxTotal 总盒数 + * @param gradeList 等级列表(可为空) + * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 * @return */ - private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade, boolean checkUpgrade) { + private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade) { if (CollectionUtil.isEmpty(gradeList)) { gradeList = iGradeServiceApi.getRetailGradeList().getData(); } @@ -2440,20 +1627,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl .max(Comparator.comparingInt(BdGrade::getGradeValue)).get(); } else { // 非注册处理 -// if (checkUpgrade) { -// // 当前等级大于等于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } else { -// // 当前等级大于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) > 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } - // 查询等级比现在当前等级大的,然后倒序排序,再查询 购买盒数 <= 等级盒数 的第一个等级,就是当前升级的等级 Optional gradeOptional = gradeList.stream() // new 2025.06.25 V1-V3升级多送两级,需要支持送完还能买,此处暂时注释掉 @@ -2465,838 +1638,4 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - - /** - * 处理升级盒数基数 - * - * @param cuMember 会员信息 - * @param memberGrade 会员等级信息 - * @param gradeList 等级列表 - * @param boxWaresList 盒数商品列表 - * @param systemType 所属系统 - * @return - */ - private BigDecimal handleBaseBoxNum(CuMember cuMember, BdGrade memberGrade, List gradeList, List boxWaresList, - Integer systemType) { - // 升级盒数基数 - BigDecimal baseBoxNum = BigDecimal.ZERO; - // 会员所有升级记录 - List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); - if (CollectionUtil.isNotEmpty(memberLevelList)) { - Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); - if (lastManualOptional.isPresent()) { - // 最新一次的手动升级 - CuMemberLevel lastMemberLevel = lastManualOptional.get(); - BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); - if (lastUpdateGrade.getGradeValue() >= EGrade.MAKER.getValue()) { - // new 2025.06.25 V1-V3升级多送两级,但手动开到V3及以上,则不能继续购买升级 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - // 盒数基数 = 手动升级盒数 + 手动升级之后的升级订单盒数 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, lastMemberLevel.getUpgradeTime(), Collections.singletonList(EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = lastUpdateGrade.getBoxNumber().add(oldBoxNum); - } else { - baseBoxNum = lastUpdateGrade.getBoxNumber(); - } - } else { - // 没有手动升级记录 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = oldBoxNum; - } - } - } - return baseBoxNum; - - -// // 获取今天开始时间 -// Date todayDate = DateUtils.getStartTime(new Date()); -// // 2025.03.18 调整需求,升级走当天累计,当天买的所有都进行积累,24点之后则重新累积(手动升级前后的盒数都算累计) -// int baseBoxNum = 0; -// -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 如果今天有手动升级记录,则以手动升级记录的盒数 + 今天购买的盒数做累计 -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent() && lastManualOptional.get().getUpgradeTime().compareTo(todayDate) >= 0) { -// // 存在今天的手动升级记录 -// CuMemberLevel lastMemberLevel = lastManualOptional.get(); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } else { -// // 如果今天没有手动升级记录,则以今天以前最后一条升级记录的盒数 + 今天购买的盒数做累计 -// memberLevelList = memberLevelList.stream().filter(tmp -> tmp.getUpgradeTime().compareTo(todayDate) < 0).collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// CuMemberLevel lastMemberLevel = memberLevelList.get(0); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } -// } -// } -// -// return baseBoxNum + saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxProductList, todayDate, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); - - -// // 是否当天购买(当天走累计升级,非当天走一次性补差) -// if (HzsUtil.checkCreateMember(cuMember.getCreationTime())) { -// // 当天,走累计升级 -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent()) { -// // 有手动升级记录 -// CuMemberLevel lastManual = lastManualOptional.get(); -// // 手动升级等级 -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastManual.getNewLevel())).findFirst().get(); -// // 升级之后购买的订单盒数 -// int newBoxNumber = saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, lastManual.getUpgradeTime(), -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// // 基数盒数 = 手动升级的等级盒数 + 手动升级之后购买的盒数 -// return lastUpdateGrade.getBoxNumber() + newBoxNumber; -// } else { -// // 没有手动升级记录 -// // 基数盒数 = 购买的盒数 -// return saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, null, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// } -// } -// } else { -// if (null != memberGrade) { -// // 非当天,走一次性补差 -// // 基数盒数 = 当前等级的盒数 -// return memberGrade.getBoxNumber(); -// } -// } -// return 0; - } - -// /** -// * 处理日升级新 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 新等级(可为null) -// * @param manualUpgradeLevel 手动升级等级(可为null) -// * @param queryStartTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录列表 -// * @return -// */ -// private BdGrade handleTodayGrade(CuMember cuMember, Integer oldLevel, Integer lastLevel, Integer manualUpgradeLevel, Date queryStartTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询撤单当天的注册、复购订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .in(SaOrder::getOrderType, EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// // 如果存在手动升级,则以手动升级为基数 -// if (null != manualUpgradeLevel) { -// int tmpBox = this.getGrade(manualUpgradeLevel, gradeList).getBoxNumber(); -// if (tmpBox != 0) { -// oldGradeBox = tmpBox; -// } -// } -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理日升级后每天升级 -// * -// * @param cuMember -// * @param oldGrade -// * @param queryStartTime -// * @param queryEndTime -// * @param memberLevelList -// * @param gradeList -// * @param createLevelList -// * @param deleteLevelList -// * @return -// */ -// private BdGrade handleTodayNextNew(CuMember cuMember, BdGrade oldGrade, Date queryStartTime, Date queryEndTime, -// List memberLevelList, List gradeList, -// List createLevelList, List deleteLevelList) { -// if (queryStartTime.compareTo(new Date()) >= 0) { -// // 查询时间大于等于当前时间了,则结束处理 -// return oldGrade; -// } -// -// // 订单购买当天所有升级记录 -// List todayLevelList = memberLevelList.stream() -// .filter(tmp -> (tmp.getUpgradeTime().compareTo(queryStartTime) >= 0 && tmp.getUpgradeTime().compareTo(queryEndTime) <= 0)) -// .collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(todayLevelList)) { -// // 处理当日等级 -// Integer oldLevel = oldGrade.getPkId(); -// Integer lastLevel = todayLevelList.get(todayLevelList.size() - 1).getNewLevel(); -// // 手动升级记录 -// Integer manualUpgradeLevel = null; -// -// // 当天最后一条手动升级记录 -// Optional manualUpgradeOptional = todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() == tmp.getUpType()) -// .max(Comparator.comparing(CuMemberLevel::getUpgradeTime)); -// if (manualUpgradeOptional.isPresent()) { -// // 存在手动升级记录(计算等级为手动升级盒数为基数 + 当天购买的订单盒数) -// // 删除升级记录时,只删除非手动升级的 -// deleteLevelList.addAll(todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() != tmp.getUpType()) -// .collect(Collectors.toList())); -// // 重算订单当天升级记录(存在手动升级) -// manualUpgradeLevel = manualUpgradeOptional.get().getNewLevel(); -// } else { -// // 不存在手动升级记录(当天购买的订单盒数) -// deleteLevelList.addAll(todayLevelList); -// } -// -// // 今天重算等级 -// oldGrade = this.handleTodayGrade(cuMember, oldLevel, lastLevel, manualUpgradeLevel, -// queryStartTime, queryEndTime, gradeList, createLevelList); -// if (lastLevel.equals(oldGrade.getPkId())) { -// // 重算之后和重算之前等级一致,直接返回当前会员等级 -// return oldGrade; -// } -// } -// -// return this.handleTodayNextNew(cuMember, oldGrade, DateUtils.addDays(queryStartTime, 1), DateUtils.addDays(queryEndTime, 1), -// memberLevelList, gradeList, createLevelList, deleteLevelList); -// } - -// /** -// * 处理首日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleToday(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 存在手动升级,只需要重算手动升级之前的 -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// return newGrade; -// } - -// /** -// * 首日等级有变化,处理次日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleTodayNext(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 次日升级之前的等级 -// BdGrade oldGrade = this.getGrade(oldLevel, gradeList); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, null != queryEndTime ? queryEndTime : new Date()) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理次日一次性升级 -// * -// * @param cuMember 会员信息 -// * @param queryStartTime 升级查询开始时间 -// * @param queryEndTime 升级查询结束时间 -// * @param oldGrade 升级旧等级 -// * @param lowGradeList 需要处理的升级等级 -// * @param gradeList 等级列表 -// * @param createLevelList 需要新増的升级记录 -// */ -// private BdGrade handleNextDay(CuMember cuMember, Date queryStartTime, Date queryEndTime, BdGrade oldGrade, List lowGradeList, -// List gradeList, List createLevelList) { -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,订单盒数大于等于升级盒数的订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getBoxNum, lowGradeList.get(0).getBoxNumber()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(null != queryEndTime, SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV1.getPkId().equals(orderV3.getPkId())) { -// // V1和V3相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V1和V3不相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// -// } -// } -// return newGrade; -// } - - /** - * 获取等级(没有则返回V0) - * - * @param eGrade 等级枚举 - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(EGrade eGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getGradeValue().equals(eGrade.getValue())).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 获取等级(没有则返回V0) - * - * @param pkGrade 等级ID - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(Integer pkGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(pkGrade)).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 封装会员等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @param oldLevel 旧等级 - * @param newLevel 新等级 - * @return - */ - private CuMemberLevel packageMemberLevel(CuMember cuMember, SaOrder saOrder, Integer oldLevel, Integer newLevel) { - CuMemberLevel cuMemberLevel = CuMemberLevel.builder() - .pkMember(cuMember.getPkId()) - .upgradeTime(saOrder.getPayTime()) - .upType(EUpgradeType.BUY_UPGRADE.getValue()) - .oldLevel(oldLevel) - .newLevel(newLevel) - .pkOrder(saOrder.getPkId()) - .build(); - cuMemberLevel.setPkCreator(cuMember.getPkId()); - cuMemberLevel.setPkCountry(cuMember.getPkSettleCountry()); - return cuMemberLevel; - } - - /** - * new 2025.06.25 V1-V3升级多送两级处理 - * - * @param gradeList - * @param pkGrade - * @return - */ - @Override - public BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - // new 2025.06.14 添加新需求,V1-V3,购买多给两级 - // new 2025.06.25 V1-V3升级多送两级,可以继续购买升级 - // 临时处理等级 - BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); - - if (EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { - // V1 给 V3 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.MAKER.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { - // V2 给 V4 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { - // V3 给 V5 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.S_VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } - - return tmpGrade; - } - - /** - * 处理商品盒数 - * - * @param orderItemsParams - */ - private void handleWaresBoxNum(Integer specialArea, List orderItemsParams) { - if (CollectionUtil.isNotEmpty(orderItemsParams)) { - List waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); - List waresList = iBdWaresService.list(Wrappers.lambdaQuery() - .eq(BdWares::getSpecialArea, specialArea) - .in(BdWares::getWaresCode, waresCodeList) - ); - if (CollectionUtil.isNotEmpty(waresList)) { - for (OrderItemsParam orderItemsParam : orderItemsParams) { - for (BdWares bdWares : waresList) { - if (orderItemsParam.getWaresCode().equals(bdWares.getWaresCode())) { - orderItemsParam.setBoxNum(bdWares.getBoxNum()); - } - } - } - } - } - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java index 94934179..5890ebf8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java @@ -1,37 +1,15 @@ package com.hzs.sale.order.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; import com.hzs.sale.order.mapper.SaOrderWaresLimitMapper; import com.hzs.sale.order.service.ISaOrderWaresLimitService; import org.springframework.stereotype.Service; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务实现类 - * - * @author hzs - * @since 2025-03-11 */ @Service public class SaOrderWaresLimitServiceImpl extends ServiceImpl implements ISaOrderWaresLimitService { - @Override - public List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList) { - return baseMapper.listWaresList(pkMember, orderType, limitDate, waresCodeList); - } - - @Override - public int saveBatchLimit(List dataList) { - return baseMapper.saveBatchLimit(dataList); - } - - @Override - public int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList) { - return baseMapper.updateCancelOrder(pkOrder, pkMember, modifiedTime, waresCodeList); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index cb7b97a0..a8acbfec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.retail.wares.param.RetailWaresParam; import com.hzs.sale.wares.param.WaresNoSaleParam; @@ -130,18 +129,6 @@ public interface BdWaresMapper extends BaseMapper { */ List listRetailWaresByCondition(@Param("param") RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProduct(@Param("boxWaresList") List boxWaresList, - @Param("pkProduct") Integer pkProduct, - @Param("specialArea") Integer specialArea); - /** * 查询非在售商品 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index f475689c..3538b0f8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.sale.wares.BdWaresAuthority; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.retail.wares.param.RetailWaresParam; @@ -196,24 +195,6 @@ public interface IBdWaresService extends IService { */ List listRetailWaresByCondition(RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @return - */ - List listBoxProduct(List boxWaresList); - - /** - * 查询盒数商品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea); - /** * 查询非在售商品 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index e67fbc11..4e3388f6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1156,16 +1156,6 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listRetailWaresByCondition(param); } - @Override - public List listBoxProduct(List boxWaresList) { - return baseMapper.listBoxProduct(boxWaresList, null, null).stream().map(BdWaresDetail::getPkProduct).collect(Collectors.toList()); - } - - @Override - public List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea) { - return baseMapper.listBoxProduct(boxWaresList, pkProduct, specialArea); - } - @Override public List listWaresNoSale(WaresNoSaleParam param) { return baseMapper.listWaresNoSale(param); diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 6c78b2c4..244385f2 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -1132,35 +1132,6 @@ and so.ORDER_CODE = #{orderCode} - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml index 1b98af63..591cf9e1 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml @@ -2,90 +2,4 @@ - - - - - - merge into sa_order_wares_limit sowl - using ( - - select #{item.pkMember} PK_MEMBER, - #{item.orderType} ORDER_TYPE, - #{item.pkWares} PK_WARES, - #{item.waresQuantity} WARES_QUANTITY, - #{item.limitDate} LIMIT_DATE, - #{item.pkCountry} PK_COUNTRY - from dual - - ) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - WHEN MATCHED THEN - update set sowl.WARES_QUANTITY = sowl.WARES_QUANTITY + tmp.WARES_QUANTITY - WHEN NOT MATCHED THEN - insert - (PK_ID, - PK_MEMBER, - ORDER_TYPE, - PK_WARES, - WARES_QUANTITY, - LIMIT_DATE, - PK_COUNTRY, - PK_CREATOR) - values - (sa_order_wares_limit_seq.nextval, - tmp.pk_member, - tmp.order_type, - tmp.pk_wares, - tmp.wares_quantity, - tmp.limit_date, - tmp.pk_country, - tmp.pk_member) - - - - - merge into SA_ORDER_WARES_LIMIT sowl - using (select so.pk_member PK_MEMBER, - so.order_type ORDER_TYPE, - soi.pk_wares PK_WARES, - sum(soi.wares_quantity) WARES_QUANTITY, - to_char(so.pay_time, 'yyyymm') LIMIT_DATE - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - and to_char(soi.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - left join bd_wares bw - on bw.pk_id = soi.pk_wares - where so.order_status = 1 - and so.pk_id = #{pkOrder} - and so.pk_member = #{pkMember} - and to_char(so.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - and bw.wares_code in - - #{item} - - group by so.pk_member, so.order_type, soi.pk_wares, so.pay_time) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - when matched then - update set sowl.wares_quantity = sowl.wares_quantity - tmp.wares_quantity - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 639146e4..09231787 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -444,28 +444,6 @@ order by bw.SORT desc, bw.CREATION_TIME desc - - - - - diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java index 4b1ec351..ca3ed9fb 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java @@ -260,11 +260,6 @@ public class CacheConstants { */ public final static String DRAW_REWARD_NUMBER = CACHE_PREFIX + "reward:num:"; - /** - * 抽奖更新次数 - */ - public final static String MEMBER_DEFAULT_DISPLAY = CACHE_PREFIX + "member:display:"; - /** * 交易配置 @@ -297,10 +292,6 @@ public class CacheConstants { * 新零售缓存参数(注册) */ public static final String RETAIL_TEMP_REG_PARAM = CACHE_PREFIX + "retail:temp_reg:param:"; - /** - * 新零售缓存参数(升级) - */ - public static final String RETAIL_TEMP_UPG_PARAM = CACHE_PREFIX + "retail:temp_upg:param:"; /** * 新零售缓存参数(其它订单) */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java index 6cb24f8b..27ea7d20 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java @@ -25,9 +25,4 @@ public class LanguageConstants { */ public static final String WEB_RESOURCES_SUFFIX = ".js"; - /** - * 请求头语言字段 - */ - public static final String HEAD_LANGUAGE = "Accept-Language"; - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index dea654a0..f7897c21 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -86,11 +86,6 @@ public class MagicNumberConstants { */ public static final Integer ACC0UNT_LOCK_NUM = 10; - /** - * 海粉等级主键为1 - */ - public static final Integer CHINA_HA_FUN = 1; - /** * 提现的倍数 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 89458c7f..b0af6c77 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -1,8 +1,6 @@ package com.hzs.common.core.constant; import java.math.BigDecimal; -import java.util.Arrays; -import java.util.List; /** * 新零售商品常量类 @@ -18,56 +16,4 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); - /** - * 盒数产品列表 - */ - public static final List BOX_PRODUCT_LIST = Arrays.asList( - // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", - "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", - "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", - "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", - // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", - "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", - "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", - "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", - // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", - "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", - "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", - "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", - // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", - "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", - "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", - "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" - ); - - /** - * 盒数产品列表 - */ - public static final List ALL_BOX_WARES_LIST = Arrays.asList( - // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", - "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", - "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", - "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", - // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", - "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", - "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", - "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", - // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", - "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", - "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", - "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", - // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", - "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", - "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", - "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" - ); - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java index 7b714236..c334b815 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java @@ -36,10 +36,6 @@ public enum EOrderBusiness { * 新零售注册订单 */ RETAIL_REGISTER(41, "注册订单", 0, EnumsPrefixConstants.ORDER_BUSINESS + 41), - /** - * 新零售升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0, EnumsPrefixConstants.ORDER_BUSINESS + 42), /** * 新零售复购订单 */ @@ -93,13 +89,11 @@ public enum EOrderBusiness { List orderTypeList = new ArrayList<>(); if (null == value || EOrderBusiness.WHOLE.getValue() == value) { orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); orderTypeList.add(EOrderType.RETAIL_CONSUME.getValue()); } else if (EOrderBusiness.FIRST_PURCHASE.getValue() == value) { //首购 orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); } else if (EOrderBusiness.REPURCHASE.getValue() == value) { //复购 orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); @@ -107,9 +101,6 @@ public enum EOrderBusiness { } else if (EOrderBusiness.RETAIL_REGISTER.getValue() == value) { // 注册 orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - } else if (EOrderBusiness.RETAIL_UPGRADE.getValue() == value) { - // 升级 - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); } else if (EOrderBusiness.RETAIL_REPURCHASE.getValue() == value) { // 复购 orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index 5c1d8493..b76dcf34 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -15,11 +15,6 @@ public enum EOrderType { */ REGISTER_ORDER(1, "注册订单", 1), - /** - * 升级订单 - */ - UPGRADE_ORDER(2, "升级订单", 1), - /** * 复购订单 */ @@ -44,10 +39,6 @@ public enum EOrderType { * 注册订单 */ RETAIL_REGISTER(41, "注册订单", 0), - /** - * 升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0), /** * 复购订单 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 061ae73a..682946ce 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -15,11 +15,6 @@ public enum ESpecialArea { */ REGISTER_AREA(1, "注册专区", 1, 3, EMenuDetail.REGISTER.getValue()), - /** - * 升级专区 - */ - UPGRADE_AREA(2, "升级专区", 1, 4, EMenuDetail.UPGRADE.getValue()), - /** * 复购专区 名字修改为自营专区(复购自营) */ @@ -39,10 +34,6 @@ public enum ESpecialArea { * 会员专区(注册) */ RETAIL_REGISTER(41, "注册专区", 0, 41, -1), - /** - * 会员专区(升级) - */ - RETAIL_UPGRADE(42, "升级专区", 0, 42, -1), /** * 复购专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java index f2abd157..5f7f0804 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java @@ -94,8 +94,6 @@ public enum ESystemConfig { * 1=12小时 2=24小时 3=48小时 4=72小时 */ REGISTER_ORDER_TIME("1", "注册专区时间", 0, "PAYMENT_2"), - UPGRADE_ORDER_CONFIRM_PAY("0", "升级专区", 0, "PAYMENT_3"), - UPGRADE_ORDER_TIME("0", "升级专区时间", 0, "PAYMENT_4"), REPURCHASE_ORDER_CONFIRM_PAY("0", "复购专区", 0, "PAYMENT_5"), REPURCHASE_ORDER_TIME("0", "复购专区时间", 0, "PAYMENT_6"), FANS_ORDER_CONFIRM_PAY("0", "海粉专区", 0, "PAYMENT_7"), @@ -162,7 +160,6 @@ public enum ESystemConfig { public static List getPayMentTimeList() { List list = new ArrayList<>(); list.add(REGISTER_ORDER_TIME); - list.add(UPGRADE_ORDER_TIME); list.add(REPURCHASE_ORDER_TIME); list.add(FANS_ORDER_TIME); list.add(CONSUME_ORDER_TIME); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index 1e834e8c..2f8e9677 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -14,14 +14,12 @@ public enum ETradeType { * 消费类 */ REGISTER_ORDER(101, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 101, EOrderType.REGISTER_ORDER.getValue()), - UPGRADE_ORDER(102, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 102, EOrderType.UPGRADE_ORDER.getValue()), REPURCHASE_ORDER(103, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 103, EOrderType.REPURCHASE_ORDER.getValue()), CONSUME_ORDER(110, 0, "消费订单", 0, EnumsPrefixConstants.TRADE_TYPE + 110, EOrderType.CONSUME_ORDER.getValue()), MALL_ORDER(114, 0, "商城订单", 0, EnumsPrefixConstants.TRADE_TYPE + 114, EOrderType.MALL_ORDER.getValue()), FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), - RETAIL_UPGRADE_ORDER(142, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), @@ -64,14 +62,12 @@ public enum ETradeType { CANCELLATION_ORDER_REFUND(600, 0, "撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 600, -99), RETURN_MONEY(601, 0, "返还本金", 0, EnumsPrefixConstants.TRADE_TYPE + 601, -99), REVOKE_REGISTER_ORDER(602, 0, "注册订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 602, -EOrderType.REGISTER_ORDER.getValue()), - REVOKE_UPGRADE_ORDER(603, 0, "升级订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 603, -EOrderType.UPGRADE_ORDER.getValue()), REVOKE_REPURCHASE_ORDER(604, 0, "复购订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 604, -EOrderType.REPURCHASE_ORDER.getValue()), REVOKE_CONSUME_ORDER(611, 0, "消费订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 611, -EOrderType.CONSUME_ORDER.getValue()), REVOKE_MALL_ORDER(615, 0, "商城订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 615, -EOrderType.MALL_ORDER.getValue()), REVOKE_FICTITIOUS_ORDER(618, 0, "虚拟订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 618, -EOrderType.FICTITIOUS_ORDER.getValue()), REVOKE_RETAIL_REGISTER_ORDER(641, 0, "注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), - REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), REVOKE_RETAIL_CONSUME_ORDER(644, 0, "重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), REVOKE_RETAIL_TICKET_ORDER(645, 0, "自主购票撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 645, -EOrderType.RETAIL_TICKET.getValue()), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java deleted file mode 100644 index f4104df9..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.hzs.common.core.utils; - -import com.hzs.common.core.constant.RetailConstants; -import com.hzs.common.core.enums.ESystemType; - -import java.util.ArrayList; -import java.util.List; - -public class BoxProductUtil { - - /** - * 根据系统类型获取盒数商品 - * - * @param systemType 系统类型(为空返回全部盒数商品) - * @return - */ - public static List getBoxWaresListBySystemType(Integer systemType) { - List productList = new ArrayList<>(0); - - if (null == systemType || ESystemType.ALL.getValue() == systemType) { - productList.addAll(RetailConstants.ALL_BOX_WARES_LIST); - return productList; - - } - if (ESystemType.DEFAULT.getValue() == systemType) { - // 新零售 - productList = RetailConstants.BOX_PRODUCT_LIST; - } - return productList; - } - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java index 51d22070..a718ac02 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java @@ -9,12 +9,7 @@ import lombok.*; import lombok.experimental.Accessors; /** - *

* 会员可抽奖次数记录 - *

- * - * @author hzs - * @since 2023-04-21 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java index 432042b9..55040237 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java @@ -5,11 +5,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * @Description: 奖衔升级记录扩展类 - * @Author: jiang chao - * @Time: 2024/2/28 16:38 - * @Classname: CuMemberAwardsExt - * @PackageName: com.hzs.common.domain.member.detail.ext + * 奖衔升级记录扩展类 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java index 9213415f..9dc3d32f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java @@ -5,11 +5,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * @Description: 会员商品限购扩展类 - * @Author: jiang chao - * @Time: 2025/3/11 14:02 - * @Classname: SaOrderWaresLimitExt - * @PackageName: com.hzs.common.domain.sale.ext + * 会员商品限购扩展类 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java index 93a1e6ed..b8a90c93 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java @@ -9,12 +9,7 @@ import lombok.*; import lombok.experimental.Accessors; /** - *

* - *

- * - * @author hzs - * @since 2023-03-17 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java index 7f8775c2..e66df185 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java @@ -47,8 +47,7 @@ public class ActivityBackListener { // 处理抽奖 iActivityServiceApi.backGiveMemberDrawNum(saOrderExt); - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { // 处理直推升级 iActivityServiceApi.invokeRecommendUpgrade(AcRecommendUpgradeDTO.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.CANCEL).build()); } From 556cfd486ce863235d411195fcad041794977891 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 14:33:14 +0800 Subject: [PATCH 141/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E5=AF=B9?= =?UTF-8?q?=E7=A2=B0=E3=80=81=E8=BE=85=E5=AF=BC=E3=80=81=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E5=A5=96=E9=A1=B9=E5=A4=84=E7=90=86=EF=BC=9B?= =?UTF-8?q?=E5=8E=BB=E6=8E=89=E7=BB=93=E7=AE=97=E4=B8=AD=E7=AD=89=E7=BA=A7?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B=E5=8E=BB=E6=8E=89=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E7=AD=89=E8=80=83=E6=A0=B8=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/IMemberTeamServiceApi.java | 5 - .../detail/ICuMemberServiceLogServiceApi.java | 42 - .../hzs/retail/member/IMemberRetailApi.java | 19 - .../hzs/sale/order/ISaOrderServiceApi.java | 26 - .../system/base/ISystemConfigServiceApi.java | 12 - .../hzs/system/config/dto/BonusConfigDTO.java | 5 - .../com/hzs/system/config/dto/GradeDTO.java | 6 +- .../mapper/CuMemberRetailRangeMapper.java | 37 - .../service/ICuMemberRetailRangeService.java | 31 - .../impl/CuMemberRetailRangeServiceImpl.java | 36 - .../impl/CuMemberSettlePeriodServiceImpl.java | 15 +- .../hzs/bonus/base/mapper/CuMemberMapper.java | 47 - .../base/service/IBdVertexBonusService.java | 10 - .../bonus/base/service/ICuMemberService.java | 46 - .../impl/BdVertexBonusServiceImpl.java | 28 +- .../service/impl/CuMemberServiceImpl.java | 38 - .../api/ApiCuMemberBonusController.java | 39 - .../manage/CuMemberShareBonusController.java | 64 - .../mapper/CuMemberBonusCoachMapper.java | 32 - .../mapper/CuMemberBonusExpandMapper.java | 32 - .../bonus/mapper/CuMemberBonusPushMapper.java | 7 - .../mapper/CuMemberShareBonusMapper.java | 6 - .../mapper/CuMemberShareDetailMapper.java | 9 - .../bonus/param/CuMemberShareBonusParam.java | 38 - .../bonus/param/CuMemberShareDetailParam.java | 28 - .../service/ICuMemberBonusCoachService.java | 16 - .../service/ICuMemberBonusExpandService.java | 17 - .../service/ICuMemberShareBonusService.java | 12 - .../service/ICuMemberShareDetailService.java | 9 - .../bonus/service/impl/BonusSettleHandle.java | 59 +- .../service/impl/BonusSettleRangeHandle.java | 1256 +---------------- .../service/impl/BonusSettleServiceImpl.java | 56 +- .../impl/CuMemberBonusCoachServiceImpl.java | 32 - .../impl/CuMemberBonusExpandServiceImpl.java | 36 - .../impl/CuMemberBonusServiceImpl.java | 80 +- .../impl/CuMemberShareBonusServiceImpl.java | 168 --- .../impl/CuMemberShareDetailServiceImpl.java | 8 - .../bonus/bonus/vo/BonusRecordDetailVO.java | 10 - .../api/ApiCuRegionAssessController.java | 46 - .../manage/CuMemberAssessController.java | 56 - .../manage/CuRegionAssessController.java | 88 -- .../mapper/CuMemberAssessDetailMapper.java | 59 - .../mapper/CuMemberAssessExemptMapper.java | 16 - .../detail/mapper/CuMemberAssessMapper.java | 116 -- .../detail/mapper/CuMemberGradeMapper.java | 67 - .../mapper/CuRegionAssessDetailMapper.java | 58 - .../detail/mapper/CuRegionAssessMapper.java | 55 - .../service/ICuMemberAssessDetailService.java | 53 - .../service/ICuMemberAssessExemptService.java | 16 - .../service/ICuMemberAssessService.java | 19 - .../detail/service/ICuMemberGradeService.java | 63 - .../service/ICuRegionAssessDetailService.java | 35 - .../service/ICuRegionAssessService.java | 33 - .../impl/CuMemberAssessDetailServiceImpl.java | 65 - .../impl/CuMemberAssessExemptServiceImpl.java | 20 - .../impl/CuMemberAssessServiceImpl.java | 168 --- .../impl/CuMemberGradeServiceImpl.java | 62 - .../impl/CuRegionAssessDetailServiceImpl.java | 49 - .../impl/CuRegionAssessServiceImpl.java | 245 ---- .../achieve/CuMemberRetailRangeMapper.xml | 207 --- .../mapper/bonus/base/CuMemberMapper.xml | 113 -- .../bonus/bonus/CuMemberBonusCoachMapper.xml | 265 ---- .../bonus/bonus/CuMemberBonusExpandMapper.xml | 274 ---- .../bonus/bonus/CuMemberBonusPushMapper.xml | 129 -- .../bonus/bonus/CuMemberShareBonusMapper.xml | 52 - .../bonus/bonus/CuMemberShareDetailMapper.xml | 43 - .../detail/CuMemberAssessDetailMapper.xml | 110 -- .../detail/CuMemberAssessExemptMapper.xml | 29 - .../bonus/detail/CuMemberAssessMapper.xml | 185 --- .../bonus/detail/CuMemberGradeMapper.xml | 183 --- .../detail/CuRegionAssessDetailMapper.xml | 136 -- .../bonus/detail/CuRegionAssessMapper.xml | 165 --- .../impl/CuMemberSettlePeriodServiceImpl.java | 15 +- .../provider/MemberTeamServiceProvider.java | 5 - .../base/service/ICuMemberTeamService.java | 5 - .../service/impl/CuMemberTeamServiceImpl.java | 11 - .../mapper/CuMemberAssessExemptMapper.java | 16 - .../mapper/CuMemberServiceLogMapper.java | 37 - .../provider/CuMemberServiceLogProvider.java | 31 - .../service/ICuMemberAssessExemptService.java | 16 - .../service/ICuMemberServiceLogService.java | 38 - .../impl/CuMemberAssessExemptServiceImpl.java | 20 - .../impl/CuMemberServiceLogServiceImpl.java | 69 +- .../impl/CuBonusStatisServiceImpl.java | 7 +- .../member/provider/MemberRetailProvider.java | 33 - .../service/ICuMemberRetailRegionService.java | 7 - .../impl/CuMemberRetailRegionServiceImpl.java | 11 - .../detail/CuMemberAssessExemptMapper.xml | 29 - .../detail/CuMemberServiceLogMapper.xml | 78 - .../api/ApiRegSaOrderController.java | 26 - .../manager/SaOrderBusinessController.java | 18 +- .../hzs/sale/order/mapper/SaOrderMapper.java | 10 - .../sale/order/param/OrderSelectParam.java | 6 +- .../provider/SaOrderServiceProvider.java | 24 - .../sale/order/service/ISaOrderService.java | 53 - .../impl/OrderBusinessServiceImpl.java | 37 +- .../order/service/impl/SaOrderHandle.java | 216 --- .../service/impl/SaOrderServiceImpl.java | 171 --- .../mapper/sale/order/SaOrderMapper.xml | 51 - .../provider/SystemConfigServiceProvider.java | 27 - .../provider/BonusItemsServiceProvider.java | 8 - .../config/service/IBdGradeService.java | 2 - .../service/impl/BdGradeServiceImpl.java | 9 - .../enums/controller/EnumsController.java | 12 - .../core/annotation/AccessPermissions.java | 9 - .../common/core/constant/SysConstants.java | 6 +- .../core/constant/msg/BonusMsgConstants.java | 28 - .../hzs/common/core/enums/EBonusItems.java | 82 +- .../common/core/enums/EExpandCapMethod.java | 1 + .../hzs/common/core/enums/ESystemConfig.java | 78 - .../hzs/common/core/enums/EVertexBonus.java | 29 - .../domain/member/detail/CuMemberAssess.java | 5 - .../member/detail/CuMemberAssessExempt.java | 60 - .../domain/member/detail/CuRegionAssess.java | 78 - .../member/detail/CuRegionAssessDetail.java | 79 -- .../member/detail/ext/CuRegionAssessExt.java | 35 - .../member/ext/CuMemberBonusCoachExt.java | 133 -- .../member/ext/CuMemberBonusExpandExt.java | 133 -- .../member/ext/CuMemberShareBonusExt.java | 26 - .../member/ext/CuMemberShareDetailExt.java | 21 - .../domain/sale/ext/SaDeliverItemsExt.java | 6 +- .../common/domain/system/config/BdGrade.java | 3 - 122 files changed, 88 insertions(+), 7519 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java delete mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuMemberAssessExempt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuRegionAssess.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuRegionAssessDetail.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuRegionAssessExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberBonusCoachExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberBonusExpandExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberShareBonusExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberShareDetailExt.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java index af4365c3..0b82aae6 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java @@ -25,11 +25,6 @@ public interface IMemberTeamServiceApi { */ R checkVertex(Integer pkVertex); - /* - * 根据主键获得所属团队 - **/ - R getCuMemberTeamById(Long pkMember); - /** * 查询体系团队map * diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java index 412dd054..746a4065 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java @@ -2,10 +2,7 @@ package com.hzs.member.detail; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; public interface ICuMemberServiceLogServiceApi { @@ -50,43 +47,4 @@ public interface ICuMemberServiceLogServiceApi { */ R updateByBusinessNo(CuMemberServiceLog memberLog); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - R queryPolicy(Long pkMember); - - /** - * @param pkMember 会员主键 pkMember - * @param approvalBusiness 类型 EApprovalBusiness - * @param approveStatus 提交签呈状态 EApproveStatus - * @return - */ - R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus); - - /** - * 查询最新一条变动记录 - * - * @param pkMember 会员ID - * @param editType 业务类型 - * @param approveStatus 审核状态 - * @return - */ - R selectTopData(Long pkMember, int editType, int approveStatus); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - R> listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java deleted file mode 100644 index 8c9ed6f9..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hzs.retail.member; - -import com.hzs.common.core.domain.R; - -import java.util.List; - -/** - * 新零售会员dubbo服务 - */ -public interface IMemberRetailApi { - - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID列表 - */ - R cancelRegion(List pkIdList); - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index e6c1e93f..6994222d 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -2,9 +2,7 @@ package com.hzs.sale.order; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.dto.*; @@ -27,25 +25,6 @@ public interface ISaOrderServiceApi { */ R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /* - * 根据主键查询订单,需要查询del_flag=1的,存在先撤单在退货 - **/ - R querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - R> querySaOrderByDeliverList(List deliverItemExtList); - - /** - * 根据订单ID查询订单详细列表 - * - * @param pkOrderList 订单ID列表 -- 必传 - * @param pkCountry 国家ID -- 非必传 - * @return - */ - R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry); - /** * 空单注册审核通过 * @@ -81,11 +60,6 @@ public interface ISaOrderServiceApi { */ void closeOrder(); - /* - * 查询订单某段时间累计金额,累计业绩 - **/ - R queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java index 0469e498..2d84c3a5 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java @@ -18,18 +18,6 @@ public interface ISystemConfigServiceApi { */ R getBonusSystemConfig(Integer pkCountry, String key); - /** - * 批量查询系统参数 - * - * @param pkCountry 国家 - */ - R> getBonusSystemConfig(Integer pkCountry); - - /** - * 批量查询所有国家的系统参数 - */ - R> getBonusSystemConfig(); - /** * 批量查询所有国家的订单参数 */ diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java index 3a7affd8..cc6cddf5 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java @@ -52,11 +52,6 @@ public class BonusConfigDTO implements Serializable { */ private Map gradeMap; - /** - * 新零售团队等级 - */ - private List retaiGradeList; - /** * 主任每个国家值对应的配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + 奖衔值 为了解决服务中心算主任 */ diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java index b9d10657..200e7803 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java @@ -11,11 +11,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 等级的dto - * @Author: sui q - * @Time: 2022/9/24 15:06 - * @Classname: GradeDTO - * @PackageName: com.hzs.system.config.dto + * 等级的dto */ @Data @Builder diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index a86706cc..79942ade 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -26,43 +26,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper batchQueryMemberRetailRangeByMemberPk(@Param("rangeTableName") String rangeTableName, - @Param("memberPkList") List memberPkList); - - /** - * 查询出有奖衔的会员 - * - * @param rangeTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(@Param("rangeTableName") String rangeTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(@Param("rangeTableName") String rangeTableName, - @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(@Param("rangeTableName") String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(@Param("rangeTableName") String rangeTableName, @Param("secondRangeTableName") String secondRangeTableName, @Param("county") Integer county); - /** * 当前网体更新极差秒结表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 81520ba9..ceec0067 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -9,7 +9,6 @@ import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; -import java.util.Set; /** * 服务类 @@ -54,36 +53,6 @@ public interface ICuMemberRetailRangeService extends IService cuMemberTreeMap); - /** - * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 - * - * @param settleTableName 结算表 - * @param serviceMemberSet 会员编号 - */ - List batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet); - - /** - * 查询出有奖衔的会员 - * - * @param settleTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(String settleTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county); - /** * 更新极差秒接表,用昨天的结算表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index c2814762..5746913c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -32,8 +32,6 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberRetailRangeExt(settleTableName, list)); } - @Override - public List batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet) { - List cuMemberSettleExtList = new ArrayList<>(); - if (serviceMemberSet.size() > 0) { - // 做一下排序 - List memberPkList = Arrays.asList(serviceMemberSet.toArray(new Long[]{})); - Collections.sort(memberPkList); - List> listList = cuMemberBonusSettle.handleCutList(memberPkList, MagicNumberConstants.BATCH_QUERY_NUM); - listList.forEach(list -> - cuMemberSettleExtList.addAll(baseMapper.batchQueryMemberRetailRangeByMemberPk(settleTableName, list))); - } - return cuMemberSettleExtList; - } - - @Override - public List batchQueryMemberRetailRangeByAwards(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByAwards(rangeTableName); - } - - @Override - public List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList) { - return baseMapper.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - } - - @Override - public List batchQueryMemberRetailRangeByCounty(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByCounty(rangeTableName); - } - - @Override - public List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county) { - return baseMapper.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, county); - } - @Override public void mergeMemberSecondRetailRangeByRange(String rangeTableName, String secondRangeTableName, Long pkMember) { // 当前网体更新极差秒接表(血缘伞上) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java index 876efb8e..46f1ac88 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java @@ -7,11 +7,9 @@ import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodDetailService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.EExpandCapMethod; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriodDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberSettlePeriodExt; @@ -19,7 +17,6 @@ import com.hzs.common.domain.system.base.BdCountry; import com.hzs.bonus.achieve.mapper.CuMemberSettlePeriodMapper; import com.hzs.bonus.achieve.param.MemberPeriodParam; import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -41,8 +38,6 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java index 18192bd3..2d21daf6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java @@ -3,9 +3,6 @@ package com.hzs.bonus.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -16,15 +13,6 @@ import java.util.List; */ public interface CuMemberMapper extends BaseMapper { - /** - * 查询登录会员以及状态 - * - * @param memberCode 会员编号 - * @param pkMember 会员主键 - * @return - */ - CuMemberExt queryLoginMember(@Param("memberCode") String memberCode, @Param("pkMember") Long pkMember); - /** * 更新会员奖衔根据临时表 */ @@ -48,28 +36,6 @@ public interface CuMemberMapper extends BaseMapper { @Param("period") Integer period, @Param("awardType") Integer awardType); - /** - * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 - */ - int updateCuMemberMinGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 更新会员的等级 - */ - Integer updateCuMemberGrade(@Param("period") Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 更新会员的等级(会员表) - */ - Integer updateCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - /** * 更新会员奖衔根据临时表 */ @@ -90,17 +56,4 @@ public interface CuMemberMapper extends BaseMapper { */ void updateCuMemberRetailRangeInitV5Award(); - /** - * 查询可以分享的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(@Param("pkMember") Long pkMember); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java index d99dca54..6fd77473 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java @@ -3,19 +3,9 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.vertex.BdVertexBonus; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务类 */ public interface IBdVertexBonusService extends IService { - /** - * 查询体系奖金map - * - * @return - */ - Map> queryVertexBonus(); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 1e2341fb..8ccbffd5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -3,9 +3,6 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import java.util.Date; import java.util.List; @@ -15,14 +12,6 @@ import java.util.List; */ public interface ICuMemberService extends IService { - /** - * 根据会员编号获取会员信息(查库) - * - * @param memberCode - * @return - */ - CuMemberExt getMemberByCode(String memberCode); - /** * 更新会员奖衔根据临时表 -- 日结 */ @@ -35,13 +24,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeByList(List cuMemberAwardsList, Integer period); - /** - * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 - */ - void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 * @@ -49,21 +31,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period); - /** - * 根据等级更新会员等级 - */ - void updateCuMemberGradeByPeriod(Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(Date startDate, Date endDate); - - /** - * 更新会员的等级(会员表) - */ - void updateCuMemberGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 */ @@ -79,17 +46,4 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeInitAward(); - /** - * 查询可以获得分红的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(Long pkMember); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java index bf253722..137488c2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java @@ -1,41 +1,15 @@ package com.hzs.bonus.base.service.impl; -import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.base.mapper.BdVertexBonusMapper; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务实现类 */ @Service public class BdVertexBonusServiceImpl extends ServiceImpl implements IBdVertexBonusService { - @Override - public Map> queryVertexBonus() { - HashMap> resultMap = new HashMap<>(); - - List vertexBonusList = this.list(); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (resultMap.containsKey(bdVertexBonus.getPkVertex())) { - resultMap.get(bdVertexBonus.getPkVertex()).add(bdVertexBonus.getBonusItems()); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(bdVertexBonus.getBonusItems()); - resultMap.put(bdVertexBonus.getPkVertex(), tmpList); - } - } - } - - return resultMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index c82fcfcb..e1e193a2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -3,13 +3,9 @@ package com.hzs.bonus.base.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.base.service.*; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.*; import com.hzs.common.domain.member.base.*; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.bonus.base.mapper.CuMemberMapper; -import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; import java.util.*; @@ -20,11 +16,6 @@ import java.util.*; @Service public class CuMemberServiceImpl extends ServiceImpl implements ICuMemberService { - @Override - public CuMemberExt getMemberByCode(String memberCode) { - return baseMapper.queryLoginMember(memberCode, null); - } - @Override public void updateCuMemberRetailRangeByPeriod(Integer period) { baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); @@ -39,32 +30,12 @@ public class CuMemberServiceImpl extends ServiceImpl i baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); } - @Override - public void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberMinGradeByList(cuMemberGradeList, period); - } - @Override public void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period) { baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue()); baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); } - @Override - public void updateCuMemberGradeByPeriod(Integer period) { - baseMapper.updateCuMemberGrade(period); - } - - @Override - public void updateCuMemberLevel(Date startDate, Date endDate) { - baseMapper.updateCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberGradeByList(cuMemberGradeList, period); - } - @Override public void updateBackCuMemberRetailRangeAward(Integer period) { baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue()); @@ -83,13 +54,4 @@ public class CuMemberServiceImpl extends ServiceImpl i baseMapper.updateCuMemberRetailRangeInitV5Award(); } - @Override - public List queryCuMemberShareTotal(Integer pkCountry) { - return baseMapper.queryCuMemberShareTotal(pkCountry); - } - - @Override - public List listVertexBonus(Long pkMember) { - return baseMapper.listVertexBonus(pkMember); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java index 9b5c1e67..93552aa3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java @@ -6,14 +6,12 @@ import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.param.BonusParam; import com.hzs.bonus.bonus.service.ICuMemberBonusService; import com.hzs.bonus.bonus.vo.*; -import com.hzs.common.core.enums.EBonusItems; import com.hzs.common.core.enums.EGrantStatus; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.ext.CuMemberBonusExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import com.hzs.common.security.utils.SecurityUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -33,8 +31,6 @@ public class ApiCuMemberBonusController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; - @Autowired - private ICuMemberService iCuMemberService; /** * 新零售实时奖金:查询会员实时奖金,当日的奖金 @@ -47,9 +43,6 @@ public class ApiCuMemberBonusController extends BaseController { bonusParam.setEndDate(DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentDate())); bonusParam.setGrantStatus(EGrantStatus.SETTLED.getValue()); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List cuMemberBonusList = iCuMemberBonusService.queryMemberSecondBonusVoByCondition(bonusParam); List memberBonusVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { @@ -62,12 +55,6 @@ public class ApiCuMemberBonusController extends BaseController { cuMemberBonus.getRetailRealSubtotal() ); memberBonusVO.setBackPoints(serviceSpend); - - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusVO.setRepurRangeIncome(null); - } - memberBonusVOList.add(memberBonusVO); } }); @@ -83,17 +70,10 @@ public class ApiCuMemberBonusController extends BaseController { List cuMemberBonusList = iCuMemberBonusService.queryMemberBonusVoByCondition(bonusParam); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List firstPurchaseVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { MemberBonusFirstPurchaseVO memberBonusFirstPurchaseVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusFirstPurchaseVO.class, "settleDate"); packageSettleDate(cuMemberBonus, memberBonusFirstPurchaseVO); - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusFirstPurchaseVO.setRepurRangeIncome(null); - } firstPurchaseVOList.add(memberBonusFirstPurchaseVO); }); return getDataTable(firstPurchaseVOList); @@ -180,23 +160,4 @@ public class ApiCuMemberBonusController extends BaseController { return iCuMemberBonusService.queryMemberBonusDetailVoByCondition(bonusParam); } - /** - * 校验是否有复购级差 - * - * @return - */ - private boolean checkRangeIncome() { - List vertexBonusList = iCuMemberService.listVertexBonus(SecurityUtils.getUserId()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (null != bdVertexBonus - && null != bdVertexBonus.getBonusItems() - && EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bdVertexBonus.getBonusItems()) { - return true; - } - } - } - return false; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java deleted file mode 100644 index 76ec1878..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.hzs.bonus.bonus.controller.manage; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; -import com.hzs.bonus.bonus.service.ICuMemberShareBonusService; -import com.hzs.common.core.annotation.AccessPermissions; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 会员奖金-分红奖金配置 前端控制器 - * - * @author hzs - * @since 2023-07-03 - */ -@RestController -@RequestMapping("/manage/bonus") -public class CuMemberShareBonusController extends BaseController { - - private ICuMemberShareBonusService cuMemberShareBonusService; - - @Autowired - public void setCuMemberShareBonusService(ICuMemberShareBonusService cuMemberShareBonusService) { - this.cuMemberShareBonusService = cuMemberShareBonusService; - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @AccessPermissions("BonusConfig") - @PostMapping("/query-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult queryShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null) { - return AjaxResult.error("结算月份不能为空"); - } - return AjaxResult.success(cuMemberShareBonusService.queryCuMemberShareBonus(SecurityUtils.getPkCountry(), cuMemberShareBonusParam.getSettleMonth())); - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @PostMapping("/save-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult saveShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null || CollectionUtil.isEmpty(cuMemberShareBonusParam.getCuMemberShareDetailList())) { - return AjaxResult.error("结算月份不能为空"); - } - cuMemberShareBonusParam.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberShareBonusParam.setPkCreator(SecurityUtils.getUserId()); - cuMemberShareBonusService.saveMemberShareBonus(cuMemberShareBonusParam); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java index 3ce3c4d4..689617ce 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import com.hzs.common.domain.member.ext.CuMemberBonusCoachExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-辅导收益明细表 Mapper 接口 */ public interface CuMemberBonusCoachMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List cuMemberBonusCoachList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java index eff30d4b..cc8d9bab 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import com.hzs.common.domain.member.ext.CuMemberBonusExpandExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-拓展收益明细表 Mapper 接口 */ public interface CuMemberBonusExpandMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(@Param("cuMemberBonusExpandList") List cuMemberBonusExpandList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java index 48caf94f..cbd2db07 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java @@ -20,13 +20,6 @@ public interface CuMemberBonusPushMapper extends BaseMapper { */ List queryMemberBonusPushByBonusItems(BonusParam bonusParam); - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); - /** * 删除会员奖金汇总表 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java index 3e559148..753ed3aa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java @@ -2,16 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import org.apache.ibatis.annotations.Param; /** * 会员奖金-分红奖金配置 Mapper 接口 */ public interface CuMemberShareBonusMapper extends BaseMapper { - /* - * 查询会员分享奖金 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(@Param("pkCountry") Integer pkCountry, @Param("settleMonth") String settleMonth); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java index 3df67329..c7169a1a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-分红奖金配置明细 Mapper 接口 */ public interface CuMemberShareDetailMapper extends BaseMapper { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(@Param("cuMemberShareDetailList") List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java deleted file mode 100644 index f0c90b34..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.List; - -/** - * @description: 分红配置查询参数 - * @author: sui q - * @time: 2023/7/3 15:52 - * @classname: CuMemberShareBonusParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareBonusParam implements Serializable { - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 结算月 - */ - private String settleMonth; - - /** - * 明细 - */ - private List cuMemberShareDetailList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java deleted file mode 100644 index 906d10dc..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @description: 分红配置明细 - * @author: sui q - * @time: 2023/7/3 15:53 - * @classname: CuMemberShareDetailParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareDetailParam implements Serializable { - - /** - * 奖衔 - */ - private Integer pkAwards; - - /** - * 实发金额 - */ - private BigDecimal realShareIncome; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java index 876debdf..fe73fe67 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java @@ -3,25 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务类 */ public interface ICuMemberBonusCoachService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java index 9143331f..c740dff3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java @@ -3,26 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务类 */ public interface ICuMemberBonusExpandService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java index 3998d935..52bcf070 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java @@ -2,22 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; /** * 会员奖金-分红奖金配置 服务类 */ public interface ICuMemberShareBonusService extends IService { - /* - * 保存会员分红奖金及明细 - **/ - void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam); - - /* - * 查询分红配置的参数 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java index c29b99a1..a01619ea 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; - -import java.util.List; -import java.util.Map; /** * 会员奖金-分红奖金配置明细 服务类 */ public interface ICuMemberShareDetailService extends IService { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 47fc5629..512fa1cf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -26,12 +26,6 @@ public abstract class BonusSettleHandle { @Autowired protected ICuMemberTreeService cuMemberTreeService; - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - public ICuMemberSettlePeriodService getCuMemberSettlePeriodService() { - return cuMemberSettlePeriodService; - } /** * 获得奖项主键,验证该国是否有该奖项 @@ -58,23 +52,6 @@ public abstract class BonusSettleHandle { return bonusConfigDTO.getBonusItemsExtMap().get(pkCountry.toString() + bonusItems).getPkId(); } - /** - * 获得 辅导收益的备注 - * - * @param saOrder 订单编号 - * @param cuMemberBonusCoach 培育津贴 - * @param sourceCuMemberRetailExt 提供奖金的人 - * @param targetCuMemberRetailExt 获得奖金的人 - */ - protected void retailCoachRemark(SaOrder saOrder, CuMemberBonusCoach cuMemberBonusCoach, - CuMemberRetailRangeExt sourceCuMemberRetailExt, CuMemberRetailRangeExt targetCuMemberRetailExt) { - String remark = String.format(BonusMsgConstants.RETAIL_COACH, cuMemberBonusCoach.getCurrentGeneration(), saOrder.getOrderCode(), - sourceCuMemberRetailExt.getMemberCode() + sourceCuMemberRetailExt.getMemberName(), - targetCuMemberRetailExt.getMemberCode() + targetCuMemberRetailExt.getMemberName(), - cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue()); - cuMemberBonusCoach.setRemark(remark); - } - /** * 获得 直推级差收益的备注 * @@ -92,40 +69,6 @@ public abstract class BonusSettleHandle { cuMemberBonusRange.setRemark(remark); } - /** - * 获得 福利极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeBenefitRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_RANGE, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * 获得 复购极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeMonthRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_MONTH_REPURCHASE_INCOME, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); - cuMemberBonusRange.setRemark(remark); - } - /** * 获得 平级收益的备注 * @@ -152,7 +95,7 @@ public abstract class BonusSettleHandle { * @param targetMemberRangeExt 获得奖金的人 */ protected void rangeRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { + CuMemberRetailRangeExt targetMemberRangeExt) { String remark = String.format(BonusMsgConstants.RETAIL_REPURCHASE_INCOME, saOrderExt.getOrderCode(), sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 3ffa404d..fe916497 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,24 +1,18 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.detail.service.ICuMemberAwardsService; -import com.hzs.bonus.detail.service.ICuMemberGradeService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.constant.msg.BonusMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; @@ -26,18 +20,13 @@ import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.domain.sale.wares.ext.WaresRangeTmp; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; -import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -54,20 +43,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired - private ICuMemberGradeService iCuMemberGradeService; - @Autowired private ICuMemberService iCuMemberService; @Autowired private IBonusOrderService iBonusOrderService; - @Autowired - private IBdVertexBonusService iBdVertexBonusService; - - @DubboReference - ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; /** * 秒结: - * 实时计算秒结数据(业绩、等级、奖衔、日奖) + * 实时计算秒结数据(业绩、奖衔、日奖) */ List calculateCuMemberRetailRangeBonusBySecond(String settleDate, SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod, @@ -76,9 +58,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + beforePeriod; // 更新极差秒接表,用昨天的结算表(血缘伞上) iCuMemberRetailRangeService.mergeMemberSecondRetailRangeByRange(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); - // 处理会员等级(查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级) - // TODO new 秒结只影响上面,更新等级应该只更新血缘上就可以,不需要全网更新 -- 是否需要修改??? - iCuMemberGradeService.updateCuMemberGradeSecond(secondRangeTableName, currentPeriod); // 按照血缘,查询该会员血缘伞上(昨天日结表累计值 + 今天秒结表新増值) List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); @@ -86,14 +65,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -105,11 +76,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(saOrderExt.getPayTime()); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); - // 计算自消费奖衔 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); @@ -122,16 +88,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、计算等级、奖衔 + cuMemberAwardsList, sourceMemberRangeExt); + // 计算团队业绩、计算奖衔 cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeList, activateMap)); + secondRangeTableName)); // 奖金处理 List cuMemberBonusRangeList = new ArrayList<>(); @@ -142,40 +106,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { // 指定盒数商品 // 计算直推级差收益 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); + cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); } } } - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, saOrderExt.getRecCounty()); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, currentPeriod, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = iBonusOrderService.getWaresRange(Collections.singletonList(saOrderExt)); // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, currentPeriod, cuMemberBonusMap)); } - // 回退会员等级 - iCuMemberGradeService.updateCuMemberGrade(secondRangeTableName, saOrderExt.getPkId()); - - if (cuMemberGradeList.size() > 0) { - // 插入会员等级升级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表会员等级 - iCuMemberService.updateCuMemberGradeByList(cuMemberGradeList, currentPeriod); - } if (cuMemberAwardsList.size() > 0) { // 插入会员奖衔升级记录 iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); @@ -191,7 +130,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 撤单秒结:实时计算撤单数据(业绩、等级、奖衔、日奖) + * 撤单秒结:实时计算撤单数据(业绩、奖衔、日奖) */ void calculateCuMemberBackRetailIncome(SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod) { @@ -203,7 +142,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (isSecond) { // 当天撤单 - // 实时网体查询血缘伞上会员,更新秒结表等级、奖衔 + // 实时网体查询血缘伞上会员,更新秒结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue()); // 恢复秒结表奖衔 iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod, EYesNo.YES.getIntValue()); @@ -214,7 +153,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + currentPeriod; List retailOrderList = new ArrayList<>(); retailOrderList.add(saOrderExt); - // 实时网体查询血缘上会员,更新订单支付日结表等级、奖衔 + // 实时网体查询血缘上会员,更新订单支付日结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember(), EYesNo.NO.getIntValue()); // 恢复日结表奖衔 iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod, EYesNo.NO.getIntValue()); @@ -225,20 +164,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 团队升级等级map(key:等级值,value:等级对象) - Map retailTeamGradeMap = new TreeMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retailGradeList = bonusConfigDTO.getRetaiGradeList(); - // 等级 - for (BdGrade bdGrade : retailGradeList) { - if (bdGrade.getBoxTotal().compareTo(BigDecimal.ZERO) > 0) { - retailTeamGradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -265,66 +190,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); } - // 会员等级map - Map cuMemberGradeMap = new HashMap<>(); // 会员奖衔map Map cuMemberAwardsMap = new HashMap<>(); // 会员分红奖衔map Map cuMemberShareAwardsMap = new HashMap<>(); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); - // 计算团队业绩,计算等级、奖衔 + cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); + // 计算团队业绩,计算奖衔 List cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); + secondRangeTableName, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); cuMemberRetailRangeExtList.add(sourceMemberRangeExt); - // 查询期间的等级(来源 cu_member_grade) - List memberGradeList = iCuMemberGradeService.queryCuMemberGrade(cuMemberRetailRangeExtList, currentPeriod); - // 查询最大的手动等级(来源 cu_member_grade) - List cuMemberGradeList1 = iCuMemberGradeService.queryCuMemberGradeByList(currentPeriod, memberRetailRangeExtList); - if (cuMemberGradeList1.size() > 0) { - Map memberGradeMap = new HashMap<>(); - for (CuMemberGrade cuMemberGrade : cuMemberGradeList1) { - cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); - memberGradeMap.put(cuMemberGrade.getPkMember(), cuMemberGrade); - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (memberGradeMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - CuMemberGrade cuMemberGrade = memberGradeMap.get(cuMemberRetailRangeExt.getPkMember()); - if (cuMemberRetailRangeExt.getPkGrade() < cuMemberGrade.getNewLevel()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getNewLevel()); - BdGrade bdGrade = gradeIdMap.get(cuMemberGrade.getNewLevel()); - cuMemberRetailRangeExt.setGradeValue(bdGrade.getGradeValue()); - } - BdGrade bdGrade = gradeIdMap.get(cuMemberRetailRangeExt.getPkGrade()); - if (bdGrade != null && bdGrade.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) { - // 如果是合伙人,奖衔肯定得有,不能置为无 - cuMemberRetailRangeExt.setPkAwards(11); - } - } - } - } - if (memberGradeList.size() > 0) { - List cuMemberGradeList = new ArrayList<>(); - for (CuMemberGrade cuMemberGrade : memberGradeList) { - String key = cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(); - if (!cuMemberGradeMap.containsKey(key)) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberGrade.getPkMember()); - if (cuMemberGrade.getOldLevel() < cuMemberRetailRangeExt.getPkGrade()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getOldLevel()); - } - cuMemberGrade.setNewLevel(cuMemberGrade.getOldLevel()); - cuMemberGradeList.add(cuMemberGrade); - } - } - if (cuMemberGradeList.size() > 0) { - // 删除等级(cu_member_grade) - iCuMemberGradeService.deleteCuMemberGrade(cuMemberGradeList, currentPeriod); - // 批量更新会员等级(更新 cu_member) - iCuMemberService.updateCuMemberMinGradeByList(cuMemberGradeList, currentPeriod); - } - } // 当期的所有奖衔升级记录 List memberAwardsList = iCuMemberAwardsService.queryCuMemberAwards(cuMemberRetailRangeExtList, currentPeriod); if (memberAwardsList.size() > 0) { @@ -366,7 +243,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 处理等级、奖衔 + // 处理奖衔 if (cuMemberAwardsList.size() > 0) { // 删除会员奖衔记录 iCuMemberAwardsService.deleteCuMemberAwards(cuMemberAwardsList, currentPeriod); @@ -384,25 +261,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - private CuMemberGrade getCuMemberGrade(int currentPeriod, CuMemberRetailRangeExt sourceMemberRangeExt, BdGrade bdGrade) { - CuMemberGrade cuMemberGrade = CuMemberGrade.builder() - .pkMember(sourceMemberRangeExt.getPkMember()) - .period(currentPeriod) - .oldLevel(sourceMemberRangeExt.getPkGrade()) - .newLevel(bdGrade.getPkId()) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - .build(); - cuMemberGrade.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberGrade.setPkCountry(sourceMemberRangeExt.getPkSettleCountry()); - return cuMemberGrade; - } - /** * 日结: * 计算新零售团队的奖金,极差、平级、福利、福利分红、区域 */ void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, BonusRecordDetailVO bonusRecordDetailVO, - Integer period, Integer yesterdayPeriod, Boolean isSameMonth, Map> vertexBonusMap) { + Integer period, Integer yesterdayPeriod, Boolean isSameMonth) { // 结算期间日期 Date settleStartDate = DateUtils.parseStringToDate(settleDate); // 结算期间日期后一天 @@ -435,9 +299,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新网体 iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(settleStartDate); - if (retailOrderList.size() > 0) { // 复购订单级差数据map(key:订单ID,value:订单明细+级差) Map> rangeOrderMap = new HashMap<>(); @@ -445,25 +306,11 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeOrderMap = iBonusOrderService.getWaresRange(repurchaseOrderList); } - Map memberLevelMap = new HashMap<>(); - List memberLevelList = iCuMemberGradeService.calculateCuMemberRetailGradeInit(period, settleStartDate, settleEndDate, rangeTableName); - memberLevelList.forEach(cuMemberLevel -> memberLevelMap.put(cuMemberLevel.getPkOrder(), cuMemberLevel)); - // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -477,15 +324,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByCounty(rangeTableName); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); // 平级收益 + 复购级差收益 @@ -513,12 +351,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、计算等级、奖衔 + null, cuMemberAwardsList, sourceMemberRangeExt); + // 计算团队业绩、计算奖衔 cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, - retailAwardsMap, null, cuMemberGradeList, activateMap)); + retailAwardsMap, null)); // 计算奖金 直推级差 + 平级收益 if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { @@ -526,34 +364,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { // 盒数商品 计算 直推级差 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); + cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); } } - - // 订单存在升级记录 - if (memberLevelMap.containsKey(saOrderExt.getPkId())) { - CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId()); - if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) { - BdGrade bdGrade = gradeIdMap.get(cuMemberLevel.getNewLevel()); - if (bdGrade.getGradeValue() > sourceMemberRangeExt.getGradeValue()) { - sourceMemberRangeExt.setPkGrade(bdGrade.getPkId()); - sourceMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - sourceMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } - } - } - } - - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, period, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); } if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, period, cuMemberBonusMap)); } } @@ -577,25 +394,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新会员表奖衔数据 iCuMemberService.updateCuMemberRetailRangeByPeriod(period); } - if (cuMemberGradeList.size() > 0) { - // 批量插入会员等级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表(cu_member)等级数据(来源 cu_member_grade) - iCuMemberService.updateCuMemberGradeByPeriod(period); - // 更新会员表(cu_member)等级数据(来源 cu_member_level) - iCuMemberService.updateCuMemberLevel(settleStartDate, settleEndDate); - } // 更新网体 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); } } /** - * 计算团队等级、奖衔 -- 秒结、日结 + * 计算团队奖衔 -- 秒结、日结 */ public List calculateRetailRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailAwardsMap, String secondRangeTableName, - List cuMemberGradeList, Map activateMap) { + Map retailAwardsMap, String secondRangeTableName) { // 会员奖衔升级列表 List cuMemberAwardsList = new ArrayList<>(); // 订单会员 @@ -606,13 +414,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); BigDecimal orderAmount = saOrderExt.getOrderAmount(); while (null != targetMemberRangeExt) { - // 手动激活时间 - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve)); targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve)); @@ -628,9 +429,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 计算等级 + // 计算 calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeList, cuMemberAwardsList, targetMemberRangeExt, activateMap); + secondRangeTableName, cuMemberAwardsList, targetMemberRangeExt); } targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } @@ -638,37 +439,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 计算等级、奖衔 -- 日结、秒结 + * 计算奖衔 -- 日结、秒结 */ private void calculateGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, - String secondRangeTableName, List cuMemberGradeList, List cuMemberAwardsList, - CuMemberRetailRangeExt targetMemberRangeExt, Map activateMap) { - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - - if (null != secondRangeTableName) { - if (targetMemberRangeExt.getPkMember().equals(saOrderExt.getPkMember())) { - // new 兼容购买等级多送2级的问题,秒结处理V4 V5方式不一样,会出现秒结等级和实际等级不匹配 - CuMemberRetailRangeExt memberRetailLevel = iCuMemberGradeService.getMemberLevel(saOrderExt.getPkMember(), saOrderExt.getPkId()); - if (null != memberRetailLevel) { - if (memberRetailLevel.getGradeValue() > targetMemberRangeExt.getGradeValue()) { - targetMemberRangeExt.setPkGrade(memberRetailLevel.getPkGrade()); - targetMemberRangeExt.setGradeValue(memberRetailLevel.getGradeValue()); - } - } - } - } - + String secondRangeTableName, List cuMemberAwardsList, + CuMemberRetailRangeExt targetMemberRangeExt) { // 计算当月奖衔 while (true) { // 当月奖衔值 + 5,获取下一个奖衔值 int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断: 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 @@ -770,7 +552,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { */ public List calculateRetailBackRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, String secondRangeTableName, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, boolean isSecond) { List cuMemberRetailRangeExtList = new ArrayList<>(); // 订单会员 @@ -802,12 +584,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 计算等级 + // 计算 calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); + cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); cuMemberRetailRangeExtList.add(targetMemberRangeExt); } - // 计算等级 + // 计算 targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } return cuMemberRetailRangeExtList; @@ -815,13 +597,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { private void calculateBackGrade(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, String secondRangeTableName, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, CuMemberRetailRangeExt targetMemberRangeExt) { // 计算奖衔(荣誉级别) while (true) { int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩 @@ -918,39 +700,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { * 计算直推级差收益,根据直推级差收益计算平级收益 */ List calculateRetailRangeBonus(Map memberRangeExtMap, Map cuMemberBonusMap, - Map gradeMap, BonusConfigDTO bonusConfigDTO, Integer period, + BonusConfigDTO bonusConfigDTO, Integer period, SaOrderWaresExt saOrderItems, SaOrderExt saOrderExt) { // 直推级差返回数据 List memberBonusRangeList = new ArrayList<>(); - // 用等级计算,按照一级级算 // 订单下单人自己 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); // 推荐人 long pkParent = sourceMemberRangeExt.getPkParent(); -// // 商品价格 -// BigDecimal beginBuyPrice = saOrderItems.getWaresPrice(); -// BigDecimal comBuyPrice = saOrderItems.getWaresPrice(); -// -// // 开始计算等级值 -// int beginGradeValue = sourceMemberRangeExt.getGradeValue(); -// // 直推级差收益 -// BigDecimal calBonusIncome = BigDecimal.ZERO; - // 商品最终价格(总价,带数量的价格) BigDecimal waresPrice = saOrderItems.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - // 前一个会员等级 - int beforeGradeValue = 0; - // 前一个会员等级的平级收益人数 - int beforeSameAlgebra = 0; - // 前一个会员等级的平级收益 - BigDecimal beforeSameBonus = BigDecimal.ZERO; // 计算直推级差 while (true) { // 推荐人 @@ -964,85 +726,20 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 + // 停算收益、非正常会员、未激活、停止收益,直接跳过 continue; } - // 当前会员等级值 - int calGradeValue = targetMemberRangeExt.getGradeValue(); - // 当前会员等级 - BdGrade bdGrade = gradeMap.get(calGradeValue); - // 直推级差税前收益 BigDecimal rangeBonusIncome = null; // 平级税前收益 BigDecimal sameBonusIncome = null; - if (beforeGradeValue == 0) { - // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // VIP,拿 1 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice); - } else if (EGrade.YOU_KE.getValue() == calGradeValue) { - // SVIP,拿 2 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2")); - } else if (EGrade.MAKER.getValue() == calGradeValue) { - // 卓越,拿 3 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3")); - } else if (EGrade.VIP.getValue() == calGradeValue) { - // 首席,拿 4 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4")); - } else if (EGrade.S_VIP.getValue() == calGradeValue) { - // 合伙人,拿 5 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5")); - } - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - } else if (calGradeValue == beforeGradeValue) { - // 当前会员等级 = 前一个会员等级 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // V1 没有平级收益 - continue; - } - if (beforeSameAlgebra >= bdGrade.getAlgebra()) { - // 平级收益已经满10代,不继续处理平级收益 - if (EGrade.S_VIP.getValue() == beforeGradeValue) { - // 平级处理等级为最高级V5,则结束处理 - break; - } - continue; - } - // 平级收益(商品价格 * 千分之五) -- 6位小数,四舍五入 - sameBonusIncome = waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig); - // 平级收益累计 - beforeSameBonus = beforeSameBonus.add(sameBonusIncome); - // 平级等级代数等级 - beforeSameAlgebra += 1; - } else if (calGradeValue > beforeGradeValue) { - // 当前会员等级 > 前一个会员等级 - int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10; - - // 新等级的直推级差收益 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal)); - // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益 - rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus); - - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - // 平级收益记录从新开始计算 - beforeSameAlgebra = 0; - beforeSameBonus = BigDecimal.ZERO; - } else { - // 当前会员等级 < 前一个会员等级,直接跳过 - continue; - } - if (null != rangeBonusIncome) { // 处理直推级差收益 CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.DIRECT_INCOME.getValue()); CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); cuMemberBonusRange.setCalValue(BigDecimal.ZERO); cuMemberBonusRange.setCalAchieve(waresPrice); @@ -1062,7 +759,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 处理平级收益 CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.SAME_LEVEL_INCOME.getValue()); CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); oriMemberBonusRange.setCalValue(RetailConstants.SAME_RATIO); oriMemberBonusRange.setCalAchieve(waresPrice); @@ -1078,733 +775,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } memberBonusRangeList.add(oriMemberBonusRange); } - -// // 如果价格是209,代表是第一单激活,只有平级收益,只有V5有平级收益 -// if (beginBuyPrice.equals(BigDecimal.valueOf(209))) { -// calGradeValue = EGrade.S_VIP.getValue(); -// if (beginGradeValue < EGrade.S_VIP.getValue()) { -// beginGradeValue = EGrade.S_VIP.getValue(); -// } -// } -// BdGrade bdGrade = gradeMap.get(calGradeValue); -// BigDecimal buyPrice = bdGrade.getBuyPrice(); -// boolean isRange = Boolean.FALSE; -// // 有极差或者有平级 -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, buyPrice)) { -// // 计算极差 -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); -// CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// cuMemberBonusRange.setCalValue(BigDecimal.ZERO); -// cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(ComputeUtil.computeSubtract(beginBuyPrice, buyPrice), calBonusIncome), saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); -// } -// memberBonusRangeList.add(cuMemberBonusRange); -// -// beginBuyPrice = buyPrice; -// comBuyPrice = buyPrice; -// beginGradeValue = calGradeValue; -// sourceMemberRangeExt = targetMemberRangeExt; -// calBonusIncome = BigDecimal.ZERO; -// } else { -// isRange = Boolean.TRUE; -// pkParent = targetMemberRangeExt.getPkMember(); -// } -// if (saOrderExt.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// continue; -// } -// if (bdGrade.getAlgebra() > 0) { -// Long lastPkParent = pkParent; -// for (int j = 0; j < bdGrade.getAlgebra(); j++) { -// targetMemberRangeExt = memberRangeExtMap.get(lastPkParent); -// if (targetMemberRangeExt == null) { -// if (memberRangeExtMap.get(pkParent) == null) { -// break; -// } -// pkParent = memberRangeExtMap.get(pkParent).getPkParent(); -// break; -// } -// calGradeValue = targetMemberRangeExt.getGradeValue(); -// BigDecimal sameBuyPrice = gradeMap.get(calGradeValue).getBuyPrice(); -// // 有平级 -// if (ComputeUtil.compareGreaterThan(sameBuyPrice, comBuyPrice)) { -// lastPkParent = targetMemberRangeExt.getPkParent(); -// pkParent = targetMemberRangeExt.getPkParent(); -// j--; -// continue; -// } -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, sameBuyPrice)) { -// pkParent = lastPkParent; -// break; -// } -// lastPkParent = targetMemberRangeExt.getPkParent(); -// if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || -// ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() || -// targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() || -// EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { -// j--; -// continue; -// } -// BigDecimal bonusIncome = BigDecimal.ZERO; -// if (j == 0) { -// bonusIncome = bdGrade.getFirstAlgebra(); -// } else if (j == 1) { -// bonusIncome = bdGrade.getSecondAlgebra(); -// } else if (j == 2) { -// bonusIncome = bdGrade.getThirdAlgebra(); -// } -// if (ComputeUtil.compareEqual(beginBuyPrice, sameBuyPrice)) { -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); -// CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// oriMemberBonusRange.setCalValue(BigDecimal.valueOf(10)); -// oriMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(bonusIncome, saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// oriMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// oriRetailRangeRemark(saOrderExt, oriMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, oriMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == oriMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, oriMemberBonusRange); -// } -// memberBonusRangeList.add(oriMemberBonusRange); -// calBonusIncome = ComputeUtil.computeAdd(calBonusIncome, bonusIncome); -// pkParent = lastPkParent; -// } else { -// j--; -// } -// if (j == bdGrade.getAlgebra() - 1) { -// beginGradeValue += 1; -// comBuyPrice = ComputeUtil.computeSubtract(comBuyPrice, BigDecimal.ONE); -// break; -// } -// } -// } else { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// } -// if (beginGradeValue > EGrade.S_VIP.getValue()) { -// break; -// } } return memberBonusRangeList; } - /** - * 计算区域奖 - * - * @param countyRangeExtMap - * @param saOrder - * @param bonusConfigDTO - * @param period - * @param memberRangeExtMap - * @param cuMemberBonusMap - * @return - */ - CuMemberBonusDetail calculateRetailAreaBonus(Map countyRangeExtMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map memberRangeExtMap, - Map cuMemberBonusMap, SaOrderExt saOrder) { - // 重消订单没有区域分红 - if (saOrder.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { - return null; - } -// // 区域分红根据商品盒数来,如果没有盒数,直接返回为空 -// if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) == 0) { -// return null; -// } - - CuMemberRetailRangeExt sourceRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 获取对应区域会员 - CuMemberRetailRangeExt cuMemberRetailRangeExt = countyRangeExtMap.get(sourceRetailRangeExt.getRegionVertexPkId() + "_" + saOrder.getRecCounty()); - if (null == cuMemberRetailRangeExt) { - return null; - } - // 获取区域会员结算数据 - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - - // 非正常用户 或者 停止收益 或 未激活,不能获取区域收益 - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || cuMemberRetailRangeExt.getEnableStatus() == EYesNo.NO.getIntValue()) { - return null; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_AREA_INCOME.getValue())) { - return null; - } - // 没有盒数商品,直接返回空 - if (CollectionUtil.isEmpty(saOrder.getOrderWaresExtList())) { - return null; - } - - // 处理区域收益 -- 计算比例为 0.5% - BigDecimal benefitIncome = BigDecimal.ZERO; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 注册、升级订单, 区域收益 = 商品价格 * 0.5% * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - // 商品最终价格 - BigDecimal waresPrice = saOrderWaresExt.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderWaresExt.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - - benefitIncome = benefitIncome.add(waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单, 区域收益 = 复购区域分红 * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - if (EDelFlag.UN_DELETE.getValue() == saOrderWaresExt.getDelFlag()) { - if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) { - // 按比值处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(saOrderWaresExt.getWaresQuantity())); - } else { - // 按比率处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getWaresPrice().multiply(saOrderWaresExt.getAreaIncome()).divide(new BigDecimal("100"), 6, BigDecimal.ROUND_HALF_UP)); - } - } - } - } - - CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome, - cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME); - // 计算业绩以盒数做为基础 - cuMemberBonusDetail.setCalAchieve(saOrder.getBoxNum()); - cuMemberBonusDetail.setPkOrder(saOrder.getPkId()); - String remark = String.format(BonusMsgConstants.RETAIL_AREA_INCOME, saOrder.getOrderCode(), - memberRangeExtMap.get(saOrder.getPkMember()).getMemberCode() + memberRangeExtMap.get(saOrder.getPkMember()).getMemberName(), - cuMemberRetailRangeExt.getMemberCode() + cuMemberRetailRangeExt.getMemberName(), - cuMemberBonusDetail.getPretaxIncome(), cuMemberRetailRangeExt.getCountryName()); - cuMemberBonusDetail.setRemark(remark); - return cuMemberBonusDetail; - } - - /** - * 团队福利、福利分红等奖金 -- 月奖 - * - * @param settleDateStr 结算日期 - */ - void calculateRetailShareBonus(String settleDateStr, BonusConfigDTO bonusConfigDTO, - Integer period, BonusRecordDetailVO bonusRecordDetailVO, Map cuMemberBonusMap) { - // 结算日期 - Date settleDate = DateUtils.parseStringToDate(settleDateStr); - // 上月最后一天 - String beforeMonthLastDate = DateUtils.beforeMonthLastDateStr(settleDate); - // 上月最后一天期数 - CuMemberSettlePeriod beforeMonthLast = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(beforeMonthLastDate); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE; - // 如果上月最后一期有值则使用,没有值则使用昨天期数 - if (ObjectUtil.isNotEmpty(beforeMonthLast)) { - rangeTableName += beforeMonthLast.getPkId(); - } else { - rangeTableName += period; - } - - // 查询上月订单 - // 结算月第一天(上月第一天) - Date currentMonthFirstDate = DateUtils.beforeMonthFirstDate(settleDate); - // 结算月下月第一天(本月第一天) - Date nextMonthFirstDate = DateUtils.currentMonthFirstDate(settleDate); - - List orderType = new ArrayList<>(); - orderType.add(EOrderType.RETAIL_REGISTER.getValue()); - orderType.add(EOrderType.RETAIL_REPURCHASE.getValue()); - - // 月订单列表 - List totalMonthOrderList = new ArrayList<>(); - // 级差收益(福利级差、复购级差) - List memberBonusRangeList = new ArrayList<>(); - // 培训津贴 - List memberBonusCoachList = new ArrayList<>(); - // 月度分红收益 - List memberBonusDetailList = new ArrayList<>(); - // 当前年月 - String month = DateUtils.getMonth(settleDateStr); - - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,只查昨天订单 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleDate); - log.info("测试环境,月结日期: {}", endDate); - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(settleDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - // 测试环境奖衔取当前结算期 - rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - log.info("测试环境,月结期间: {}", rangeTableName); - } else { - // 非测试环境 - while (!DateUtils.compareDateEqual(currentMonthFirstDate, nextMonthFirstDate)) { - // 从上月第一天开始,每天查一次订单,查到本月第一天停止 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, currentMonthFirstDate); - // 查询指定时间范围内订单 - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(currentMonthFirstDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - currentMonthFirstDate = endDate; - } - } - - if (totalMonthOrderList.size() > 0) { - // 会员ID集合 - Set pkMemberSet = new HashSet<>(); - totalMonthOrderList.forEach(saOrder -> pkMemberSet.add(saOrder.getPkMember())); - // 查询会员血缘伞上数据 - List cuMemberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByMemberPk(rangeTableName, pkMemberSet); - // 会员结算map(key:会员ID, value:会员结算数据) - Map memberRangeExtMap = new HashMap<>(); - cuMemberRetailRangeExtList.forEach(cuMemberRetailRangeExt -> - memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt)); - - // 按照系统类型将订单区分 -- 目前只有一个系统类型 - // key:会员体系,value:会员订单列表 - Map> orderMap = new HashMap<>(); - for (SaOrder saOrder : totalMonthOrderList) { - if (memberRangeExtMap.containsKey(saOrder.getPkMember())) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - if (orderMap.containsKey(cuMemberRetailRangeExt.getSystemType())) { - orderMap.get(cuMemberRetailRangeExt.getSystemType()).add(saOrder); - } else { - List orderList = new ArrayList<>(); - orderList.add(saOrder); - orderMap.put(cuMemberRetailRangeExt.getSystemType(), orderList); - } - } - } - - // 当月总pv,用于计算月度分红(福利平均、福利加权) - for (Integer systemType : orderMap.keySet()) { - List saOrders = orderMap.get(systemType); - // 月所有订单业绩(注册、升级、复购) - BigDecimal totalMonthConsumePv = BigDecimal.ZERO; - // 订单对应map - Map saOrderMap = new HashMap<>(); - - // new 两个月奖 - // 月度级差:注册、升级订单,从自己开始往上算,最多拨出10代(紧缩) - // 复购级差:复购订单,从自己开始往上算,最多拨出10代(紧缩) - for (SaOrder saOrder : saOrders) { - // 累计订单业绩 - totalMonthConsumePv = ComputeUtil.computeAdd(totalMonthConsumePv, saOrder.getOrderAchieve()); - // 封装订单map - saOrderMap.put(saOrder.getPkId(), saOrder); - - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 注册、升级订单,计算福利级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getRangeRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getRangeRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) - && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 福利极差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeBenefitRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailBenefitRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单,计算复购级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getMonthRepurchaseRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getMonthRepurchaseRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 复购级差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeMonthRepurchaseRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailMonthRepurchaseIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailMonthRepurchaseIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } - } - - // 培育津贴 - if (CollectionUtil.isNotEmpty(memberBonusRangeList)) { - for (CuMemberBonusRange cuMemberBonusRange : memberBonusRangeList) { - // 第一代开始 - int i = MagicNumberConstants.BLOOD_GENERATION_START; - // 推荐人 - Long pkMember = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()).getPkParent(); - // 提供奖金会员 - CuMemberRetailRangeExt sourceMemberRetailExt = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()); - // 级差所产生的培育津贴列表 - List rangeBonusCoachList = new ArrayList<>(); - // 最多发十代 - while (i <= MagicNumberConstants.BLOOD_GENERATION_END) { - // 当前需要拿奖金的会员 - CuMemberRetailRangeExt targetMemberRetailExt = memberRangeExtMap.get(pkMember); - if (null == targetMemberRetailExt) { - break; - } - pkMember = targetMemberRetailExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRetailExt.getCategory() - || targetMemberRetailExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRetailExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - - if (validatePkBonusItems(bonusConfigDTO, targetMemberRetailExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) { - // 校验当前国家是否有该奖项 - continue; - } - - // 奖金订单 - SaOrder saOrder = saOrderMap.get(cuMemberBonusRange.getPkOrder()); - if (null == saOrder) { - log.warn("培育津贴因订单为空跳过, cuMemberBonusRange: {}", cuMemberBonusRange); - continue; - } - - // 获取奖衔能拿多少代领导奖的奖衔值 - Integer awardsValue = targetMemberRetailExt.getCoachAlgebra(); - - // 判断是否有奖金 - if (awardsValue >= i) { - // 培育津贴比例 - BigDecimal awardCalRadio = targetMemberRetailExt.getCoachRatio(); - // 生成培育津贴明细 - CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusRange, i, targetMemberRetailExt, awardCalRadio); - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRetailExt.getPkMember(), - targetMemberRetailExt.getIncomeStatus(), targetMemberRetailExt.getPkSettleCountry(), targetMemberRetailExt.getPkRate()); - - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusCoach, saOrder.getOrderAmount(), BigDecimal.ONE); - retailCoachRemark(saOrder, cuMemberBonusCoach, sourceMemberRetailExt, targetMemberRetailExt); - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus()) { - cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach); - } - rangeBonusCoachList.add(cuMemberBonusCoach); - - // 这一代领导奖计算完,计算代数加1 - i++; - } - } - - if (rangeBonusCoachList.size() > 0) { - // 共多少代 - --i; - for (CuMemberBonusCoach cuMemberBonusCoach : rangeBonusCoachList) { - cuMemberBonusCoach.setCoachGeneration(i); - cuMemberBonusCoach.setRemark(cuMemberBonusCoach.getRemark().replace("#", cuMemberBonusCoach.getCoachGeneration().toString())); - memberBonusCoachList.add(cuMemberBonusCoach); - } - } - } - } - - // 查询 v5 等级 且 分红奖衔 >= S4 - List memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName); - if (memberRetailRangeExtList.size() > 0) { - // 查询月度分红会员的直推 - List retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - // 推荐会员列表(key:推荐人,value:推荐会员列表) - Map> parentMemberRangeExtMap = new HashMap<>(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) { - parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt); - } else { - List cuMemberRangeExtList = new ArrayList<>(); - cuMemberRangeExtList.add(cuMemberRetailRangeExt); - parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList); - } - } - // 奖衔分红分类 - // 4 5 6 级奖衔会员 - List firstAwardsRetailRangeList = new ArrayList<>(); - // 4 5 6 级奖衔累计业绩 - BigDecimal firstConsumePv = BigDecimal.ZERO; - // 4 5 6 月度分红平均 比例 - BigDecimal benefitAvgRatio = BigDecimal.ZERO; - // 4 5 6 月度分红加权 比例 - BigDecimal benefitShareRatio = BigDecimal.ZERO; - - // 7 8 9 级奖衔会员 - List secondAwardsRetailRangeList = new ArrayList<>(); - // 7 8 9 级奖衔累计业绩 - BigDecimal secondConsumePv = BigDecimal.ZERO; - // 7 8 9 月度分红平均 比例 - BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO; - // 7 8 9 月度分红加权 比例 - BigDecimal secondBenefitShareRatio = BigDecimal.ZERO; - - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - // 获取会员的推荐数据 - List rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - // 计算小区(本人月消费默认为大区) - BigDecimal bigConsumePv = cuMemberRetailRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) { - // 本人消费 + 团队消费 - BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) { - bigConsumePv = monthConsumePv; - } - } - // 小区业绩 = 本人月团队 + 本人月消费 - 大区业绩 - cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv().add(cuMemberRetailRangeExt.getMonthConsumePv()), bigConsumePv)); - } else { - cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO); - } - if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() - && cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) { - // 奖衔 4 5 6 级数据处理 - firstAwardsRetailRangeList.add(cuMemberRetailRangeExt); - benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv); - } else { - // 奖衔 7 8 9 级数据处理 - secondAwardsRetailRangeList.add(cuMemberRetailRangeExt); - secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv); - } - } - if (firstAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - if (secondAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - } - } - } - if (memberBonusDetailList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusDetailList() == null) { - bonusRecordDetailVO.setCuMemberBonusDetailList(memberBonusDetailList); - } else { - bonusRecordDetailVO.getCuMemberBonusDetailList().addAll(memberBonusDetailList); - } - } - if (memberBonusCoachList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusCoachList() == null) { - bonusRecordDetailVO.setCuMemberBonusCoachList(memberBonusCoachList); - } else { - bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(memberBonusCoachList); - } - } - if (memberBonusRangeList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusRangeList() == null) { - bonusRecordDetailVO.setCuMemberBonusRangeList(memberBonusRangeList); - } else { - bonusRecordDetailVO.getCuMemberBonusRangeList().addAll(memberBonusRangeList); - } - } - } - - private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, String month, - BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) { - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(), - cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate()); - - SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build(); - CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus); - - // 计算比例 - cuMemberBonusDetail.setCalValue(benefitAvgRatio); - cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome); - cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), bonusItemsValue)); - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusDetail, BigDecimal.ZERO, BigDecimal.ONE); - if (bonusItemsValue != EBonusItems.RETAIL_AREA_INCOME.getValue()) { - String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month); - cuMemberBonusDetail.setRemark(remark); - } - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { - if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) { - cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else if (bonusItemsValue == EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue()) { - cuMemberBonus.setRetailBenefitAvgIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitAvgIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else { - cuMemberBonus.setRetailBenefitIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitIncome(), cuMemberBonusDetail.getPretaxIncome())); - } - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); - } - return cuMemberBonusDetail; - } - - - protected CuMemberBonusCoach getCuMemberBonusCoach(BonusConfigDTO bonusConfigDTO, CuMemberBonusRange cuMemberBonusRange, - int i, CuMemberRetailRangeExt targetMemberRangeExt, BigDecimal awardCalRadio) { - CuMemberBonusCoach cuMemberBonusCoach = CuMemberBonusCoach.builder() - .pkBonus(targetMemberRangeExt.getPkMember()) - .pkOrder(cuMemberBonusRange.getPkOrder()) - .pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) - .incomeStatus(targetMemberRangeExt.getIncomeStatus()) - .calType(ECalType.RATIO.getValue()) - .calAchieve(cuMemberBonusRange.getCalAchieve()) - .currentGeneration(i) - // 计算比例 - .calValue(awardCalRadio) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .pretaxIncome(ComputeUtil.computeBonusMultiply(cuMemberBonusRange.getPretaxIncome(), awardCalRadio)) - .coachNoCapping(BigDecimal.ZERO) - .coachCapping(BigDecimal.ZERO) - .coachNormalHalf(BigDecimal.ZERO) - .coachNormalReal(BigDecimal.ZERO) - .build(); - cuMemberBonusCoach.setPkCountry(targetMemberRangeExt.getPkSettleCountry()); - cuMemberBonusCoach.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusCoach; - } - private CuMemberBonusRange getCuMemberRetailBonusRange(SaOrder saOrderExt, CuMemberRetailRangeExt targetMemberRangeExt, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { CuMemberBonusRange cuMemberBonusRange = CuMemberBonusRange.builder() @@ -1845,155 +819,5 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return cuMemberAwards; } - /** - * 奖金明细 - * - * @param saOrderExt 订单 - * @param cuMemberBonus 奖金主表 - */ - private CuMemberBonusDetail getCuMemberBonusDetail(SaOrder saOrderExt, Integer incomeStatus, Integer pkCountry, CuMemberBonus cuMemberBonus) { - CuMemberBonusDetail cuMemberBonusDetail = CuMemberBonusDetail.builder() - .pkOrder(saOrderExt.getPkId()) - .calType(ECalType.RATIO.getValue()) - .incomeStatus(incomeStatus) - .calAchieve(saOrderExt.getOrderAchieve()) - .pkBonus(cuMemberBonus.getPkId()) - .pretaxIncome(BigDecimal.ZERO) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusDetail.setPkCountry(pkCountry); - cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusDetail; - } - - /** - * 获取手动激活map - * - * @param settleStartDate - * @return - */ - private Map getActivateMap(Date settleStartDate) { - // 当期的手动激活的记录列表 - List activateList = iCuMemberServiceLogServiceApi.listActivateLog(settleStartDate).getData(); - return activateList.stream() - .collect(Collectors.groupingBy( - CuMemberServiceLog::getPkMember, - Collectors.collectingAndThen( - Collectors.minBy(Comparator.comparing(CuMemberServiceLog::getCreationTime)), - optional -> optional.get().getCreationTime() - ) - )); - } - - /** - * 处理复购级差 - */ - private List calculateRepurchaseRangeBonus(SaOrderExt saOrderExt, Map memberRangeExtMap, - Map> vertexBonusMap, Map> rangeOrderMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { - // 直推级差返回数据 - List memberBonusRangeList = new ArrayList<>(); - // 订单会员 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - - List vertexBonusList = vertexBonusMap.get(sourceMemberRangeExt.getPkVertex()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - // 存在体系奖项 - for (Integer bonusItems : vertexBonusList) { - if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItems) { - // 复购级差收益(key:会员ID,value:复购级差收益) - Map bonusIncomeMap = new HashMap<>(); - - List saOrderItemsExtList = rangeOrderMap.get(saOrderExt.getPkId()); - for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) { - // 级别值比当前等级高的级差数据列表 - Map itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream() - .collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice)); - - // 临时价格(跟着每一次变动) - BigDecimal tmpPrice = saOrderItemsExt.getPrice(); - // 推荐人 - long pkParent = sourceMemberRangeExt.getPkParent(); - // 计算级差 - while (true) { - // 推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - // 上一级推荐人 - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 - continue; - } - // 当前会员等级值 - Integer calGradeValue = EAwards.getGradeValueByValue(targetMemberRangeExt.getGradeValue()); - // 当前会员的级差价格 - BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue); - if (targetRangePrice.compareTo(tmpPrice) < 0) { - // 当前级差价格比上一次的低 - // 差价就是级差收益 - BigDecimal bonusIncome; - if (bonusIncomeMap.containsKey(targetMemberRangeExt.getPkMember())) { - bonusIncome = bonusIncomeMap.get(targetMemberRangeExt.getPkMember()).add(tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity()))); - } else { - bonusIncome = tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); - } - - bonusIncomeMap.put(targetMemberRangeExt.getPkMember(), bonusIncome); - // 临时价格更新 - tmpPrice = targetRangePrice; - } - - // 最高等级则退出 - if (calGradeValue == EGrade.S_VIP.getValue()) { - break; - } - } - } - - if (bonusIncomeMap.size() > 0) { - for (Long key : bonusIncomeMap.keySet()) { - // 复购级差收益 - BigDecimal rangeBonusIncome = bonusIncomeMap.get(key); - if (rangeBonusIncome.compareTo(BigDecimal.ZERO) > 0) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(key); - // 处理复购级差收益 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setCalAchieve(saOrderExt.getOrderAmount()); - cuMemberBonusRange.setPretaxIncome(rangeBonusIncome); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrder(saOrderExt.getPkId()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - } - } - } - } - } - } - return memberBonusRangeList; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index d30461d2..e9d42c35 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -2,12 +2,9 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; -import com.hzs.bonus.detail.service.ICuRegionAssessService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; @@ -38,8 +35,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private IBonusOrderService iBonusOrderService; @Autowired - private ICuRegionAssessService cuRegionAssessService; - @Autowired private ICuMemberSettlePeriodService cuMemberSettlePeriodService; @Autowired private BonusSettleRangeHandle bonusSettleRangeHandle; @@ -48,15 +43,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private ICuMemberBonusPushService cuMemberBonusPushService; @Autowired - private ICuMemberBonusExpandService cuMemberBonusExpandService; - @Autowired - private ICuMemberBonusCoachService cuMemberBonusCoachService; - @Autowired - private ICuMemberBonusDetailService cuMemberBonusDetailService; - @Autowired private ICuMemberBonusRangeService cuMemberBonusRangeService; @Autowired - private IBdVertexBonusService iBdVertexBonusService; + private ICuMemberBonusDetailService cuMemberBonusDetailService; /** @@ -95,34 +84,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { BonusRecordDetailVO recordDetailVO = new BonusRecordDetailVO(); // 今天和昨天是否同月 Boolean isSameMonth = DateUtils.getMonth(settleDate).equals(DateUtils.getMonth(yesterday)); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); // 计算新零售团队奖金 bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, recordDetailVO, - period, yesterdayPeriod, isSameMonth, vertexBonusMap); + period, yesterdayPeriod, isSameMonth); - // new 每月1号,需要计算4个月奖 - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,每天都执行 - // 计算新零售团队福利、福利分红等奖金 - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } else { - // 非测试环境 - if (settleDate.endsWith("01")) { - // 计算新零售团队福利、福利分红等奖金 - log.info("正式处理:{}", settleDate); - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } - } - - Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); - String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate); - if (afterDate.endsWith("01")) { - // 计算完月奖,计算考核(区域6个月要达到蓝宝以上) - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - } // 保存当日计算的奖金 insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO); } catch (Exception e) { @@ -197,8 +163,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { */ void insertCuMemberBonus(String settleDate, Integer period, Map cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO) { cuMemberBonusPushService.deleteCuMemberBonusPush(period); - cuMemberBonusExpandService.deleteCuMemberBonusExpand(period); - cuMemberBonusCoachService.deleteCuMemberBonusCoach(period); cuMemberBonusDetailService.deleteCuMemberBonusDetail(period); cuMemberBonusRangeService.deleteCuMemberBonusRange(period); cuMemberBonusService.deleteCuMemberBonus(period); @@ -206,14 +170,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService { return; } List batchMemberBonusPushList = new ArrayList<>(); - List batchMemberBonusExpandList = new ArrayList<>(); - List batchMemberBonusCoachList = new ArrayList<>(); List batchMemberBonusDetailList = new ArrayList<>(); List batchMemberBonusRangeList = new ArrayList<>(); List cuMemberBonusList = setCuMemberBonusSeq(settleDate, cuMemberBonusMap); List cuMemberBonusPushList = bonusRecordDetailVO.getCuMemberBonusPushList(); - List cuMemberBonusExpandList = bonusRecordDetailVO.getCuMemberBonusExpandList(); - List cuMemberBonusCoachList = bonusRecordDetailVO.getCuMemberBonusCoachList(); List cuMemberBonusDetailList = bonusRecordDetailVO.getCuMemberBonusDetailList(); List cuMemberBonusRangeList = bonusRecordDetailVO.getCuMemberBonusRangeList(); if (cuMemberBonusPushList != null && cuMemberBonusPushList.size() > 0) { @@ -221,16 +181,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusPush.setPkBonus(cuMemberBonusMap.get(cuMemberBonusPush.getPkBonus()).getPkId())); batchMemberBonusPushList.addAll(cuMemberBonusPushList); } - if (cuMemberBonusExpandList != null && cuMemberBonusExpandList.size() > 0) { - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> - cuMemberBonusExpand.setPkBonus(cuMemberBonusMap.get(cuMemberBonusExpand.getPkBonus()).getPkId())); - batchMemberBonusExpandList.addAll(cuMemberBonusExpandList); - } - if (cuMemberBonusCoachList != null && cuMemberBonusCoachList.size() > 0) { - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> - cuMemberBonusCoach.setPkBonus(cuMemberBonusMap.get(cuMemberBonusCoach.getPkBonus()).getPkId())); - batchMemberBonusCoachList.addAll(cuMemberBonusCoachList); - } if (cuMemberBonusDetailList != null && cuMemberBonusDetailList.size() > 0) { cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); @@ -245,8 +195,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(period); cuMemberBonusPushService.batchInsertCuMemberBonusPush(batchMemberBonusPushList, memberIdSet); - cuMemberBonusExpandService.batchInsertCuMemberBonusExpand(batchMemberBonusExpandList, memberIdSet); - cuMemberBonusCoachService.batchInsertCuMemberBonusCoach(batchMemberBonusCoachList, memberIdSet); cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(batchMemberBonusDetailList, memberIdSet); cuMemberBonusRangeService.batchInsertCuMemberBonusRange(batchMemberBonusRangeList, memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java index 6d8fc67c..97979af2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java @@ -1,47 +1,15 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusCoachService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; import com.hzs.bonus.bonus.mapper.CuMemberBonusCoachMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务实现类 */ @Service public class CuMemberBonusCoachServiceImpl extends ServiceImpl implements ICuMemberBonusCoachService { - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - public void deleteCuMemberBonusCoach(Integer period) { - baseMapper.deleteCuMemberBonusCoach(period); - } - - @Override - public void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet) { - if (cuMemberBonusCoachList.size() == 0) { - return; - } - List cuMemberBonusCoaches = new ArrayList<>(); - for (CuMemberBonusCoach cuMemberBonusCoach : cuMemberBonusCoachList) { - if (memberIdSet.contains(cuMemberBonusCoach.getPkBonus())) { - cuMemberBonusCoaches.add(cuMemberBonusCoach); - } - } - if (cuMemberBonusCoaches.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusCoaches); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusCoach(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java index a7f3669b..99fa29e6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java @@ -1,53 +1,17 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusExpandService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; import com.hzs.bonus.bonus.mapper.CuMemberBonusExpandMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务实现类 */ @Service public class CuMemberBonusExpandServiceImpl extends ServiceImpl implements ICuMemberBonusExpandService { - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } - - @Override - public void deleteCuMemberBonusExpand(Integer period) { - baseMapper.deleteCuMemberBonusExpand(period); - } - - @Override - public void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet) { - if (cuMemberBonusExpandList.size() == 0) { - return; - } - List memberBonusExpands = new ArrayList<>(); - for (CuMemberBonusExpand cuMemberBonusExpand : cuMemberBonusExpandList) { - if (memberIdSet.contains(cuMemberBonusExpand.getPkBonus())) { - memberBonusExpands.add(cuMemberBonusExpand); - } - } - if (memberBonusExpands.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(memberBonusExpands); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusExpand(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 72212199..5c5d7b8b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -49,8 +49,6 @@ import java.util.stream.Collectors; @Slf4j public class CuMemberBonusServiceImpl extends ServiceImpl implements ICuMemberBonusService { - @DubboReference - ISystemConfigServiceApi iSystemConfigServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @DubboReference @@ -64,10 +62,6 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryMemberBonusVoByCondition(BonusParam bonusParam) { -// String value = iSystemConfigServiceApi.getBonusSystemConfig(bonusParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// // 周结的话不能查询当前周的数据,只能查询上周的数据 -// bonusParam.setEndDate(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(bonusParam.getEndDate()))); -// } return handleMemberBonusPurchase(getCuMemberBonusExtList(bonusParam), bonusParam); } private List handleMemberBonusPurchase(List cuMemberBonusExtList, BonusParam bonusParam) { -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// Collections.reverse(cuMemberBonusExtList); -// return cuMemberBonusExtList; -// } - List memberBonusExtList = new ArrayList<>(); Map cuMemberBonusExtMap = new HashMap<>(); cuMemberBonusExtList.forEach(cuMemberBonusExt -> cuMemberBonusExtMap.put(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonusExt.getSettleDate()), cuMemberBonusExt)); @@ -334,29 +318,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusExpand.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusExpand.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.COACHING_INCOME.getValue() == bonusItemsValue) { - // 辅导收益 - // 拓展收益、复购拓展收益 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusCoach.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusCoach.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue) { + } else if (EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue) { // 复购极差 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItems(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); @@ -422,36 +384,9 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusPushList = cuMemberBonusPushMapper.queryMemberBonusPushByBonusItemsFoServer(bonusParam); - dataTable = getDataTable(cuMemberBonusPushList); - cuMemberBonusPushList.forEach(cuMemberBonusPush -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusPush, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.EXPANSION_INCOME.getValue() == bonusItemsValue - || EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue() == bonusItemsValue) { - // 拓展收益、复购拓展收益 - List cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.RETAIL_COACHING_INCOME.getValue() == bonusItemsValue) { - // 培育津贴 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue() == bonusItemsValue) { + } else if (EBonusItems.DIRECT_INCOME.getValue() == bonusItemsValue + || EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue + || EBonusItems.SAME_LEVEL_INCOME.getValue() == bonusItemsValue) { // 直推收益、平级收益、福利级差、复购级差 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); @@ -590,10 +525,9 @@ public class CuMemberBonusServiceImpl extends ServiceImpl implements ICuMemberShareBonusService { - @DubboReference - ISaOrderServiceApi saOrderServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - - private ICuMemberShareDetailService cuMemberShareDetailService; - - private ICuMemberService cuMemberService; - - private ICuMemberAssessService cuMemberAssessService; - - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - - @Autowired - public void setCuMemberShareDetailService(ICuMemberShareDetailService cuMemberShareDetailService) { - this.cuMemberShareDetailService = cuMemberShareDetailService; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam) { - CuMemberShareBonusExt cuMemberShareBonusExt = queryCuMemberShareBonus(cuMemberShareBonusParam.getPkCountry(), cuMemberShareBonusParam.getSettleMonth()); - CuMemberShareBonus cuMemberShareBonus = BeanUtil.copyProperties(cuMemberShareBonusExt, CuMemberShareBonus.class); - if (cuMemberShareBonus.getPkId() == null) { - cuMemberShareBonus.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareBonus.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - CuMemberSettlePeriod cuMemberSettlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(cuMemberShareBonusExt.getSettleMonth() + "-01"); - cuMemberShareBonus.setPeriod(cuMemberSettlePeriod.getPkId()); - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(cuMemberShareBonusParam.getPkCountry()).getData(); - cuMemberShareBonus.setPkRate(currencyDTO.getPkId()); - baseMapper.insert(cuMemberShareBonus); - } else { - cuMemberShareBonus.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareBonus.setModifiedTime(DateUtils.currentDateTime()); - baseMapper.updateById(cuMemberShareBonus); - } - if (CollectionUtil.isNotEmpty(cuMemberShareBonusExt.getCuMemberShareDetailList())) { - Map cuMemberShareDetailParamMap = new HashMap<>(); - cuMemberShareBonusParam.getCuMemberShareDetailList().forEach(cuMemberShareDetailParam -> - cuMemberShareDetailParamMap.put(cuMemberShareDetailParam.getPkAwards(), cuMemberShareDetailParam)); - Date currentDateTime = DateUtils.currentDateTime(); - for (CuMemberShareDetailExt cuMemberShareDetail : cuMemberShareBonusExt.getCuMemberShareDetailList()) { - if (cuMemberShareDetailParamMap.containsKey(cuMemberShareDetail.getPkAwards())) { - CuMemberShareDetailParam cuMemberShareDetailParam = cuMemberShareDetailParamMap.get(cuMemberShareDetail.getPkAwards()); - cuMemberShareDetail.setRealShareIncome(cuMemberShareDetailParam.getRealShareIncome()); - cuMemberShareDetail.setRealShareSubtotal(ComputeUtil.computeMultiply(cuMemberShareDetailParam.getRealShareIncome(), cuMemberShareDetail.getReachTotal())); - } - if (cuMemberShareDetail.getPkId() == null) { - cuMemberShareDetail.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareDetail.setPkShareBonus(cuMemberShareBonus.getPkId()); - cuMemberShareDetail.setCreationTime(currentDateTime); - cuMemberShareDetail.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - } else { - cuMemberShareDetail.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareDetail.setModifiedTime(DateUtils.currentDateTime()); - } - } - cuMemberShareDetailService.saveMemberShareBonus(cuMemberShareBonusExt.getCuMemberShareDetailList()); - } - } - - @Override - public CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth) { - CuMemberShareBonusExt cuMemberShareBonusExt = baseMapper.queryCuMemberShareBonus(pkCountry, settleMonth); - if (cuMemberShareBonusExt == null) { - cuMemberShareBonusExt = new CuMemberShareBonusExt(); - cuMemberShareBonusExt.setSettleMonth(settleMonth); - Date endDate = DateUtils.parseDate(settleMonth + "-01"); - Date startDate = DateUtils.beforeMonthFirstDate(endDate); - SaOrder saOrder = saOrderServiceApi.queryOrderTotalAchieveByTime(startDate, endDate).getData(); - BigDecimal shareRatio = BigDecimal.ZERO; - List bdAwardsList = awardsServiceApi.queryAwards(pkCountry).getData(); - List cuMemberShareDetailList = new ArrayList<>(); - // 查询奖衔 晋升人数 - List cuMemberList = cuMemberService.queryCuMemberShareTotal(pkCountry); - Map cuMemberMap = new HashMap<>(); - cuMemberList.forEach(cuMember -> - cuMemberMap.put(cuMember.getPkAwards(), cuMember.getShareStatus())); - List cuMemberAssessList = cuMemberAssessService.queryCuMemberAssTotal(settleMonth + "-01", pkCountry); - Map cuMemberAssMap = new HashMap<>(); - cuMemberAssessList.forEach(cuMemberAssess -> - cuMemberAssMap.put(cuMemberAssess.getPkAwards(), cuMemberAssess.getAssessStatus())); - // 查询奖衔 达标人数 - for (BdAwards bdAwards : bdAwardsList) { - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()) { - continue; - } - shareRatio = ComputeUtil.computeAdd(shareRatio, bdAwards.getAbonusRatio()); - CuMemberShareDetailExt cuMemberShareDetail = new CuMemberShareDetailExt(); - cuMemberShareDetail.setPkAwards(bdAwards.getPkId()); - cuMemberShareDetail.setPkAwardsVal(bdAwards.getAwardsName()); - cuMemberShareDetail.setPromoteTotal(0); - cuMemberShareDetail.setReachTotal(0); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareSubtotal(BigDecimal.ZERO); - if (cuMemberMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setPromoteTotal(cuMemberMap.get(bdAwards.getPkId())); - } - if (cuMemberAssMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setReachTotal(cuMemberAssMap.get(bdAwards.getPkId())); - } - cuMemberShareDetailList.add(cuMemberShareDetail); - } - cuMemberShareBonusExt.setExpectShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - cuMemberShareBonusExt.setRealShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - // 处理预发金额 预发合计 - for (CuMemberShareDetail cuMemberShareDetail : cuMemberShareDetailList) { - int count = bdAwardsList.size(); - if (count > 0) { - cuMemberShareDetail.setExpectShareSubtotal(ComputeUtil.computeDivide(cuMemberShareBonusExt.getExpectShareTotal(), BigDecimal.valueOf(count))); - cuMemberShareDetail.setExpectShareIncome(ComputeUtil.computeDivide(cuMemberShareDetail.getExpectShareSubtotal(), BigDecimal.valueOf(cuMemberShareDetail.getPromoteTotal()))); - } else { - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - } - } - cuMemberShareBonusExt.setCuMemberShareDetailList(cuMemberShareDetailList); - } - return cuMemberShareBonusExt; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java index 11371e81..df13a9be 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java @@ -3,21 +3,13 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberShareDetailService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; import com.hzs.bonus.bonus.mapper.CuMemberShareDetailMapper; import org.springframework.stereotype.Service; -import java.util.List; - /** * 会员奖金-分红奖金配置明细 服务实现类 */ @Service public class CuMemberShareDetailServiceImpl extends ServiceImpl implements ICuMemberShareDetailService { - @Override - public void saveMemberShareBonus(List cuMemberShareDetailList) { - baseMapper.saveMemberShareBonus(cuMemberShareDetailList); - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java index d114e4f9..ff67bca9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java @@ -22,16 +22,6 @@ public class BonusRecordDetailVO implements Serializable { */ private List cuMemberBonusPushList; - /** - * - */ - private List cuMemberBonusExpandList; - - /** - * 新零售 - 培育津贴 - */ - private List cuMemberBonusCoachList; - /** * 新零售 - 区域分红、月度分红 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java deleted file mode 100644 index 6646c098..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.controller.api; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.ArrayList; -import java.util.List; - -/** - * @description: 考核会员端 - * @author: sui q - * @time: 2025/1/16 11:12 - * @classname: ApiCuRegionAssessController - * @package_name: com.hzs.bonus.detail.controller.api - * version 1.0.0 - */ -@RestController -@RequestMapping("/api/region") -public class ApiCuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 查询会员昨天奖金的值 - */ - @GetMapping("/query") - public TableDataInfo listRegionAssess(){ - CuRegionAssessParam cuRegionAssessParam = new CuRegionAssessParam(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - cuRegionAssessParam.setPkMember(SecurityUtils.getUserId()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - return getDataTable(regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList)); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java deleted file mode 100644 index 7f5f2bc5..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.enums.EOperationMethod; -import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * @Description: - * @Author: sui q - * @Time: 2022/11/8 13:50 - * @Classname: CuMemberAssessController - * @PackageName: com.hzs.member.detail.controller.manage - */ -@RestController -@RequestMapping("/manage/assess") -public class CuMemberAssessController extends BaseController { - - private ICuMemberAssessService cuMemberAssessService; - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - /** - * 考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult calculationCuMemberAssess(String settleDate) { - cuMemberAssessService.calculationCuMemberAssess(DateUtils.parseStringToDate(settleDate)); - return AjaxResult.success(); - } - - /** - * 重算考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/retry-examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult retryCalculationCuMemberAssess(String settleDate) { - cuMemberAssessService.retryCalculationAssess(DateUtils.currentMonthFirstDate(DateUtils.parseStringToDate(settleDate)), Boolean.FALSE); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java deleted file mode 100644 index 0e4d13f9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessExcelVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.List; - -/** - * 新零售会员区域考核 前端控制器 - */ -@RestController -@RequestMapping("/manage/region") -public class CuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService cuRegionAssessService; - - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 考核 - * 考核默认考核当月 - * - * @return AjaxResult - */ - @GetMapping("/examine") - public AjaxResult calculationCuRegionAssess(String settleDate) { - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - return AjaxResult.success(); - } - - /** - * 查询会员昨天奖金的值 - */ - @PostMapping("/query") - public TableDataInfo listRegionAssess(@RequestBody CuRegionAssessParam cuRegionAssessParam) { - startPage(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList); - TableDataInfo dataTable = getDataTable(cuRegionAssessExtList); - dataTable.setRows(cuRegionAssessVoList); - return dataTable; - } - - /** - * 分页查询会员某个时间段内的奖金汇总 - */ - @PostMapping("/export") - public void exportRegionAssess(HttpServletResponse response, CuRegionAssessParam cuRegionAssessParam) { - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessExcelVO regionAssessExcelVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessExcelVO.class); - regionAssessExcelVO.setAssessDate(cuRegionAssessDetail.getAssessDate()); - regionAssessExcelVO.setTeamMonthPv(cuRegionAssessDetail.getTeamMonthPv()); - regionAssessExcelVO.setSmallAreaPv(cuRegionAssessDetail.getSmallAreaPv()); - regionAssessExcelVO.setAssessStatus(cuRegionAssessDetail.getAssessStatus()); - cuRegionAssessVoList.add(regionAssessExcelVO); - } - } - ExcelUtil util = new ExcelUtil<>(CuRegionAssessExcelVO.class); - util.exportExcel(response, cuRegionAssessVoList, "区域考核导出"); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java index 75b4ae6e..062cb5e0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java @@ -2,68 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface CuMemberAssessDetailMapper extends BaseMapper { - - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param cuMemberList 需要重新考核的会员 - * @param assessType 类型 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("cuMemberList") List cuMemberList, @Param("assessType") Integer assessType); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - Integer updateCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 批量删除会员考核明细 - * @param revokeDetailList 退单的明细数据 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/9 15:37 - */ - Integer updateCuMemberAssessDetailByRevoke(@Param("revokeDetailList") List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index 90baae05..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java index e483d22f..64ce9346 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java @@ -2,125 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssess; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员信息-会员考核记录 Mapper 接口 */ public interface CuMemberAssessMapper extends BaseMapper { - - /* - * 清空表数据 - **/ - void deleteCuMemberAssessByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberRangeAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 更新会员复购考核业绩 - * - * @param tableName 结算表 - * @param beforeTableName 上个月的表 - * @param sourcePeriod 来源结算期 - * @param period 结算结算期间 - * @param assessType 考核类型 0=复购考核 1=分红考核 - */ - Integer updateAssessPeriodBeginByBeforeMonth(@Param("beforeTableName") String beforeTableName, @Param("tableName") String tableName, - @Param("sourcePeriod") Integer sourcePeriod, - @Param("period") Integer period, @Param("assessType") Integer assessType); - - /** - * 更新会员复购考核、分红考核 当月结余,根据上月复购订单 - * - * @param tableName 表名 - * @param period 期间 - * @param assessType 考核类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param orderTypeList 订单类型 - */ - Integer updateAssessPeriodAddBySaOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("assessType") Integer assessType, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("orderTypeList") List orderTypeList); - - /** - * 更新免考通过的考核表 - * 更新会员考核表,根据免考的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodExemptBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员 - * - * @param tableName 需要更新的会员考核表名 - * @param settleTableName 每日结算表 - * @param period 期间 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateAssessCuMemberToRepExempt(@Param("tableName") String tableName, @Param("settleTableName") String settleTableName, - @Param("period") Integer period, @Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - */ - Integer updateAllCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName); - - /** - * 更新考核通过的考核表 - * 更新会员考核表,根据使用值的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodCheckBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(@Param("settleTable") String settleTable, @Param("period") Integer period, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java deleted file mode 100644 index dcf20b69..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 Mapper 接口 - */ -public interface CuMemberGradeMapper extends BaseMapper { - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(@Param("secondRangeTableName") String secondRangeTableName, @Param("period") Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(@Param("period") Integer period, @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询会员等级 - */ - List queryCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 回退会员等级 - */ - void updateCuMemberGradeLevel(@Param("rangeTableName") String rangeTableName, @Param("pkOrder") Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(@Param("pkMember") Long pkMember, @Param("pkOrder") Long pkOrder); - - /** - * 删除等级 - */ - void deleteCuMemberGrade(@Param("period") Integer period); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(@Param("cuMemberRetailRangeExtList") List cuMemberRetailRangeExtList, - @Param("period") Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java deleted file mode 100644 index 25efdea9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 Mapper 接口 - */ -public interface CuRegionAssessDetailMapper extends BaseMapper { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量生成考核明细seq - * - * @param rowNum - * @return - */ - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(@Param("cuRegionAssessDetailList") List cuRegionAssessDetailList); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailTeamPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailSmallAreaPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 初始化考核,先置为考核失败 - **/ - void updateCuRegionAssessDetailInit(@Param("assessDate") Date assessDate); - - /* - * 根据月后业绩考核,汇总满足30w,小区10w - **/ - void updateCuRegionAssessDetailByPv(@Param("assessDate") Date assessDate); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java deleted file mode 100644 index 7c407304..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 Mapper 接口 - */ -public interface CuRegionAssessMapper extends BaseMapper { - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(@Param("regionAssessParam") CuRegionAssessParam regionAssessParam); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 考核开始日期 - **/ - void updateAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - */ - List batchQueryCuRegionAssessSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssess(@Param("cuRegionAssessList") List cuRegionAssessList); - - /* - * 更新达标次数 - **/ - void mergeCuRegionAssess(@Param("assessDate") Date assessDate); - - /* - * 查询待考核的区域 - **/ - List queryCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java index 4195becb..10fb5eb0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java @@ -2,63 +2,10 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface ICuMemberAssessDetailService extends IService { - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param newCuMemberSettleExtList 会员列表 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - void updateCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /** - * 删除可能会发生变动的会员的考核明细 - * @param revokeDetailList 变动的记录 - * @Author: sui q - * @Date: 2022/11/9 15:31 - */ - void deleteCuMemberAssessDetailByList(List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index 630b0400..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java index b85bb819..ed209323 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java @@ -3,28 +3,9 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssess; -import java.util.Date; -import java.util.List; - /** * 会员信息-会员考核记录 服务类 */ public interface ICuMemberAssessService extends IService { - /** - * 复购考核每月第一考核调用此方法 - */ - void calculationCuMemberAssess(Date currentDate); - - /** - * 重算考核 奖金用、每天的重算复购考核用(复购考核、分红考核),只重算免考的 - * - * @param currentDate 哪一天进行重新复购考核,拿昨天的值跟现在的值对比 - */ - void retryCalculationAssess(Date currentDate, Boolean flag); - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(String startDate, Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java deleted file mode 100644 index 42165197..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务类 - */ -public interface ICuMemberGradeService extends IService { - - /** - * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天 - * - * @param period 结算期间 - * @param rangeTableName 结算表 - */ - List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(String secondRangeTableName, Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList); - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(String rangeTableName, Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder); - - /** - * 插入会员等级升级记录 - */ - void insertCuMemberGrade(List cuMemberGradeList); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGrade(List cuMemberGradeList, Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java deleted file mode 100644 index f0e47195..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务类 - */ -public interface ICuRegionAssessDetailService extends IService { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate); - - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList); - - /* - * 根据上月数据考核区域 - **/ - void assessCuRegionAssessDetail(String rangeTableName, Date assessDate); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java deleted file mode 100644 index 44be6d2d..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 服务类 - */ -public interface ICuRegionAssessService extends IService { - - /* - * 每月考核区域是否达标 - **/ - void assessRegionByEveryMonth(String settleDate, String rangeTableName); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam); - - List getCuRegionAssessVoS(List cuRegionAssessExtList); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java index 98b07785..d0813914 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java @@ -1,79 +1,14 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAssessmentType; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.bonus.detail.mapper.CuMemberAssessDetailMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - /** - *

* 考核业绩变化明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 */ @Service public class CuMemberAssessDetailServiceImpl extends ServiceImpl implements ICuMemberAssessDetailService { - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - - @Override - public void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.deleteCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate) { - baseMapper.insertCuMemberAssesDetailByOrder(tableName, period, startDate, endDate); - } - - @Override - public void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList) { - List purchaseMemberList = new ArrayList<>(); - List shareMemberList = new ArrayList<>(); - newCuMemberSettleExtList.forEach(cuMemberSettleExt -> { - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == cuMemberSettleExt.getAssessType()) { - purchaseMemberList.add(cuMemberSettleExt); - } else { - shareMemberList.add(cuMemberSettleExt); - } - }); - if (purchaseMemberList.size() > 0) { - List> purchaseHandleCutList = cuMemberBonusSettle.handleCutList(purchaseMemberList); - purchaseHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.REPURCHASE_ASSESS.getValue()) ); - } - if (shareMemberList.size() > 0) { - List> shareHandleCutList = cuMemberBonusSettle.handleCutList(shareMemberList); - shareHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.SHARE_ASSESS.getValue())); - } - } - - @Override - public void updateCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.updateCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void deleteCuMemberAssessDetailByList(List revokeDetailList) { - List> handleCutList = cuMemberBonusSettle.handleCutList(revokeDetailList, - MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - baseMapper.updateCuMemberAssessDetailByRevoke(list); - }); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index 55d7de87..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.service.ICuMemberAssessExemptService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.bonus.detail.mapper.CuMemberAssessExemptMapper; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java index a3821b57..978e073b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java @@ -1,21 +1,10 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.bonus.detail.mapper.CuMemberAssessMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; /** * 会员信息-会员考核记录 服务实现类 @@ -23,161 +12,4 @@ import java.util.*; @Service public class CuMemberAssessServiceImpl extends ServiceImpl implements ICuMemberAssessService { - @Autowired - private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; - @Autowired - private ICuMemberAssessDetailService iCuMemberAssessDetailService; - - /** - * 复购考核每月第一次考核调用此方法 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void calculationCuMemberAssess(Date currentDate) { - // 查询当前时间的第一天跟最后一天 - // 需要验证考核国家是否有复购考核 分红考核 - // 考核日期不能跨越考核,只能当月考核,当月考核上月 - if (DateUtils.currentDay(currentDate) == 1) { - String currentMonthFirstDate = DateUtils.currentMonthFirstDateStr(currentDate); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - String currentTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(currentMonthFirstDate); - // 清空数据 根据期数清空cu_member_assess cu_member_assess_detail表数据 - initCurrentAssess(currentDate, currentTableName, currentPeriod); - // 初始化复购考核的上月结余 - initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.REPURCHASE_ASSESS.getValue()); - // 初始化分红考核的上月结余 -// initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.SHARE_ASSESS.getValue()); - // 更新当月结余 结余会同时更新复购跟分红,只需要更新一次 - // 1 有免考状态的 本月使用是 0,考核状态是免考通过,免考将所有的值更改一下期末 期末= 期初+本月 - // 注意 不修改考核状态为通过的值,可能存在之前考核通过,又手动免考的人 - baseMapper.updateAssessPeriodExemptBalanceByUsed(currentTableName, currentPeriod); - // 2 需要扣除通过的,需要记录流水 - // 记录流水,新增或修改 - iCuMemberAssessDetailService.updateCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.updateAssessPeriodCheckBalanceByUsed(currentTableName, currentPeriod); - } - } - - /** - * 奖金计算时重算考核 (复购考核、分红考核),只重算免考的、撤单的 - * - * @param currentDate 考核时间 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void retryCalculationAssess(Date currentDate, Boolean flag) { -// String beforeDateStr = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, currentDate); -// Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDateStr).getPkId(); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)).getPkId(); -// String beforeTableName = TableNameConstants.CU_MEMBER_SETTLE + beforePeriod; -//// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 -// String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); -// String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); -// Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); -// // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); -// // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; -// // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, -// // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -//// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 -// // 所有的海粉会员设置复购考核失败,存在任意订单的海粉会员复购考核成功 -// // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); -// baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); -// // 奖金重算时更新结算表,flag=true代表奖金重算时,重算考核需要更新网体 flag=false 代表重算考核 - if (flag) { - // 2024-09-09 所有人全部免考通过,之后的当月免考通过 - if (DateUtils.compareDateBefore(currentDate, DateUtils.parseStringToDate("2024-10-01"))) { - baseMapper.updateAllCuMemberSettleToRepExempt(settleTableName); - } else { - baseMapper.updateCuMemberSettleToRepExempt(settleTableName, startDate, endDate, startPeriod, endPeriod); - } - } - } - - private void initCurrentAssess(Date currentDate, String currentTableName, Integer currentPeriod) { - // 获取上月最后一天 - String beforeLastDate = DateUtils.beforeMonthLastDateStr(currentDate); - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeLastDate); - int period = cuMemberSettlePeriod.getPkId(); - String sourceTable = TableNameConstants.CU_MEMBER_SETTLE + period; - String rangeSourceTable = TableNameConstants.CU_MEMBER_RANGE + period; - // 清空子表、主表数据 - iCuMemberAssessDetailService.deleteCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.deleteCuMemberAssessByPeriod(currentTableName, currentPeriod); - // 初始化复购考核 - String month = DateUtils.getMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)); - // 结算日期后一天 - baseMapper.insertRepCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - baseMapper.insertRepCuMemberRangeAssess(currentTableName, rangeSourceTable, currentPeriod, month); - // 初始化分红考核 -// baseMapper.insertShareCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - -// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 - String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); - String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); - Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); - // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); - // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; - if (DateUtils.currentDay(DateUtils.currentDate()) == 1) { - String currentMonthFirstDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS, currentDate)); - Integer yesterdayPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + yesterdayPeriod; - } - // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, - // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 - // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); - baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); - - // 初始化订单数据,将当月新增加入数据库 - // 上月第一天,上月最后一天 - Date beforeFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - Date currentFirstDate = DateUtils.currentMonthFirstDate(currentDate); - iCuMemberAssessDetailService.insertCuMemberAssesDetailByOrder(currentTableName, currentPeriod, beforeFirstDate, currentFirstDate); - } - - /** - * 初始化期初数据,将上月结余作为本月期初,更新当月新增 - * - * @param currentDate 结算日期 - * @param currentTableName 当前月结算表 - * @param currentPeriod 当前结算期间 - * @param assessmentType 考核类型 0=复购考核 1=分红考核 - */ - private void initCurrentAssessByBeforeMonth(Date currentDate, String currentTableName, Integer currentPeriod, Integer assessmentType) { - List orderTypeList = new ArrayList<>(); - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == assessmentType) { - orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); - orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - } - // 更新考核值,期初是上月考核表的当月剩余业绩 - // 获取结算日月初第一天,获取期间 - // 获取结算日上月最后一天,获取期间 - Date beforeMonthFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - String beforeMonthFirstDateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeMonthFirstDate); - Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeMonthFirstDateStr).getPkId(); - String beforeTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(beforeMonthFirstDateStr); - Date currentMonthFirstDate = DateUtils.currentMonthFirstDate(currentDate); - // 初始化复购考核的上月结余 // 更新当月结余 - baseMapper.updateAssessPeriodBeginByBeforeMonth(beforeTableName, currentTableName, beforePeriod, currentPeriod, assessmentType); - // 更新当月新增 - baseMapper.updateAssessPeriodAddBySaOrder(currentTableName, currentPeriod, assessmentType, - beforeMonthFirstDate, currentMonthFirstDate, orderTypeList); - } - - @Override - public List queryCuMemberAssTotal(String startDate, Integer pkCountry) { - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(startDate).getPkId(); - String tableTable = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(startDate); - return baseMapper.queryCuMemberAssTotal(tableTable, period, pkCountry); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java deleted file mode 100644 index 34cfd152..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuMemberGradeMapper; -import com.hzs.bonus.detail.service.ICuMemberGradeService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务实现类 - */ -@Service -public class CuMemberGradeServiceImpl extends ServiceImpl implements ICuMemberGradeService { - - @Override - public List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName) { - // 更新奖衔,回退等级 - baseMapper.deleteCuMemberGrade(period); - baseMapper.updateCuMemberGrade(rangeTableName, period); - return baseMapper.queryCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeSecond(String secondRangeTableName, Integer period) { - baseMapper.updateCuMemberGradeSecond(secondRangeTableName, period); - } - - @Override - public List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList) { - return baseMapper.queryCuMemberGradeByList(period, memberRetailRangeExtList); - } - - @Override - public void updateCuMemberGrade(String rangeTableName, Long pkOrder) { - baseMapper.updateCuMemberGradeLevel(rangeTableName, pkOrder); - } - - @Override - public CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder) { - return baseMapper.getMemberLevel(pkMember, pkOrder); - } - - @Override - public void insertCuMemberGrade(List cuMemberGradeList) { - saveBatch(cuMemberGradeList); - } - - @Override - public void deleteCuMemberGrade(List cuMemberGradeList, Integer period) { - baseMapper.deleteCuMemberGradeByList(cuMemberGradeList, period); - } - - @Override - public List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period) { - return baseMapper.queryCuMemberGrade(cuMemberRetailRangeExtList, period); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java deleted file mode 100644 index 89306255..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuRegionAssessDetailMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务实现类 - */ -@Service -public class CuRegionAssessDetailServiceImpl extends ServiceImpl implements ICuRegionAssessDetailService { - - @Override - public void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod) { - baseMapper.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - } - - @Override - public void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate) { - baseMapper.updateAssessRegionDetailByDate(assessStartDate, assessEndDate); - } - - @Override - public List batchQueryCuRegionAssessDetailSeq(Integer rowNum) { - return baseMapper.batchQueryCuRegionAssessDetailSeq(rowNum); - } - - @Override - public void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList) { - baseMapper.batchInsertCuRegionAssessDetail(cuRegionAssessDetailList); - } - - @Override - public void assessCuRegionAssessDetail(String rangeTableName, Date assessDate) { - // 处理考核明细的汇总值 - baseMapper.mergeCuRegionAssessDetailTeamPv(rangeTableName, assessDate); - // 处理考核明细的小区 - baseMapper.mergeCuRegionAssessDetailSmallAreaPv(rangeTableName, assessDate); - // 所有考核先变为考核失败 - baseMapper.updateCuRegionAssessDetailInit(assessDate); - // 验证汇总业绩和小区业绩是否满足条件,汇总业绩满足30000,小区满足100000,变更为考核通过 - baseMapper.updateCuRegionAssessDetailByPv(assessDate); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java deleted file mode 100644 index 14885c12..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ /dev/null @@ -1,245 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; -import com.hzs.bonus.detail.mapper.CuRegionAssessMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import com.hzs.retail.member.IMemberRetailApi; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; - -/** - * 新零售会员区域考核 服务实现类 - */ -@Slf4j -@Service -public class CuRegionAssessServiceImpl extends ServiceImpl implements ICuRegionAssessService { - - @DubboReference - IMemberRetailApi iMemberRetailApi; - - @Autowired - private ICuRegionAssessDetailService iCuRegionAssessDetailService; - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - @Transactional(rollbackFor = Exception.class) - public void assessRegionByEveryMonth(String settleDate, String rangeTableName) { - // 每月1号进行考核,结算上月最后一期的时候进行区域达标考核 - Date assDate = DateUtils.parseStringToDate(settleDate); - Date assessDate = DateUtils.afterDate(1, ChronoUnit.DAYS, assDate); - - log.info("assDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assDate)); - log.info("assessDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assessDate)); - - if (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, assessDate).endsWith("01")) { - // 当月第一天 - Date startDate = DateUtils.currentMonthFirstDate(assDate); - - log.info("startDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, startDate)); - - // 清空 1 号到 今天 的考核数据 - iCuRegionAssessDetailService.updateAssessRegionDetailByDate(startDate, assessDate); - baseMapper.updateAssessRegionByDate(startDate, assessDate); - deleteAssessRegionByDate(assessDate, 1); - - // 生成6期待考核数据,查询上月的区域,第一次考核的时候,明细生成6期 - // 查询目前有效的区域配置 - List memberRetailRegionList = baseMapper.queryCuMemberRetailRegion(startDate, assessDate); - if (memberRetailRegionList.size() > 0) { - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) { - - if (null != cuMemberRetailRegion.getEffectiveEndDate()) { - // 设置过生效结束时间 - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(1, cuMemberRetailRegion.getEffectiveEndDate()))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - while (assessDate.compareTo(cuRegionAssess.getAssessEndDate()) <= 0) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(assessDate) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - - assessDate = DateUtils.afterMonthDate(1, assessDate); - } - } else { - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, assessDate)) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - } - - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate); - baseMapper.mergeCuRegionAssess(assessDate); - - // 取消区域列表 - List cancelRegionList = new ArrayList<>(); - // 开始考核,将 上月最后一天,奖衔、业绩同步到考核表中 - // 查询主表考核结束日期=考核日期的,这部分需要生成下6期,最后一期结算完,验证是否达标,达标后继续生成下一期,不达标取消区域 - // 查询考核结束日期次数不达标的区域,进行区域取消处理 - List cuRegionAssessList = queryCuRegionAssessByEndDate(assessDate); - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuRegionAssess cuRegionAssess : cuRegionAssessList) { - if (cuRegionAssess.getReachNum() < 3) { - cancelRegionList.add(cuRegionAssess.getPkRegion()); - continue; - } - Date nextAssessDate = DateUtils.afterMonthDate(1, assessDate); - deleteAssessRegionByDate(nextAssessDate, 2); - CuRegionAssess cuRegionAssess1 = CuRegionAssess.builder() - .pkMember(cuRegionAssess.getPkMember()) - .pkRegion(cuRegionAssess.getPkRegion()) - .assessPeriod(cuRegionAssess.getAssessPeriod() + 1) - .assessStartDate(DateUtils.currentMonthFirstDate(nextAssessDate)) - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, nextAssessDate))) - .source(cuRegionAssess.getSource()) - .build(); - cuRegionAssess1.setPkCountry(cuRegionAssess.getPkCountry()); - cuRegionAssess1.setPkCreator(MagicNumberConstants.PK_ADMIN); - regionAssessMap.put(cuRegionAssess1.getPkMember(), cuRegionAssess1); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, cuRegionAssess1.getAssessStartDate())) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuRegionAssess.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - // 查询到期日期的区域,验证近6个月的达标次数,不达标取消 -// validateHandAreaAssess(assessDate, startDate, cancelRegionList); - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - } - - private void saveCuRegionAssess(Map regionAssessMap, List regionAssessDetailList) { - List longs = baseMapper.batchQueryCuRegionAssessSeq(regionAssessMap.size()); - int i = 0; - List cuRegionAssessList = new ArrayList<>(); - for (Long pkMember : regionAssessMap.keySet()) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(pkMember); - cuRegionAssess.setPkId(longs.get(i)); - cuRegionAssessList.add(cuRegionAssess); - i++; - } - for (CuRegionAssessDetail cuRegionAssessDetail : regionAssessDetailList) { - if (regionAssessMap.containsKey(cuRegionAssessDetail.getPkRegionAssess())) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(cuRegionAssessDetail.getPkRegionAssess()); - cuRegionAssessDetail.setPkRegionAssess(cuRegionAssess.getPkId()); - } - } - // 主表 - List> lists = cuMemberBonusSettle.handleCutList(cuRegionAssessList); - lists.forEach(list -> baseMapper.batchInsertCuRegionAssess(list)); - - List idList = iCuRegionAssessDetailService.batchQueryCuRegionAssessDetailSeq(regionAssessDetailList.size()); - for (int j = 0; j < regionAssessDetailList.size(); j++) { - regionAssessDetailList.get(j).setPkId(idList.get(j)); - } - // 明细表 - List> detailList = cuMemberBonusSettle.handleCutList(regionAssessDetailList); - detailList.forEach(detail -> iCuRegionAssessDetailService.batchInsertCuRegionAssessDetail(detail)); - } - - List queryCuRegionAssessByEndDate(Date settleDate) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuRegionAssess::getAssessEndDate, settleDate); - return baseMapper.selectList(queryWrapper); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod) { - // 7天内重算 - iCuRegionAssessDetailService.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - baseMapper.deleteAssessRegionByDate(assessStartDate, assessPeriod); - } - - @Override - public List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam) { - regionAssessParam.setAssessDate(DateUtils.currentMonthFirstDate()); - return baseMapper.queryRegionAssessByCondition(regionAssessParam); - } - - @Override - public List getCuRegionAssessVoS(List cuRegionAssessExtList) { - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - CuRegionAssessVO cuRegionAssessVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessVO.class); - List regionAssessDetailVoList = new ArrayList<>(); - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessDetailVO cuRegionAssessDetailVO = BeanUtil.copyProperties(cuRegionAssessDetail, CuRegionAssessDetailVO.class); - regionAssessDetailVoList.add(cuRegionAssessDetailVO); - } - cuRegionAssessVO.setRegionAssessDetailVoList(regionAssessDetailVoList); - cuRegionAssessVoList.add(cuRegionAssessVO); - } - return cuRegionAssessVoList; - } -} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index bda1f3cd..ca9ccfcb 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -237,22 +237,6 @@
- - merge into ${rangeTableName} a - using ( - select cm.pk_member, cr.county region_address - from ${rangeTableName} cm - inner join cu_member_retail_region cr - on cr.pk_member = cm.pk_member - and cr.effective = 0 - and cr.del_flag = 0 - where cr.creation_time < #{settleDate, jdbcType=DATE} - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.region_address = b.region_address - - - - - - - - - - - - - select cm.* - from cu_member cm - where cm.del_flag = 0 - - and cm.member_code = #{memberCode} - - - and cm.pk_id = #{pkMember} - - - - merge into cu_member a @@ -259,24 +213,6 @@ ) - - - merge into cu_member a - using ( - select pk_member, max(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, - #{item.newLevel} pk_grade - from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - merge into cu_member a using ( @@ -304,53 +240,4 @@ a.modified_time = sysdate - - merge into cu_member a - using ( - select pk_member, min(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, #{item.newLevel} pk_grade from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - merge into cu_member a - using ( - select cm.pk_id, m.new_level pk_grade - from cu_member cm - inner join( - select a.* - from cu_member_level a - inner join ( - select pk_member, max(pk_id) pk_id - from cu_member_level - where del_flag = 0 - and up_type = 4 - and upgrade_time >= #{startDate,jdbcType=DATE} - and upgrade_time < #{endDate,jdbcType=DATE} - group by pk_member) b - on a.pk_id = b.pk_id) m - on cm.pk_id = m.pk_member - where cm.pk_settle_grade < m.new_level - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml index 2069a109..7297c2e7 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml @@ -2,270 +2,5 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_bonus_coach(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,current_generation,coach_generation,coach_no_capping, - coach_capping,coach_normal_half,coach_normal_real,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.currentGeneration},#{item.coachGeneration}, - #{item.coachNoCapping},#{item.coachCapping},#{item.coachNormalHalf},#{item.coachNormalReal}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - delete - from CU_MEMBER_BONUS_COACH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} - and grant_status <= 2) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml index db88bc0e..65ddb002 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml @@ -2,278 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_bonus_expand(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,current_touch,expand_touch,add_touch,expand_no_capping, - expand_capping,expand_normal_half,expand_normal_real,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.currentTouch},#{item.expandTouch},#{item.addTouch,jdbcType=NUMERIC}, - #{item.expandNoCapping},#{item.expandCapping},#{item.expandNormalHalf},#{item.expandNormalReal}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - - delete - from CU_MEMBER_BONUS_EXPAND - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} and grant_status <= 2) - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml index 92caff3f..ba93896e 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml @@ -159,133 +159,4 @@ order by b.period,b.pk_bonus_items,b.real_income desc - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml index a261fa85..f875e1ec 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml @@ -2,56 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml index 690f8b9d..a38b4380 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml @@ -2,47 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - merge into cu_member_share_detail a - using( - - select #{item.pkAwards} pk_awards,#{item.pkShareBonus} pk_share_bonus,#{item.promoteTotal} promote_total,#{item.reachTotal} reach_total, - #{item.expectShareIncome} expect_share_income,#{item.expectShareSubtotal} expect_share_subtotal, - #{item.realShareIncome} real_share_income,#{item.realShareSubtotal} real_share_subtotal, - #{item.creationTime, jdbcType=TIMESTAMP} creation_time,#{item.pkCountry} pk_country,#{item.pkCreator,jdbcType=BIGINT} pk_creator, - #{item.modifiedTime, jdbcType=TIMESTAMP} modified_time,#{item.pkModified,jdbcType=BIGINT} pk_modified from dual - - ) b - on (a.pk_share_bonus=b.pk_share_bonus and a.pk_awards=b.pk_awards) - WHEN NOT MATCHED THEN - insert(pk_awards,pk_share_bonus, promote_total, reach_total, expect_share_income, expect_share_subtotal, real_share_income, - real_share_subtotal,creation_time,pk_country,pk_creator) - values - (b.pk_awards,b.pk_share_bonus,b.promote_total,b.reach_total, b.expect_share_income, b.expect_share_subtotal, b.real_share_income, - b.real_share_subtotal,b.creation_time,b.pk_country,b.pk_creator) - when matched then - update set a.promote_total=b.promote_total,a.reach_total=b.reach_total,a.expect_share_income=b.expect_share_income, - a.expect_share_subtotal=b.expect_share_subtotal,a.real_share_income=b.real_share_income, - a.real_share_subtotal=b.real_share_subtotal,a.modified_time=b.modified_time,a.pk_modified=b.pk_modified - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml index 6bf61715..20c9ff57 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml @@ -2,114 +2,4 @@ - - - - - - - - - - - - - - - - - - merge into cu_member_assess_detail a - using (select ca.pk_id,ca.pk_member,(case when ca.assess_type=0 then 1 else 3 end) change_type, - ca.assess_target trade_achieve,ca.pk_creator,ca.pk_country from ${tableName} ca - where ca.assess_status=2 and ca.period = #{period} and pk_member in - - #{item.pkMember} - - and assess_type = #{assessType} - and ca.assess_target <= ca.month_balance+ca.month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type=b.change_type) - when not matched then - insert (pk_assess,pk_member,change_type,trade_achieve, pk_creator,pk_country) - values(b.pk_id,b.pk_member,b.change_type,b.trade_achieve, b.pk_creator,b.pk_country) - - - - insert into cu_member_assess_detail (pk_assess, pk_member, PK_ORDER, change_type, trade_achieve, TRADE_TIME, pk_creator, pk_country) - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 0 CHANGE_TYPE, - order_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 0) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type in (3, 12, 14, 22, 26, 31) - and so.order_achieve > 0 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - union - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 2 CHANGE_TYPE, - order_ass_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 1) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type = 13 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - - - - merge into cu_member_assess_detail a - using (select pk_id, - pk_member, - (case when assess_type = 0 then 1 else 3 end) change_type, - assess_target trade_achieve, - pk_creator, - pk_country - from ${tableName} - where assess_status = 2 - and period = #{period} - and assess_target <= month_balance + month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type = b.change_type) - when matched then - update set a.trade_achieve = b.trade_achieve - when not matched then - insert (pk_assess, pk_member, change_type, trade_achieve, pk_creator, pk_country) - values (b.pk_id, b.pk_member, b.change_type, b.trade_achieve, b.pk_creator, b.pk_country) - - - - merge into cu_member_assess_detail a - using( - - select #{item.changeType} change_type,#{item.pkMember} pk_member,#{item.pkAssess} pk_assess from dual - - )b on (a.pk_assess=b.pk_assess and a.pk_member=b.pk_member and a.change_type=b.change_type) - when matched then - update set a.del_flag=1 - - - - DELETE - FROM cu_member_assess_detail - WHERE pk_assess IN ( - SELECT pk_id - FROM ${tableName} - WHERE period = #{period}) - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 5ab19c39..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml index fd9ea959..472939bf 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml @@ -2,189 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - pk_id NUMBER(20) primary key, - pk_member NUMBER(20) not null, - period NUMBER(6) not null, - settle_month VARCHAR2(12) not null, - assess_type NUMBER(2) not null, - pk_awards NUMBER(6) not null, - assess_target NUMBER(17,6) default 0 not null, - is_examine NUMBER(1) default 1 not null, - assess_status NUMBER(2) not null, - month_balance NUMBER(17,6) default 0 not null, - month_add NUMBER(17,6) default 0 not null, - cur_month_add number(17,6) default 0 not null, - month_used NUMBER(17,6) default 0 not null, - month_surplus NUMBER(17,6) default 0 not null, - del_flag NUMBER(1) default 0 not null, - pk_country NUMBER(4) not null, - pk_creator NUMBER(20) not null, - creation_time DATE default sysdate not null, - modified_time DATE, - pk_modified NUMBER(20) - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_awards b - on ct.pk_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_range_awards pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_range_awards b - on ct.pk_range_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using (select pk_member,assess_type,month_surplus from ${beforeTableName} cs - inner join cu_member cm - on cs.pk_member=cm.pk_id and cm.del_flag=0 - where period = #{sourcePeriod} and assess_type = #{assessType} and cm.system_type=0) b - on (a.pk_member = b.pk_member and a.assess_type = b.assess_type) - when matched then - update set a.month_balance = b.month_surplus where a.del_flag= 0 and a.period= #{period} - - - merge into ${tableName} a - using (select pk_member,#{period} period,#{assessType} assess_type,sum(order_achieve) order_achieve from( - select pk_member,(case when #{assessType} = 0 then order_achieve else order_ass_achieve end) order_achieve from sa_order - where del_flag = 0 and order_status = 1 and order_type in - - #{item} - - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - ) - group by pk_member - ) b - on (a.pk_member = b.pk_member and a.period= b.period and a.assess_type= b.assess_type) - when matched then - update set a.MONTH_ADD=b.order_achieve - - - - update ${tableName} set month_surplus = month_balance+month_add - where del_flag= 0 and period = #{period} - - - - update ${tableName} set assess_status = 0, month_used = assess_target, month_surplus = month_balance+month_add-assess_target - where del_flag= 0 and assess_status=2 and period = #{period} and assess_target <= month_balance+month_add - - - - merge into ${tableName} a - using ( - select distinct pk_member,#{period} period,0 assess_type from( - select pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - union - select pk_member from cu_member_awards - where del_flag=0 and purchase_status= 0 and - period >= #{startPeriod} and period < #{endPeriod} - union - select pk_member from ${settleTableName} ct - inner join bd_awards ba - on ct.pk_awards = ba.pk_id - where ct.purchase_status=0 and ba.purchase_check >0) - ) b - on (a.pk_member = b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - when matched then - update set a.is_examine=0 - - - - merge into ${settleTableName} a - using ( select distinct pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.purchase_status=0 - - - - update ${settleTableName} set purchase_status=0 - - - - delete from ${tableName} where period = #{period} and del_flag=0 - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml deleted file mode 100644 index 5fce0844..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - merge into ${rangeTableName} a - using ( - select a.pk_member, max(a.new_level) pk_grade - from cu_member_grade a - inner join( - select pk_member, max(nvl(modified_time, creation_time)) creation_time - from cu_member_grade - where period = #{period} - and del_flag = 0 - and up_type = 2 - group by pk_member) b - on a.pk_member = b.pk_member and nvl(a.modified_time, a.creation_time) = b.creation_time - group by a.pk_member - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - merge into ${secondRangeTableName} a - using ( - select cs.pk_member, b.pk_grade - from ${secondRangeTableName} cs - inner join ( - select a.pk_member, max(a.new_level) pk_grade - from cu_member_grade a - inner join ( - select pk_member, max(nvl(modified_time, creation_time)) creation_time - from cu_member_grade - where period <= #{period} - and del_flag = 0 - and up_type = 2 - group by pk_member - ) b on a.pk_member = b.pk_member and nvl(a.modified_time, a.creation_time) = b.creation_time - group by a.pk_member - ) b on cs.pk_member = b.pk_member - where cs.pk_grade < b.pk_grade - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - merge into ${rangeTableName} a - using ( - select pk_member, max(new_level) pk_grade - from cu_member_level - where del_flag = 0 and up_type = 4 - - and pk_order = #{pkOrder} - - group by pk_member - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - - - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - and pk_id in - - #{item.pkId} - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml deleted file mode 100644 index bfebe81c..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess_detail ( - pk_id, pk_member, pk_region_assess, assess_date, - pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.pkRegionAssess}, #{item.assessDate}, - #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into cu_region_assess_detail a - using ( - select cd.pk_id, - cr.pk_member, - cr.pk_awards, - (cr.month_consume_pv + cr.team_month_pv) team_month_pv - from cu_region_assess_detail cd - inner join ${rangeTableName} cr - on cd.pk_member = cr.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_awards = b.pk_awards, a.team_month_pv = b.team_month_pv - WHERE a.pk_awards != b.pk_awards - OR a.team_month_pv != b.team_month_pv - - - - merge into cu_region_assess_detail a - using ( - select pk_id, max(big_area_pv) big_area_pv - from ( - select cd.pk_id, b.* - from cu_region_assess_detail cd - inner join ( - select pk_parent pk_member, (month_consume_pv + team_month_pv) big_area_pv - from ${rangeTableName} - union - select pk_member, month_consume_pv big_area_pv - from ${rangeTableName} - ) b - on cd.pk_member = b.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) - group by pk_id - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.small_area_pv = a.team_month_pv - b.big_area_pv - - - - update cu_region_assess_detail - set assess_status = 2 - where del_flag = 0 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set assess_status = 0 - where del_flag = 0 - and team_month_pv >= 300000 - and small_area_pv >= 100000 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set del_flag = 1, - modified_time = sysdate - where pk_region_assess in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate, jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate, jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date != #{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess_detail - where del_flag = 0 and - pk_region_assess in ( - select pk_id from cu_region_assess - where del_flag = 0 - and assess_start_date = #{assessStartDate, jdbcType=DATE} - - and assess_period = #{assessPeriod} - and assess_period >= #{assessPeriod} - - ) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml deleted file mode 100644 index 740c60cc..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess ( - pk_id, pk_member, assess_period, pk_region, - assess_start_date, assess_end_date, - source, pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.assessPeriod}, #{item.pkRegion}, - #{item.assessStartDate}, #{item.assessEndDate}, - #{item.source}, #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into CU_REGION_ASSESS a - using ( - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join cu_member_retail_region cmrr - on cmrr.pk_id = ca.pk_region - where cd.ASSESS_STATUS = 0 - and cd.del_flag = 0 - and ca.del_flag = 0 - and ca.assess_start_date <= #{assessDate,jdbcType=DATE} - and ca.assess_end_date >= #{assessDate,jdbcType=DATE} - and cmrr.del_flag = 0 - and cmrr.effective_end_date is null - group by cd.pk_region_assess - union - - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join CU_MEMBER_RETAIL_REGION cmrr - on cmrr.pk_id = ca.pk_region - where cd.del_flag = 0 - and ca.del_flag = 0 - and cmrr.del_flag = 0 - and cmrr.effective_end_date is not null - and cd.assess_date > ADD_MONTHS(cmrr.effective_end_date, -6) - group by cd.pk_region_assess - ) b - on (a.pk_id = b.pk_region_assess) - when matched then - update set a.REACH_NUM = b.REACH_NUM - - - - update cu_region_assess - set del_flag = 1, - modified_time = sysdate - where pk_id in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate,jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate,jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date !=#{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess where del_flag=0 and - assess_start_date=#{assessStartDate, jdbcType=DATE} - - and assess_period=#{assessPeriod} - and assess_period >= #{assessPeriod} - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java index b4a7635a..3c196715 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java @@ -5,10 +5,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.EExpandCapMethod; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriodDetail; import com.hzs.common.domain.system.base.BdCountry; @@ -16,7 +14,6 @@ import com.hzs.member.achieve.mapper.CuMemberSettlePeriodMapper; import com.hzs.member.achieve.service.ICuMemberSettlePeriodDetailService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -38,8 +35,6 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } private CuMemberSettlePeriod getCuMemberSettlePeriod(String date) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java index fdce542f..11a85053 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java @@ -34,11 +34,6 @@ public class MemberTeamServiceProvider implements IMemberTeamServiceApi { return R.ok(iCuMemberTeamService.checkVertex(pkVertex)); } - @Override - public R getCuMemberTeamById(Long pkMember) { - return R.ok(iCuMemberTeamService.getCuMemberTeamById(pkMember)); - } - @Override public R> getTeamByVertexIds(List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java index c3e395b7..406b0508 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java @@ -16,11 +16,6 @@ public interface ICuMemberTeamService extends IService { **/ List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt); - /* - * 根据会员主键获得所属团队 - **/ - CuMemberTeamExt getCuMemberTeamById(Long pkMember); - /** * 根据国家查询隶属团队 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java index b45e29ac..8bfe6910 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java @@ -18,17 +18,6 @@ import java.util.List; @Service public class CuMemberTeamServiceImpl extends ServiceImpl implements ICuMemberTeamService { - @Override - public CuMemberTeamExt getCuMemberTeamById(Long pkMember) { - CuMemberTeamExt cuMemberTeamExtParam = new CuMemberTeamExt(); - cuMemberTeamExtParam.setPkMember(pkMember); - List cmtExtList = baseMapper.queryCuMemberTeam(cuMemberTeamExtParam); - if (null != cmtExtList && cmtExtList.size() > 0) { - return cmtExtList.get(0); - } - return null; - } - @Override public List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt) { return baseMapper.queryCuMemberTeam(cuMemberTeamExt); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index d6822234..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java index 85c3bd86..7b43d310 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java @@ -7,7 +7,6 @@ import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -17,13 +16,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper Integer selectByMaxApproveNumber(@Param("pkMember") Long pkMember, @Param("editType") Integer editType, @Param("approveStatus") Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(@Param("pkMember") Long pkMember, - @Param("editType") int editType, - @Param("approveStatus") int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -37,11 +29,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -82,28 +69,4 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(@Param("pkMember") Long pkMember); - - /** - * 查询会员办理业务日志表最新数据 - **/ - List selectTopDataList(@Param("pkMember") Long pkMember, - @Param("editTypeList") List editTypeList, - @Param("approveStatus") int approveStatus, - @Param("actEndDateStr") String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java index 0fc5091e..cdae0548 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java @@ -1,15 +1,12 @@ package com.hzs.member.detail.provider; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.member.detail.service.ICuMemberServiceLogService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; import java.util.List; @DubboService @@ -43,32 +40,4 @@ public class CuMemberServiceLogProvider implements ICuMemberServiceLogServiceApi return iCuMemberServiceLogService.updateByBusinessNo(memberLog); } - @Override - public R> selectCuMemberServiceLog(String businessNo) { - return iCuMemberServiceLogService.selectCuMemberServiceLog(businessNo); - } - - @Override - public R queryPolicy(Long pkMember) { - return R.ok(iCuMemberServiceLogService.queryPolicy(pkMember)); - } - - @Override - public R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus) { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(CuMemberServiceLog::getApproveStatus, approveStatus); - query.eq(CuMemberServiceLog::getEditType, approvalBusiness); - query.eq(CuMemberServiceLog::getPkMember, pkMember); - return R.ok(iCuMemberServiceLogService.count(query)); - } - - @Override - public R selectTopData(Long pkMember, int editType, int approveStatus) { - return R.ok(iCuMemberServiceLogService.selectTopData(pkMember, editType, approveStatus)); - } - - @Override - public R> listActivateLog(Date queryDate) { - return R.ok(iCuMemberServiceLogService.listActivateLog(queryDate)); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index c50a43f9..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java index f1ba72b5..e50b362d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java @@ -6,9 +6,7 @@ import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -25,11 +23,6 @@ public interface ICuMemberServiceLogService extends IService */ Integer selectByMaxApproveNumber(Long pkMember, Integer editType, Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(Long pkMember, int editType, int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -43,11 +36,6 @@ public interface ICuMemberServiceLogService extends IService */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -101,11 +89,6 @@ public interface ICuMemberServiceLogService extends IService */ List queryList(Integer editType, String memberCode, String memberName, Integer pkCountry, Integer approveStatus); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - /** * 查询展示列表 * @@ -113,25 +96,4 @@ public interface ICuMemberServiceLogService extends IService */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(Long pkMember); - - /** - * 查询会员多个办理业务的日志最新数据 - **/ - CuMemberServiceLogVO selectTopDataList(Long pkMember, List editType, int approveStatus, String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index b30e4634..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.member.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.member.detail.mapper.CuMemberAssessExemptMapper; -import com.hzs.member.detail.service.ICuMemberAssessExemptService; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java index e7aa36c4..bac50d7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java @@ -1,13 +1,11 @@ package com.hzs.member.detail.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.exception.ServiceException; @@ -19,15 +17,12 @@ import com.hzs.member.detail.mapper.CuMemberServiceLogMapper; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import com.hzs.member.self.vo.DomicileChangeVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; -import java.util.Comparator; import java.util.Date; import java.util.List; -import java.util.stream.Collectors; /** * 会员更名、密码修改表 服务实现类 @@ -40,11 +35,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectServiceLogList(CuMemberServiceLogVO cuMemberServiceLogVO) { return baseMapper.selectServiceLogList(cuMemberServiceLogVO); @@ -55,11 +45,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectOldValue(BusinessMemberVO businessMemberVO) { return baseMapper.selectOldValue(businessMemberVO); @@ -102,15 +87,15 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectByBusinessNo(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, businessNo); return R.ok(baseMapper.selectOne(queryWrapper)); } @Override public R updateByBusinessNo(CuMemberServiceLog memberLog) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("BUSINESS_NO", memberLog.getBusinessNo()); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(CuMemberServiceLog::getBusinessNo, memberLog.getBusinessNo()); return R.ok(baseMapper.update(memberLog, updateWrapper) == 1); } @@ -119,13 +104,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl> selectCuMemberServiceLog(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); - return R.ok(baseMapper.selectList(queryWrapper)); - } - @Override public List selectByList(CuMemberServiceLogExt memberServiceLogExt) { return baseMapper.selectByList(memberServiceLogExt); @@ -136,39 +114,4 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl editType, int approveStatus, String actEndDateStr) { - CuMemberServiceLogVO cmvo = new CuMemberServiceLogVO(); - List cmsList = baseMapper.selectTopDataList(pkMember, editType, approveStatus, actEndDateStr); - if (CollectionUtil.isNotEmpty(cmsList)) { - List sortedCmsList = cmsList.stream() - .sorted(Comparator.comparing(CuMemberServiceLog::getCreationTime)) - .collect(Collectors.toList()); - for (CuMemberServiceLog cms : sortedCmsList) { - cms.setPkMember(pkMember); - if (cms.getEditType() == EApprovalBusiness.CHANGE_NAME.getValue()) { - cmvo.setOldName(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.CHANGE_PHONE.getValue()) { - cmvo.setOldPhone(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.DOMICILE_CHANGE.getValue()) { - DomicileChangeVO oldValue = JSONUtil.toBean(cms.getOldValue(), DomicileChangeVO.class); - cmvo.setOldPhone(oldValue.getPhone()); - cmvo.setOldName(oldValue.getMemberName()); - } - } - } - return cmvo; - } - - @Override - public List listActivateLog(Date queryDate) { - return baseMapper.listActivateLog(queryDate); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java index f3118084..54d2abbc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java @@ -115,11 +115,6 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cancelRegion(List pkIdList) { - try { - iCuMemberRetailRegionService.cancelRegion(pkIdList); - return R.ok(); - } catch (Exception e) { - log.error("区域失效操作异常,pkIdList:{}", pkIdList, e); - return R.fail(e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java index 0a971b02..35181a72 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java @@ -50,13 +50,6 @@ public interface ICuMemberRetailRegionService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID - */ - void cancelRegion(List pkIdList); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java index 3dfa20ba..23c2f1ba 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java @@ -94,17 +94,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl pkIdList) { - this.update(Wrappers.lambdaUpdate() - .in(CuMemberRetailRegion::getPkId, pkIdList) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, MagicNumberConstants.PK_ADMIN) - .set(CuMemberRetailRegion::getModifiedTime, new Date()) - ); - } - @Override public int getOrderCount(Long pkMember, Integer systemType, List waresCodeList) { return baseMapper.getOrderCount(pkMember, systemType, waresCodeList); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 9255488c..00000000 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml index 0a6edc51..96593642 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml @@ -87,20 +87,6 @@ - - - - - - - - select * - from (select * - from CU_MEMBER_SERVICE_LOG - where EDIT_TYPE = 125 - and PK_MEMBER = #{pkMember} - and APPROVE_STATUS = 5 - order by CREATION_TIME desc) - where rownum = 1 - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index 8a47f7dc..a37880d4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -201,30 +201,4 @@ public class ApiRegSaOrderController extends ParentOrderController { return null; } - /** - * 校验会员等级, 计算会员等级 - * - * @param orderParam 参数 - */ - @PostMapping("/valid-mem-level") - public AjaxResult validateMemberLevel(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null || orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - if (orderParam.getOrderItemsParams() == null || - orderParam.getOrderItemsParams().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SHOPPING_CAR)); - } - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - convertShoppingCarToSku(orderParam); - - initPkCountry(orderParam); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (orderReturn.getIsEnough()) { - return AjaxResult.success(orderReturn); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); - } - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java index 7f33d91f..e0f4be75 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java @@ -47,7 +47,6 @@ import com.hzs.sale.product.IProductServiceApi; import com.hzs.sale.util.OrderUtil; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; @@ -97,8 +96,6 @@ public class SaOrderBusinessController extends BaseController { IServiceChargeServiceApi iServiceChargeServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; - @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; private ISaDeliverItemsService saDeliverItemsService; @@ -134,8 +131,6 @@ public class SaOrderBusinessController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { // 获取行政区划map Map areaMap = iAreaServiceApi.getAreaMap(pkCountry).getData(); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); for (OrderBusinessVO orderBusinessVO : list) { // 省市区处理 @@ -151,16 +146,9 @@ public class SaOrderBusinessController extends BaseController { orderBusinessVO.setCancelTime(DateUtils.getStartTime(orderBusinessVO.getPayTime())); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } - } else { - // 日结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } + // 日结 + if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { + orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); } } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java index f6a1ead5..1e3b73ec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java @@ -43,16 +43,6 @@ public interface SaOrderMapper extends BaseMapper { List queryRetailSaOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("orderCode") String orderCode); - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(@Param("deliverItemExtList") List deliverItemExtList); - /** * 查询总销售金额 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java index c368f5b8..8c5d8063 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java @@ -5,11 +5,7 @@ import lombok.Data; import java.util.List; /** - * @Description: 订单选择参数 - * @Author: jiang chao - * @Time: 2023/3/10 14:12 - * @Classname: OrderSelectParam - * @PackageName: com.hzs.sale.order.param + * 订单选择参数 */ @Data public class OrderSelectParam { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index fb6c5bd2..b3e21cac 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -5,10 +5,8 @@ import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.ISaOrderServiceApi; @@ -44,23 +42,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { return R.ok(iSaOrderService.queryRetailSaOrderByDay(startDate, endDate, orderCode)); } - @Override - public R querySaOrderExtByPkId(Long pkId) { - return R.ok(iSaOrderService.querySaOrderExtByPkId(pkId)); - } - - @Override - public R> querySaOrderByDeliverList(List deliverItemExtList) { - return R.ok(iSaOrderService.querySaOrderByDeliverList(deliverItemExtList)); - } - - @Override - public R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry) { - OrderSelectParam param = new OrderSelectParam(); - param.setPkOrderList(pkOrderList); - return R.ok(iSaOrderService.queryOrderSelect(param, pkCountry)); - } - @Override @Transactional(rollbackFor = Exception.class) public R regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -89,11 +70,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { iSaOrderService.closeOrder(); } - @Override - public R queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - return R.ok(iSaOrderService.queryOrderTotalAchieveByTime(startDate, endDate)); - } - @Override public R> querySeqList(Integer param) { return R.ok(iSaOrderService.querySeqList(param)); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index b244439a..447890d5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -12,7 +12,6 @@ import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.sale.index.vo.CuMemberMyMarketVO; import com.hzs.sale.order.param.*; import com.hzs.sale.order.vo.*; -import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import java.math.BigDecimal; @@ -57,11 +56,6 @@ public interface ISaOrderService extends IService { */ Integer querySaleOrderByPkMember(Integer pkCountry, Long pkMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 跟会员端进行交互的查询订单的方法 * @@ -76,13 +70,6 @@ public interface ISaOrderService extends IService { */ CuMember getCuMemberByKey(Long pkId); - /** - * 根据key值从redis中获取到会员信息 - * - * @param code 会员编号 - */ - CuMember getCuMemberByCode(String code); - /** * 查询会员账户状态,账户信息 * @@ -98,11 +85,6 @@ public interface ISaOrderService extends IService { */ CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); - /* - * 这是会员等级 - **/ - Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); - /** * 是否直接支付 * @@ -126,13 +108,6 @@ public interface ISaOrderService extends IService { */ void queryPostageByParam(OrderParam orderParam); - /** - * 计算会员等级 - * - * @param orderParam 商品列表、专区 - */ - OrderReturn computeLevel(OrderParam orderParam); - /** * 根据订单编号执行订单撤销操作 * @@ -147,14 +122,6 @@ public interface ISaOrderService extends IService { **/ void selfRevokeOrder(Long pkApprove, MyOrderVO myOrderVO); - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade); - /** * 生成空单注册 * @@ -170,16 +137,6 @@ public interface ISaOrderService extends IService { */ List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(List deliverItemExtList); - /** * 获取系统参数 * @@ -396,11 +353,6 @@ public interface ISaOrderService extends IService { */ List queryOrderType(Long memberId, Integer pkCountry); - /** - * 商品销量累计 - */ - void waresSalesAccrual(List waresNumberParamList); - /** * 会员首页我的市场 * @@ -410,11 +362,6 @@ public interface ISaOrderService extends IService { */ CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry); - /* - * 根据时间端查询订单累计业绩累计金额 - **/ - SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index ec0b2da2..8ca11306 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.json.JSONUtil; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.bonus.settle.IMemberSettleBonusApi; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.*; @@ -26,7 +25,6 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderChargeLog; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.util.TransactionUtils; @@ -46,7 +44,6 @@ import com.hzs.sale.order.vo.OrderCancelRegisterMemberVO; import com.hzs.sale.order.vo.ValidateCancelOrderVO; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.pub.dto.OrderDeductionDTO; -import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; @@ -109,8 +106,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { @DubboReference IAccountServiceApi iAccountServiceApi; @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; - @DubboReference IAreaServiceApi iAreaServiceApi; @@ -1081,19 +1076,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { SaOrder saOrder = saOrderList.get(0); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (!DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER); - } - } else { - // 日结 - if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); - } + // 日结 + if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { + return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); } // 涉及会员ID列表 @@ -1273,19 +1259,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue()) || orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_PART_ORDER.getValue())) { // 验证订单时间,只能撤销7天以内的支付订单 - // 周结只能撤销当前期间的订单,不能撤销上个期间的订单 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(orderCancelParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - if (DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } - } else { - Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); - if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } + Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); + if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { + validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); + return validateCancelOrderVO; } } // 验证订单国家跟会员国家是否一致,是否转换过结算国 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 744e5f9b..4cb02bd4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -64,13 +64,9 @@ import java.util.*; @Slf4j public class SaOrderHandle { - @DubboReference - IGradeServiceApi gradeServiceApi; @DubboReference ICurrencyServiceApi currencyServiceApi; @DubboReference - IMemberTeamServiceApi memberTeamServiceApi; - @DubboReference IAwardsServiceApi awardsServiceApi; @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @@ -143,87 +139,6 @@ public class SaOrderHandle { this.bdWaresSpecialPostageService = bdWaresSpecialPostageService; } - /** - * 生成用户 - * - * @param orderParam 需要保存的会员基本信息 - * @param centerMember 报单中心会员编号 - */ - CuMember packageSaveUser(OrderParam orderParam, CuMember centerMember) { - // 获取新的订单编号 - CuMember cuMember = CuMember.builder() - .memberCode(orderParam.getMemberCode()) - .memberName(orderParam.getMemberName()) - .pkSettleCountry(orderParam.getPkSettleCountry()) - .phone(orderParam.getPhone()) - .idCard(orderParam.getIdCard()) - .email(orderParam.getEmail()) - .loginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)) - .loginPassword(SysConstants.LOGIN_PASSWORD) - .payPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)) - .payPassword(SysConstants.PAY_PASSWORD) - .source(orderParam.getSource() == null ? EDataSource.PC.getValue() : orderParam.getSource()) - .pkParent(orderParam.getParentId()) - .accountStatus(EAccountStatus.NORMAL.getValue()) - .pkCenterCode(orderParam.getCenterCodeId()) - // 这个时候是待支付,等支付的时候变为支付,可以跟待支付公用 - .payStatus(EPayStatus.UNPAID.getValue()) - .category(ECategory.NORMAL.getValue()) - .orderSource(EOrderSource.SOLID.getValue()) - .consumeMoney(BigDecimal.ZERO) - .consumeAchieve(BigDecimal.ZERO) - .registerAuthority(ERegistrationAuthority.ORDINARY.getValue()) - .build(); - // 海粉没有安置人安置位置 - if (orderParam.getIsHaiFun()) { - cuMember.setCustomerType(ECustomerType.FANS.getValue()); - if (null != orderParam.getPlaceParentId()) { - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - } - if (null != orderParam.getPlaceDept()) { - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - } else { - cuMember.setCustomerType(ECustomerType.NORMAL.getValue()); - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - cuMember.setPkCountry(orderParam.getPkCountry()); - cuMember.setCreationTime(DateUtils.currentDateTime()); - cuMember.setPkCreator(centerMember.getPkId()); - if (centerMember.getPkTeamCode() == null) { - // 验证父级是不是团队 - CuMemberTeamExt memberTeamExt = memberTeamServiceApi.getCuMemberTeamById(centerMember.getPkId()).getData(); - if (memberTeamExt != null) { - cuMember.setPkTeamCode(memberTeamExt.getPkId()); - } - } else { - cuMember.setPkTeamCode(centerMember.getPkTeamCode()); - } - cuMember.setPkVertex(centerMember.getPkVertex()); - return cuMember; - } - - /** - * 封装订单 - * - * @param cuMember 会员 - * @param saOrder 订单主表 - * @param orderParam 订单商品信息 - */ - void packSaOrderItems(CuMember cuMember, SaOrderExt saOrder, OrderParam orderParam) { - orderParam.setPostage(BigDecimal.ZERO); - List saOrderItemsList; - try { - saOrderItemsList = getSaOrderItems(cuMember, saOrder, orderParam); - } catch (Exception e) { - e.printStackTrace(); - throw new RuntimeException(e); - } - saOrder.setPostage(orderParam.getPostage()); - saOrder.setOrderItemsList(saOrderItemsList); - } - /** * 查询邮费 * @@ -420,30 +335,6 @@ public class SaOrderHandle { } } - /** - * 计算订单价值(价格、业绩) - * - * @param orderParam 商品列表、专区 - * @return: void - * @Author: sui q - * @Date: 2022/9/24 14:38 - */ - SaOrder computeSaOrderAchieve(OrderParam orderParam) { - // 商品编号 + sku主键 + 数量 - List bdWaresDetailExtList = getWaresDetailExtList(orderParam, null); - SaOrder saOrder = SaOrder.builder().orderAmount(BigDecimal.ZERO) - .orderAchieve(BigDecimal.ZERO).build(); - bdWaresDetailExtList.forEach(waresDetailExt -> { - Integer num = waresDetailExt.getQuantity() * waresDetailExt.getWaresQuantity(); - BigDecimal amount = ComputeUtil.computeMultiply(waresDetailExt.getPrice(), num); - BigDecimal achievement = ComputeUtil.computeMultiply(waresDetailExt.getAchieve(), num); - saOrder.setOrderAmount(saOrder.getOrderAmount().add(amount)); - saOrder.setOrderAchieve(saOrder.getOrderAchieve().add(achievement)); - }); - // 获取订单业绩,根据订单业绩计算用户等级 - return saOrder; - } - /** * 将购买的商品明细封装为数据库中的商品明细 * @@ -631,9 +522,6 @@ public class SaOrderHandle { * 实际重量 = 长*宽*高/6000 利用重量计费公式计算实际邮费 * 判断重量计费跟体积计费哪个大使用哪个计费方法 * 陆运、空运、海运(国内默认陆运) - * @return: BigDecimal - * @Author: sui q - * @Date: 2022/9/20 20:48 */ private BigDecimal computePostage(BdPostageDetail postageDetail, BigDecimal weight) { BigDecimal postage = postageDetail.getFirstPostage(); @@ -662,61 +550,6 @@ public class SaOrderHandle { return postage; } - /** - * 简单的封装订单基本信息 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaveSaOrder(OrderParam orderParam, CuMember cuMember, String orderCode) { - SaOrderExt saOrderExt = new SaOrderExt(); - saOrderExt.setOrderCode(orderCode); - saOrderExt.setOrderAmount(BigDecimal.ZERO); - saOrderExt.setOrderAchieve(BigDecimal.ZERO); - saOrderExt.setOrderAssAchieve(BigDecimal.ZERO); - saOrderExt.setPkMember(cuMember.getPkId()); - saOrderExt.setOrderType(orderParam.getSpecialArea()); - saOrderExt.setPkReference(cuMember.getPkParent()); - saOrderExt.setPkPlacement(cuMember.getPkPlaceParent()); - saOrderExt.setRecName(orderParam.getRecName()); - saOrderExt.setRecPhone(orderParam.getRecPhone()); - saOrderExt.setRecProvince(orderParam.getRecProvince()); - if (CountryConstants.CHINA_COUNTRY.equals(cuMember.getPkSettleCountry()) || orderParam.getPkStorehouse() == null) { - if (orderParam.getRecProvince() != null) { - // 根据收货省获取仓库 - BdStorehouse bdStorehouse = currencyServiceApi.queryBdStorehouseByProvince(orderParam.getRecProvince()).getData(); - if (bdStorehouse != null) { - saOrderExt.setPkStorehouse(bdStorehouse.getPkId()); - } - } - } else { - saOrderExt.setPkStorehouse(orderParam.getPkStorehouse()); - } - saOrderExt.setRecCity(orderParam.getRecCity()); - saOrderExt.setRecCounty(orderParam.getRecCounty()); - saOrderExt.setRecAddress(orderParam.getRecAddress()); - saOrderExt.setRemark(orderParam.getRemark()); - saOrderExt.setTranType(orderParam.getTransType()); - saOrderExt.setDeliveryWay(orderParam.getDeliveryWay()); - // 如果发货方式为空,或者为0,则重置为快递发货 - if (null == saOrderExt.getDeliveryWay() || saOrderExt.getDeliveryWay().equals(0)) { - saOrderExt.setDeliveryWay(EDelivery.FAST_MAIL.getValue()); - } - // 订单状态先设置为待支付,支付的时候更新 - saOrderExt.setOrderStatus(EOrderStatus.WAIT_PAY.getValue()); - saOrderExt.setPkVertex(cuMember.getPkVertex()); - saOrderExt.setPkCreator(orderParam.getCenterCodeId()); - saOrderExt.setPkCountry(cuMember.getPkSettleCountry()); - saOrderExt.setPkMemberStore(orderParam.getPkMemberStore()); - if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - saOrderExt.setCreationTime(cuMember.getCreationTime()); - } else { - saOrderExt.setCreationTime(DateUtils.currentDateTime()); - } - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - /** * 获取订单子表 * @@ -770,45 +603,6 @@ public class SaOrderHandle { return saOrderItems; } - /** - * orderType 1 = 注册,注册不用找累计 2 升级需要 - * - * @param specialArea 专区 - * @param settleOrderAmount 订单金额 - * @param settleOrderPv 订单业绩 - * @param pkCountry 国家 - */ - GradeDTO getMemberGradeAndAwardByCountry(CuMember cuMember, Integer specialArea, BigDecimal settleOrderAmount, - BigDecimal settleOrderPv, Integer pkCountry, String upgradeWay) { - // 根据推荐人等级获取推荐等级 - List gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); - if (gradeList != null && gradeList.size() > 0) { - for (GradeDTO gradeDTO : gradeList) { - if (validateGradeByAchieve(settleOrderAmount, settleOrderPv, gradeDTO)) { - if (EUpgradeWay.COVER.getValue() != Integer.parseInt(upgradeWay)) { - gradeDTO.setStartValue(settleOrderPv); - } - return gradeDTO; - } - } - } - return null; - } - - private Boolean validateGradeByAchieve(BigDecimal settleOrderAmount, BigDecimal settleOrderPv, GradeDTO gradeDTO) { - BigDecimal compareValue; - if (null == gradeDTO.getCensusValue() || EStatisticalValue.ACHIEVEMENT.getValue() == gradeDTO.getCensusValue()) { - compareValue = settleOrderPv; - } else { - compareValue = settleOrderAmount; - } - BigDecimal startValue = gradeDTO.getStartValue(); - if (compareValue.compareTo(startValue) >= 0) { - return Boolean.TRUE; - } - return Boolean.FALSE; - } - /** * 订单支付按币种扣款 * @@ -898,14 +692,4 @@ public class SaOrderHandle { throw new RuntimeException(TransactionUtils.getContent(MemberMsgConstants.MEMBER_IS_OPERATION)); } - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return gradeServiceApi.queryGradeConfigByCondition(pkCountry, pkGrade).getData(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 223b158a..6fdfd766 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.crypto.SecureUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; @@ -28,7 +27,6 @@ import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.base.BdCountry; -import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.common.security.service.UserTokenService; @@ -58,10 +56,8 @@ import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CountryDTO; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAreaCurrencyServiceApi; -import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; -import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -88,10 +84,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IMemberServiceApi memberServiceApi; @DubboReference - IGradeServiceApi gradeServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference IMemberBankServiceApi memberBankServiceApi; @DubboReference IMemberAccountServiceApi memberAccountServiceApi; @@ -115,8 +107,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Autowired private IBdWaresService iBdWaresService; @Autowired - private IBdWaresExtendService iBdWaresExtendService; - @Autowired private SaOrderHandle saOrderHandle; @Autowired private ISaOrderItemsService saOrderItemsService; @@ -197,11 +187,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.selectCount(queryWrapper); } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - return memberServiceApi.queryCuMemberByPkMember(pkReference).getData(); - } - @Override public List querySaleOrderByCondition(OrderQueryParam orderQueryParam) { if (orderQueryParam.getEndTime() != null) { @@ -217,11 +202,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return memberServiceApi.getMemberById(pkId).getData(); } - @Override - public CuMember getCuMemberByCode(String code) { - return memberServiceApi.getMemberByCode(code).getData(); - } - @Override public List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { return memberAccountServiceApi.queryMemberAccountByCondition(cuMemberAccount).getData(); @@ -399,53 +379,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - @Override - public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { - GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt); - if (gradeDTO == null) { - return true; - } - - // 验证推荐等级,判断什么级别可以推荐什么级别 - //跨国报单不验证推荐等级权限 - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 判断推荐范围,验证该推荐人是否有推荐的权限 - CuMember parentCuMember = getCuMemberByKey(cuMember.getPkParent()); - - if (parentCuMember.getPkSettleCountry() != null && cuMember.getPkSettleCountry() != null && Objects.equals(parentCuMember.getPkSettleCountry(), cuMember.getPkSettleCountry())) { - GradeDTO validateGradeDTO = queryGradeConfigByCondition(parentCuMember.getPkSettleCountry(), parentCuMember.getPkSettleGrade()); - // 获取推荐人可以推荐的等级 - if (validateGradeDTO == null || validateGradeDTO.getBdGradeScopeExtList() == null || - validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> gradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { - return true; - } - } - } - - // 2023.11.29 奖衔处理提出,必有默认,防止出现奖衔为0的情况 - Integer pkAwards = cuMember.getPkAwards(); - cuMember.setPkRegisterGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGradeValue(gradeDTO.getGradeValue()); - // 判断奖衔,原会员有奖衔的话判断哪个大,使用大的 - if (pkAwards != null && gradeDTO.getGradeValue() != null) { - BdAwards bdAwards = awardsServiceApi.getAwardsOne(pkAwards).getData(); - BdAwards newAwards = awardsServiceApi.getAwardsOne(gradeDTO.getPkAwards()).getData(); - if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - } else { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - // 等级对应的结算值 - cuMember.setConsumeMoney(saOrderExt.getOrderAmount()); - cuMember.setConsumeAchieve(gradeDTO.getStartValue()); - if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < gradeDTO.getRegisterAuthority()) { - cuMember.setRegisterAuthority(gradeDTO.getRegisterAuthority()); - } - return false; - } - @Override public boolean getIsToBePayByOrderType(Integer pkCountry, Integer specialArea) { String confirmPay; @@ -502,57 +435,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderHandle.queryPostage(cuMember, orderParam); } - @Override - public OrderReturn computeLevel(OrderParam orderParam) { - // 新订单的 - SaOrder saOrder = saOrderHandle.computeSaOrderAchieve(orderParam); - OrderReturn orderReturn = OrderReturn.builder().isEnough(false).build(); - GradeDTO gradeDTO = calculateGradeDTO(orderParam.getSpecialArea(), orderParam.getPkSettleCountry(), - orderParam.getCenterCodeId(), saOrder); - // 注册订单、嗨粉订单直接查询出会员等级 - if (orderParam.getSpecialArea().equals(EOrderType.REGISTER_ORDER.getValue())) { - orderReturn.setIsEnough(Boolean.TRUE); - } - if (orderParam.getIsEnough() != null && orderParam.getIsEnough()) { - orderReturn.setIsEnough(Boolean.TRUE); - CuMember member = getCuMemberByKey(orderParam.getCenterCodeId()); - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(grade.getPkTransaction()); - return orderReturn; - } - // 验证等级是否满足条件 - if (!orderReturn.getIsEnough()) { - CuMember member; - if (null != orderParam.getUpgradeMemberCodeTmp()) { - member = getCuMemberByCode(orderParam.getUpgradeMemberCodeTmp()); - } else { - member = getCuMemberByKey(orderParam.getCenterCodeId()); - } - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - if (grade.getGradeValue() < gradeDTO.getGradeValue()) { - orderReturn.setIsEnough(Boolean.TRUE); - } else { - gradeDTO.setGradeName(null); - } - } - if (gradeDTO == null) { - gradeDTO = GradeDTO.builder().gradeName(null).build(); - orderReturn.setIsEnough(Boolean.FALSE); - } - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); - return orderReturn; - } - - private GradeDTO calculateGradeDTO(Integer specialArea, Integer pkCountry, Long pkMember, SaOrder saOrder) { - BigDecimal orderAmount = saOrder.getOrderAmount(); - BigDecimal orderAchieve = saOrder.getOrderAchieve(); - // 判断专区 升级需要判断哪个国家,每个国家升级方式不一样 - String upgradeWay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_WAY.getKey()); - // 会员等级为1的话 为一次性补差升级; - CuMember cuMember = getCuMemberByKey(pkMember); - return saOrderHandle.getMemberGradeAndAwardByCountry(cuMember, specialArea, orderAmount, orderAchieve, pkCountry, upgradeWay); - } - /** * 生成空单注册 * @@ -933,27 +815,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - - @Override - public GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return saOrderHandle.queryGradeConfigByCondition(pkCountry, pkGrade); - } - @Override public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); } - @Override - public SaOrder querySaOrderExtByPkId(Long pkId) { - return baseMapper.querySaOrderExtByPkId(pkId); - } - - @Override - public List querySaOrderByDeliverList(List deliverItemExtList) { - return baseMapper.querySaOrderByDeliverList(deliverItemExtList); - } - @Override public String querySystemConfigByKey(Integer pkCountry, String key) { return systemConfigServiceApi.getBonusSystemConfig(pkCountry, key).getData(); @@ -1126,21 +992,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderSelect(param, pkCountry); } - - private CuMember calculateHaFunMemberGrade(SaOrderExt saOrderExt, CuMember newCuMember) { - CuMember cuMember = null; - if (newCuMember != null) { - int oldLevel = newCuMember.getPkSettleGrade(); - // 封装等级,重新计算会员等级 - setLastCuMemberGrade(newCuMember, saOrderExt); - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - if (oldLevel < newCuMember.getPkSettleGrade()) { - cuMember = newCuMember; - } - } - return cuMember; - } - @Override public Boolean regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1232,15 +1083,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderType(memberId, pkCountry); } - @Override - public void waresSalesAccrual(List waresNumberParamList) { - try { - iBdWaresExtendService.updateWaresSalesAccrual(waresNumberParamList); - } catch (Exception e) { - e.printStackTrace(); - } - } - @Override public CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry) { //查询全国市场 @@ -1265,19 +1107,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return cuMemberMyMarketVO; } - @Override - public SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("sum(order_amount) orderAmount,sum(order_achieve) orderAchieve") - .eq(SaOrderFieldConstants.ORDER_STATUS, EOrderStatus.PAY.getValue()) - .in(SaOrderFieldConstants.ORDER_TYPE, orderTypeList) - .ge(SaOrderFieldConstants.PAY_TIME, startDate) - .lt(SaOrderFieldConstants.PAY_TIME, endDate); - return baseMapper.selectOne(queryWrapper); - } - @Override public List querySeqList(Integer param) { return baseMapper.querySeqList(param); diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml index 8d452a1c..53a3db0a 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml @@ -1240,52 +1240,6 @@ SELECT 1 FROM dual - - - select * - from (select cml.pk_member, cml.old_level, cml.new_level, cml.upgrade_time - from cu_member_level cml - where cml.del_flag = 0 - and cml.pk_member = #{pkMember} - - and cml.upgrade_time > #{queryTime} - - and cml.new_level in (select bg.pk_id - from bd_grade bg - where bg.del_flag = 0 - and bg.pk_country = #{pkCountry} - and bg.grade_value >= #{gradeValue}) - union - select cmg.pk_member, cmg.old_level, cmg.new_level, cmg.creation_time - from cu_member_grade cmg - where cmg.del_flag = 0 - and cmg.pk_member = #{pkMember} - - and cmg.creation_time > #{queryTime} - - and cmg.new_level in (select bg.pk_id - from bd_grade bg - where bg.del_flag = 0 - and bg.pk_country = #{pkCountry} - and bg.grade_value >= #{gradeValue}) - order by upgrade_time) t - where rownum = 1 - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml index db09db9c..d222c9c7 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml @@ -35,31 +35,6 @@ and bg.grade_value >= #{gradeValue} - - - insert into cu_member_retail_region cmrr ( diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 39c6739f..bf52a76b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,7 +6,6 @@ import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.exception.ServiceException; @@ -86,8 +85,7 @@ public class ApiRetailOrderController { try { // 购物车中获取商品信息,获取等级 - BdGrade bdGrade = iSaOrderService.calculateGrade(levelParam.getSpecialArea(), convertShoppingCarToSku(SecurityUtils.getUserId(), levelParam.getShopList()), - null, levelParam.getUpgradeMember(), SecurityUtils.getSystemType(), EYesNo.NO.getIntValue()); + BdGrade bdGrade = iSaOrderService.calculateGrade(); if (null != bdGrade) { orderLevelVO.setIsEnough(true); orderLevelVO.setPkGradeVal(bdGrade.getGradeName()); @@ -153,7 +151,7 @@ public class ApiRetailOrderController { postageParam.setPkCreator(SecurityUtils.getUserId()); if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { - // 注册、升级包邮 + // 注册包邮 return AjaxResult.success(RetailOrderPostageVO.builder() .postage(BigDecimal.ZERO) .build()); @@ -205,7 +203,7 @@ public class ApiRetailOrderController { // 获取等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -249,7 +247,7 @@ public class ApiRetailOrderController { // 等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -305,7 +303,7 @@ public class ApiRetailOrderController { } /** - * 确认订单(注册、升级之外的订单) + * 确认订单(注册之外的订单) * * @param orderParam 订单入参 * @param source 数据来源 @@ -339,7 +337,7 @@ public class ApiRetailOrderController { } /** - * 支付订单(注册、升级之外的订单) + * 支付订单(注册之外的订单) * * @param payParam 支付订单入参 * @return @@ -527,38 +525,21 @@ public class ApiRetailOrderController { * 校验注册权限 * * @param orderParam 订单入参 - * @param gradeList 等级列表 * @return */ - private String checkRegistrationPermission(RetailOrderRegisterParam orderParam, List gradeList) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 校验会员等级是否大于V0,不然不能进行注册会员 + private String checkRegistrationPermission(RetailOrderRegisterParam orderParam) { CuMember creatorMember = iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData(); if (null == creatorMember) { return "当前会员不存在"; } - // 校验推荐人等级是否为V0,如果是V0不能进行注册 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(creatorMember.getPkSettleGrade())).findFirst().get(); - if (EGrade.START_UP.getValue() == memberGrade.getGradeValue()) { - return "当前会员不能注册新会员"; - } orderParam.setCreatorMember(creatorMember); orderParam.setPkParent(orderParam.getPkCreator()); if (!creatorMember.getMemberCode().equals(orderParam.getParentCode())) { - CuMember parentMember = iMemberServiceApi.getRetailMember(null, orderParam.getParentCode()).getData(); if (null == parentMember) { return "推荐编号不存在"; } -// // 校验推荐人是否大于V0,不然不能当推荐人 -// BdGrade parentGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(parentMember.getPkSettleGrade())).findFirst().get(); -// if (EGrade.START_UP.getValue() == parentGrade.getGradeValue()) { -// return orderParam.getParentCode() + " 不能做为推荐人"; -// } // 校验推荐人是否在当前会员伞下 CuMember topMember = iMemberServiceApi.getRetailTopMember(parentMember.getPkId(), null, orderParam.getPkCreator(), null).getData(); @@ -567,7 +548,6 @@ public class ApiRetailOrderController { } orderParam.setPkParent(parentMember.getPkId()); } - return null; } @@ -606,13 +586,7 @@ public class ApiRetailOrderController { if (null == buyMember) { return "购买会员编号不存在,请重试"; } - if (ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { - // 判断购买会员是否是V0,V0不允许下升级、复购以外订单 - GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); - if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { - return "当前购买会员编号不允许下单"; - } - } + // TODO 必须在精品专区购买过商品才能在五折专区处理 return null; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 91b10693..bd76d6ef 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -192,8 +192,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 注册、升级订单,计算会员等级 - BdGrade newGrade = iSaOrderService.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(), gradeList, - cuMember, orderParam.getSystemType(), orderParam.getIsPay()); + BdGrade newGrade = iSaOrderService.calculateGrade(); if (null == newGrade) { throw new ServiceException("会员不满足升级条件"); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index 447890d5..c7610bbe 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -414,17 +414,10 @@ public interface ISaOrderService extends IService { CuMemberAccountExt queryRetailOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); /** - * 计算等级(根据盒数) + * 计算等级 * - * @param specialArea 商品专区 - * @param orderItemsParams 商品明细 - * @param gradeList 等级列表(可为空) - * @param updateGradeMember 升级会员信息(升级使用) - * @param systemType 系统类型 * @return 返回 null 则为不满足升级条件 */ - BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay); + BdGrade calculateGrade(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 6fdfd766..804ec55d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -58,6 +58,7 @@ import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAreaCurrencyServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; +import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -1416,55 +1417,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Override - public BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 当前产品盒数 - BigDecimal boxNum = BigDecimal.ZERO; - + public BdGrade calculateGrade() { + GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.MEMBER.getValue(), CountryConstants.CHINA_COUNTRY).getData(); // 返回等级 - BdGrade bdGrade = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == specialArea) { - // 注册专区直接算等级 - bdGrade = this.getGradeByBox(boxNum, gradeList, null); - } - return bdGrade; + return BeanUtil.copyProperties(gradeDTO, BdGrade.class); } - /** - * 根据盒数计算等级 - * - * @param boxTotal 总盒数 - * @param gradeList 等级列表(可为空) - * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 - * @return - */ - private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - if (null == memberGrade) { - // 注册处理 - // 去掉 V4,V5 升级盒数小于购买盒数的最大一个等级为注册等级 - return gradeList.stream() - .filter(tmpGrade -> tmpGrade.getGradeValue() != EGrade.VIP.getValue() && tmpGrade.getGradeValue() != EGrade.S_VIP.getValue() && tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0) - .max(Comparator.comparingInt(BdGrade::getGradeValue)).get(); - } else { - // 非注册处理 - // 查询等级比现在当前等级大的,然后倒序排序,再查询 购买盒数 <= 等级盒数 的第一个等级,就是当前升级的等级 - Optional gradeOptional = gradeList.stream() - // new 2025.06.25 V1-V3升级多送两级,需要支持送完还能买,此处暂时注释掉 -// .filter(tmpGrade -> tmpGrade.getGradeValue() > memberGrade.getGradeValue()) - .sorted(Comparator.comparingInt(BdGrade::getGradeValue).reversed()) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(BigDecimal.ZERO) > 0) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0).findFirst(); - return gradeOptional.orElse(memberGrade); - } - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java index db0e926b..0d5b9091 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java @@ -40,8 +40,4 @@ public class AwardsServiceProvider implements IAwardsServiceApi { return R.ok(countryAwardsMap); } - @Override - public R> queryByPkCountryAwards(Integer pkCountry) { - return R.ok(iBdAwardsService.queryByPkCountryAwards(pkCountry)); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java index d8019850..16060320 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java @@ -109,11 +109,6 @@ public class GradeServiceProvider implements IGradeServiceApi { return R.ok(gradeDTOList); } - @Override - public R> queryGrowUpFootmarkGrade(Integer pkCountry) { - return R.ok(iBdGradeService.queryGrowUpFootmarkGrade(pkCountry)); - } - @Override public R> findAll() { List gradeList = iBdGradeService.list(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java index 08a0fb90..f998af64 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java @@ -65,11 +65,4 @@ public interface IBdAwardsService extends IService { **/ Integer checkGradeAwards(Long pkRegisterGrade, Long pkSettleGrade, Long pkAwards); - /** - * 根据所属国家查询奖衔 - * - * @param pkCountry - * @return - */ - List queryByPkCountryAwards(Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java index 4d81279b..3f14503e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java @@ -73,13 +73,6 @@ public interface IBdGradeService extends IService { */ List selectGradeAll(Integer pkCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - List queryGrowUpFootmarkGrade(Integer pkCountry); - /** * 获取小于等于业绩最合适的等级 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java index 18f7154a..6ca3abe6 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java @@ -126,12 +126,4 @@ public class BdAwardsServiceImpl extends ServiceImpl i return baseMapper.checkGradeAwards(pkRegisterGrade, pkSettleGrade, pkAwards); } - @Override - public List queryByPkCountryAwards(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdAwards::getPkCountry, pkCountry); - queryWrapper.eq(BdAwards::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.orderByAsc(BdAwards::getAwardsValue); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java index d0b9ef05..c0dd09fc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java @@ -66,7 +66,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdGrade::getPkCountry, pkCountry); queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); queryWrapper.orderByDesc(BdGrade::getGradeValue); return baseMapper.selectList(queryWrapper); } @@ -208,16 +207,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl return baseMapper.selectList(queryWrapper); } - @Override - public List queryGrowUpFootmarkGrade(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdGrade::getPkCountry, pkCountry); - queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); - queryWrapper.orderByAsc(BdGrade::getGradeValue); - return baseMapper.selectList(queryWrapper); - } - @Override public BdGrade getLastGrade(BigDecimal achieve, Integer pkCountry) { return baseMapper.getLastGrade(achieve, pkCountry); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 3dbcedce..095fc008 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -90,11 +90,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 等级枚举枚举 - for (EGrade value : EGrade.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 直推配置取值枚举 for (ETakeValueType value : ETakeValueType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java index 788df2e6..d46c3528 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java @@ -10,76 +10,71 @@ import lombok.Getter; @Getter public enum EAwards { - /** - * -1=海粉 - */ - SEA_FLOUR(0, -1, "海粉", 1), - /** * 0=无 */ MEMBER(1, 0, "无", 0), /** - * 黄宝 + * V1 */ HEADER(2, 5, "一级", 0), /** - * 绿宝 + * V2 */ MANAGER(3, 10, "二级", 0), /** - * 蓝宝 + * V3 */ HIGH_MANAGER(4, 15, "三级", 0), /** - * 钻石 + * V4 */ SENIOR_MANAGER(5, 20, "四级", 0), /** - * 黄钻 + * V5 */ CHIEF(6, 25, "五级", 0), /** - * 绿钻 + * V6 */ HIGH_CHIEF(7, 30, "六级", 0), /** - * 星耀蓝钻 + * V7 */ SENIOR_CHIEF(8, 35, "七级", 0), /** - * 王者红钻 + * 董事 */ CHAIRMAN(9, 40, "八级", 0), /** - * 传奇紫钻 + * 大使 */ HONOR_CHAIRMAN(10, 45, "九级", 0), - /** - * 10 + * 皇冠大使 */ GLOBAL_CHAIRMAN(11, 50, "十级", 0), + /** * 11 */ - LEVEL_ELEVEN(12, 55, "十一级", 0), + LEVEL_ELEVEN(12, 55, "十一级", 1), /** * 12 */ - LEVEL_TWELVE(13, 60, "十二级", 0), + LEVEL_TWELVE(13, 60, "十二级", 1), /** * 13 */ - LEVEL_THIRTEEN(14, 65, "十三级", 0), + LEVEL_THIRTEEN(14, 65, "十三级", 1), /** * 14 */ - LEVEL_FOURTEEN(15, 70, "十四级", 0), + LEVEL_FOURTEEN(15, 70, "十四级", 1), /** * 15 */ - LEVEL_FIFTEEN(16, 75, "十五级", 0), + LEVEL_FIFTEEN(16, 75, "十五级", 1), ; @@ -101,28 +96,4 @@ public enum EAwards { */ private final int enable; - /** - * 根据枚举值获取等级枚举值(用于级差枚举值转换) - * - * @param value - * @return - */ - public static Integer getGradeValueByValue(int value) { - if (EGrade.START_UP.getValue() == value) { - return EAwards.MEMBER.getValue(); - } else if (EGrade.HAI_FAN.getValue() == value) { - return EAwards.HEADER.getValue(); - } else if (EGrade.YOU_KE.getValue() == value) { - return EAwards.MANAGER.getValue(); - } else if (EGrade.MAKER.getValue() == value) { - return EAwards.HIGH_MANAGER.getValue(); - } else if (EGrade.VIP.getValue() == value) { - return EAwards.SENIOR_MANAGER.getValue(); - } else if (EGrade.S_VIP.getValue() == value) { - return EAwards.CHIEF.getValue(); - } - return 0; - } - - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java index e1932b49..a6110dd8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.constant.MemberFrameworkConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -15,45 +14,20 @@ public enum EGrade { /** * -3=虚拟 */ - VIRTUALLY(-3, 0, "虚拟", 1, EnumsPrefixConstants.ENU_CAT + 3, MemberFrameworkConstants.xuni), + VIRTUALLY(-3, 0, "虚拟", 1, MemberFrameworkConstants.xuni), /** * 1=待激活 死点 撤单 */ - DEAD_POINT(-1, 0, "待激活", 1, EnumsPrefixConstants.ENU_CAT + 1, MemberFrameworkConstants.toBeActivated), + DEAD_POINT(-1, 0, "待激活", 1, MemberFrameworkConstants.toBeActivated), /** * 2=已注销 退单 */ - LOGGED_OUT(-2, 0, "已注销", 1, EnumsPrefixConstants.ENU_CAT + 2, MemberFrameworkConstants.LOG_OFF), + LOGGED_OUT(-2, 0, "已注销", 1, MemberFrameworkConstants.LOG_OFF), /** - * 顾客 + * 会员 */ - START_UP(1, 20, "V0", 0, EnumsPrefixConstants.GRADE + "20", MemberFrameworkConstants.START_UP), - - /** - * VIP - */ - HAI_FAN(2, 30, "V1", 0, EnumsPrefixConstants.GRADE + "30", MemberFrameworkConstants.Hi_Pink), - - /** - * SVIP - */ - YOU_KE(3, 40, "V2", 0, EnumsPrefixConstants.GRADE + "40", MemberFrameworkConstants.YOU_KE), - - /** - * 卓越 - */ - MAKER(4, 50, "V3", 0, EnumsPrefixConstants.GRADE + "50", MemberFrameworkConstants.MAKER), - - /** - * 首席 - */ - VIP(5, 60, "V4", 0, EnumsPrefixConstants.GRADE + "60", MemberFrameworkConstants.VIP), - - /** - * 合伙人 - */ - S_VIP(6, 70, "V5", 0, EnumsPrefixConstants.GRADE + "70", MemberFrameworkConstants.S_VIP), + MEMBER(2, 30, "V1", 0, MemberFrameworkConstants.Hi_Pink), ; @@ -65,7 +39,6 @@ public enum EGrade { * 实际值 */ private final int value; - /** * 显示标签 */ @@ -74,11 +47,6 @@ public enum EGrade { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; - /** * 头像地址 */ @@ -93,14 +61,4 @@ public enum EGrade { return null; } - - public static String getGradeLabel(int value) { - for (EGrade eGrade : EGrade.values()) { - if (value == eGrade.value) { - return eGrade.getLabel(); - } - } - return ""; - } - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index b76dcf34..e1d569e0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -36,13 +36,13 @@ public enum EOrderType { FICTITIOUS_ORDER(20, "虚拟订单", 1), /** - * 注册订单 + * 精品专区 */ - RETAIL_REGISTER(41, "注册订单", 0), + RETAIL_REGISTER(41, "精品专区", 0), /** - * 复购订单 + * 商城专区 */ - RETAIL_REPURCHASE(43, "复购订单", 0), + RETAIL_REPURCHASE(43, "商城专区", 0), /** * 重消订单 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 682946ce..c1afc9e4 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -31,13 +31,13 @@ public enum ESpecialArea { LIVE_BROADCAST(14, "直播专区", 1, 14, EMenuDetail.LIVE.getValue()), /** - * 会员专区(注册) + * 精品专区 */ - RETAIL_REGISTER(41, "注册专区", 0, 41, -1), + RETAIL_REGISTER(41, "精品专区", 0, 41, -1), /** - * 复购专区 + * 商城专区 */ - RETAIL_REPURCHASE(43, "复购专区", 0, 43, -1), + RETAIL_REPURCHASE(43, "商城专区", 0, 43, -1), /** * 重消专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java deleted file mode 100644 index 39e4f7ff..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.common.core.enums.retail; - -import com.hzs.common.core.enums.EGrade; -import lombok.AllArgsConstructor; -import lombok.Getter; - -import java.math.BigDecimal; - -/** - * 新零售商品等级价格枚举 - */ -@AllArgsConstructor -@Getter -public enum ERetailWaresPrice { - - /** - * V0(20) - */ - V0(EGrade.START_UP.getValue(), new BigDecimal("399")), - /** - * V1(30) - */ - V1(EGrade.HAI_FAN.getValue(), new BigDecimal("399")), - /** - * V2(40) - */ - V2(EGrade.YOU_KE.getValue(), new BigDecimal("399")), - /** - * V3(50) - */ - V3(EGrade.MAKER.getValue(), new BigDecimal("399")), - /** - * V4(60) - */ - V4(EGrade.VIP.getValue(), new BigDecimal("399")), - /** - * V5(70) - */ - V5(EGrade.S_VIP.getValue(), new BigDecimal("399")), - - ; - - /** - * 等级值(EGrade中的value) - */ - private final int value; - - /** - * 价格 - */ - private final BigDecimal price; - - /** - * 根据枚举值获取枚举 - * - * @param value 枚举值 - * @return - */ - public static ERetailWaresPrice getEnumByValue(int value) { - for (ERetailWaresPrice eRetailWaresPrice : ERetailWaresPrice.values()) { - if (eRetailWaresPrice.value == value) { - return eRetailWaresPrice; - } - } - return V0; - } - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java index f7b011b5..9f4a9e8f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java @@ -192,19 +192,5 @@ public class SaOrderExt extends SaOrder { */ private Integer updateFlag; - /** - * 最新等级 - */ - private BdGrade newGrade; - - /** - * 需要添加的升级记录列表 - */ - private List createLevelList; - /** - * 需要删除的升级记录列表 - */ - private List deleteLevelList; - } From 7301b0e5e08632d7ec44e8535288ca139ff089f6 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 15:35:45 +0800 Subject: [PATCH 143/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E4=B8=8D?= =?UTF-8?q?=E7=94=A8=E7=9A=84=E5=AE=9E=E4=BD=93=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/vo/CuRegionAssessDetailVO.java | 56 ------------ .../detail/vo/CuRegionAssessExcelVO.java | 87 ------------------- .../hzs/bonus/detail/vo/CuRegionAssessVO.java | 62 ------------- .../hzs/bonus/param/CuRegionAssessParam.java | 23 ----- .../bonus/risk/vo/MemberRiskControlVo.java | 19 +--- 5 files changed, 1 insertion(+), 246 deletions(-) delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java deleted file mode 100644 index ca3ce94e..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 考核区域明细 - * @author: sui q - * @time: 2025/1/16 11:32 - * @classname: CuRegionAssessDetailVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessDetailVO implements Serializable { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 考核日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessDate; - - /** - * 会员等级 - */ - private Integer pkAwards; - - /** - * 团队月消费pv - */ - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Transaction(transactionKey = EnumsPrefixConstants.ASSESS_STATUS) - private Integer assessStatus; - - private String assessStatusVal; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java deleted file mode 100644 index 73b3791c..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 导出excel - * @author: sui q - * @time: 2025/1/16 16:27 - * @classname: CuRegionAssessExcelVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessExcelVO implements Serializable { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 考核区域 省+市+县 - */ - @Excel(name = "考核区域") - private String assessAddress; - - /** - * 考核期 - */ - @Excel(name = "考核期间") - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @Excel(name = "开始日期", dateFormat = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @Excel(name = "结束日期", dateFormat = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - @Excel(name = "达标次数") - private Integer reachNum; - - /** - * 考核日期 - */ - @Excel(name = "考核日期", dateFormat = "yyyy-MM-dd") - private Date assessDate; - - /** - * 团队月消费pv - */ - @Excel(name = "团队业绩") - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - @Excel(name = "小区业绩") - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Excel(name = "考核状态", readConverterExp = "0=考核通过,1=免考通过,2=考核不通过,3=不考核") - private Integer assessStatus; - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java deleted file mode 100644 index f57b23ac..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * @description: 区域考核结果 - * @author: sui q - * @time: 2025/1/16 11:13 - * @classname: CuRegionAssessVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessVO implements Serializable { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 考核区域 省+市+县 - */ - private String assessAddress; - - /** - * 考核期 - */ - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - private Integer reachNum; - - @Transaction - private List regionAssessDetailVoList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java deleted file mode 100644 index 9ba93847..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - -/** - * 查询参数 - */ -@Data -public class CuRegionAssessParam implements Serializable { - - private Date assessDate; - - private Long pkMember; - - private Integer pkCountry; - - private String memberCode; - - private String memberName; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java index 96af2d88..bfb855a1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java @@ -1,32 +1,15 @@ -package com.hzs.bonus.risk.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/9 17:01 - * @Classname: MemberRiskControlVo - * @PackageName: com.hzs.bonus.risk.vo - */ +package com.hzs.bonus.risk.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.bonus.risk.vo - *@Author: yh - *@CreateTime: 2024-04-09 17:01 - *@Description: TODO - *@Version: 1.0 - */ @Data public class MemberRiskControlVo { - /** * 会员名称 */ From d2a8e919d4e686bd247c7559fc4ef88da085f3b0 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 11:00:11 +0800 Subject: [PATCH 144/362] =?UTF-8?q?##=20=E8=B0=83=E6=95=B4=E5=8E=BB?= =?UTF-8?q?=E9=99=A4=E9=83=A8=E5=88=86=E4=B8=8D=E9=9C=80=E8=A6=81=E5=86=85?= =?UTF-8?q?=E5=AE=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CuMemberBonusController.java | 2 +- .../impl/CuMemberBonusServiceImpl.java | 37 ++------ .../impl/CuMemberAssessServiceImpl.java | 3 - .../api/ApiCuMemberAchieveDisController.java | 2 - .../api/ApiCuMemberAssessController.java | 24 ++--- .../WaresSalesVolumeController.java | 38 +++----- .../report/report/vo/WaresSalesVolume.java | 2 +- .../controller/api/ApiOrderController.java | 8 +- .../api/ApiOthSaOrderController.java | 3 +- .../manager/SaOrderChargeLogController.java | 8 +- .../order/service/impl/SaOrderHandle.java | 3 +- .../service/impl/SaOrderServiceImpl.java | 19 +--- .../controller/api/ApiBdWaresController.java | 18 +--- .../controller/manage/BdWaresController.java | 4 +- .../impl/BdWaresSpecsSkuServiceImpl.java | 6 +- .../BdMemberSpecialCurrencyController.java | 10 +- .../enums/controller/EnumsController.java | 14 --- .../enums/controller/EnumsInitController.java | 10 -- .../common/core/constant/SysConstants.java | 8 +- .../com/hzs/common/core/enums/EOrderType.java | 93 +++++-------------- .../hzs/common/core/enums/ESpecialArea.java | 72 ++++---------- .../com/hzs/common/core/enums/ETradeType.java | 22 ++--- 22 files changed, 102 insertions(+), 304 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java index 7694c77c..0b5f95a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java @@ -220,7 +220,7 @@ public class CuMemberBonusController extends BaseController { // 获取需要翻译的枚举翻译 Map transactionLongMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD); for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) { - memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getEnumLabelByValue(memberBonusDetailSerVO.getOrderType())); + memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getLabelByValue(memberBonusDetailSerVO.getOrderType())); memberBonusDetailSerVO.setIncomeStatusVal(EBonusIncomeStatus.getEnumLabelByValue(memberBonusDetailSerVO.getIncomeStatus())); if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkSettleGrade())) { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 71bfba83..72212199 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -34,6 +34,7 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; @@ -58,14 +59,15 @@ public class CuMemberBonusServiceImpl extends ServiceImpl batchQueryCuMemberBonusSeq(Integer rowNum) { return baseMapper.batchQueryCuMemberBonusSeq(rowNum); @@ -515,7 +492,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl transactionMap = transactionCommonService.exportEnumTransaction(EOrderType.values()); + public TableDataInfo list(String waresCode, String waresName, Date startDate, Date endDate) { startPage(); - List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode,waresName,startDate,endDate); + List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode, waresName, startDate, endDate); for (WaresSalesVolume waresSalesVolume : waresSalesVolumeList) { - List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); + List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); waresSalesVolume.setProductInfo(waresSalesVolumeProductList); - waresSalesVolume.setOrderTypeVal(transactionMap.get(EOrderType.getEnumByValue(waresSalesVolume.getOrderType()).getKey())); + waresSalesVolume.setOrderTypeVal(EOrderType.getLabelByValue(waresSalesVolume.getOrderType())); } return getDataTable(waresSalesVolumeList); } /** * 导出 + * * @param waresCode * @param waresName * @param startDate * @param endDate */ @PostMapping("export") - public void export(String waresCode, String waresName, Date startDate , Date endDate, HttpServletResponse response){ - List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode,waresName,startDate,endDate); + public void export(String waresCode, String waresName, Date startDate, Date endDate, HttpServletResponse response) { + List waresSalesVolumeList = waresSalesVolumeService.queryList(waresCode, waresName, startDate, endDate); for (WaresSalesVolume waresSalesVolume : waresSalesVolumeList) { List waresSalesVolumeProductList = waresSalesVolumeService.queryProductList(waresSalesVolume.getPkWares()); waresSalesVolume.setProductInfo(waresSalesVolumeProductList); diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java index 23e783f6..5f1d623f 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/report/vo/WaresSalesVolume.java @@ -49,12 +49,12 @@ public class WaresSalesVolume { /** * 订单类型 */ - @Excel(name = "订单类型") private Integer orderType; /** * 订单类型 */ + @Excel(name = "订单类型") private String orderTypeVal; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java index cdddfe6d..d0f0eedd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java @@ -46,11 +46,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 我的订单控制器 - * @Author: jiang chao - * @Time: 2023/1/13 15:53 - * @Classname: ApiOrderController - * @PackageName: com.hzs.sale.order.controller.api + * 我的订单控制器 */ @Slf4j @RestController @@ -683,7 +679,7 @@ public class ApiOrderController extends BaseController { myOrder.setRecCounty(recCounty); } myOrder.setAddress(saOrder.getRecAddress()); - myOrder.setOrderTypeVal(EOrderType.getEnumLabelByValue(myOrder.getOrderType())); + myOrder.setOrderTypeVal(EOrderType.getLabelByValue(myOrder.getOrderType())); // 处理订单明细 myOrderItemsList = new ArrayList<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java index c29ae7a9..462f43b4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java @@ -52,8 +52,7 @@ public class ApiOthSaOrderController extends ParentOrderController { if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { convertShoppingCarToSku(orderParam); if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { + || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { if (StringUtils.isEmpty(orderParam.getUpgradeMemberCode())) { orderParam.setUpgradeMemberCode(SecurityUtils.getMemberCode()); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java index bf31667d..8eb0e63f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java @@ -100,11 +100,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); @@ -274,11 +274,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 9c223be3..6469d6ba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -480,8 +480,7 @@ public class SaOrderHandle { private void setWaresRange(Integer specialArea, List bdWaresDetailExtList, CuMember cuMember) { // 复购订单商品跟业绩需要单独处理 if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { Map> waresDetailExtMap = new HashMap<>(); List specsSkuList = new ArrayList<>(); bdWaresDetailExtList.forEach(bdWaresDetailExt -> { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index a61166b8..8294b07b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -11,7 +11,6 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; @@ -87,7 +86,6 @@ import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.concurrent.TimeUnit; -import java.util.function.Function; import java.util.stream.Collectors; /** @@ -652,10 +650,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else { @@ -683,10 +677,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_TIME.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_TIME.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_TIME.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_TIME.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); } else { @@ -899,8 +889,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); CuMember cuMember; if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { + || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); } else { cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); @@ -1832,12 +1821,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REPURCHASE_ORDER_TIME.getKey())) { // 复购专区时间 orderType = EOrderType.REPURCHASE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.EXCHANGE_ORDER_TIME.getKey())) { - // 兑换订单-积分专区 - orderType = EOrderType.EXCHANGE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.WELFARE_ORDER_TIME.getKey())) { - // 福利订单 - orderType = EOrderType.WELFARE_ORDER.getValue(); } ESpecialAreaTime specialAreaTime = ESpecialAreaTime.getSpecialAreaTime(date); if (orderType != null && specialAreaTime != null) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index f926b94c..dc709de0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -180,8 +180,7 @@ public class ApiBdWaresController extends BaseController { List bdWaresRangeList = new ArrayList<>(); if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { // 复购业绩计算 if (waresIdList.size() > 0) { bdWaresRangeList = iBdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdList); @@ -230,8 +229,7 @@ public class ApiBdWaresController extends BaseController { BigDecimal retailPrice = BigDecimal.ZERO; if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { for (BdWaresRange bdWaresRange : bdWaresRangeList) { if (waresExt.getPkId().equals(bdWaresRange.getPkWares())) { waresPrice = waresPrice.add(bdWaresRange.getPrice()); @@ -293,12 +291,7 @@ public class ApiBdWaresController extends BaseController { waresParamsList.add(waresParams); } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.INTEGRAL.getValue()); - for (CuWaresParams waresParams : waresParamsList) { - waresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(waresParams.getWaresPrice(), deductRatio)); - } - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); for (CuWaresParams waresParams : waresParamsList) { @@ -402,10 +395,7 @@ public class ApiBdWaresController extends BaseController { } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, SecurityUtils.getPkCountry(), EAccount.INTEGRAL.getValue()); - cuWaresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(cuWaresParams.getWaresPrice(), deductRatio)); - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); if (cuWaresParams.getPkSpecialCurrency() != null) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index 7e4c51c6..f8289c72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -139,7 +139,7 @@ public class BdWaresController extends BaseController { if (CollectionUtil.isNotEmpty(resultList)) { resultList.parallelStream().forEach(waresVo -> { // 所属专区 - waresVo.setSpecialAreaVal(ESpecialArea.getESpecialArea(waresVo.getSpecialArea())); + waresVo.setSpecialAreaVal(ESpecialArea.getLabelByValue(waresVo.getSpecialArea())); // 供应方式 waresVo.setOperateScopeVal(ESupplyWay.getLabelByVal(waresVo.getOperateScope())); // 预售状态 @@ -894,7 +894,7 @@ public class BdWaresController extends BaseController { eo.setWaresPrice(ws.getWaresPrice()); eo.setAmountPrice(eo.getWaresPrice().multiply(new BigDecimal(eo.getQuantity()))); eo.setSpecialArea(ws.getSpecialArea()); - eo.setSpecialAreaStr(ESpecialArea.getESpecialArea(ws.getSpecialArea())); + eo.setSpecialAreaStr(ESpecialArea.getLabelByValue(ws.getSpecialArea())); eo.setIsSingle(ws.getIsSingle()); eo.setProductName(ws.getProductName()); LambdaQueryWrapper qer = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index c909da84..213748ae 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -75,8 +75,7 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { int level = cuMember.getPkSettleGrade(); int rangeType = ERangeType.GRADE.getValue(); BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); @@ -191,8 +190,7 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { R memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java index e70e9872..6acd0155 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java @@ -29,11 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 会员特殊支付配置 - * @Author: jiang chao - * @Time: 2025/2/20 16:39 - * @Classname: BdMemberSpecialCurrencyController - * @PackageName: com.hzs.system.config.controller.manage + * 会员特殊支付配置 */ @RestController @RequestMapping("/manage/member-special-currency") @@ -64,7 +60,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { for (BdMemberSpecialCurrencyExt memberSpecialCurrency : list) { BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); resultList.add(vo); } } @@ -116,7 +112,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { // 查询配置数据 BdMemberSpecialCurrencyExt memberSpecialCurrency = iBdMemberSpecialCurrencyService.getData(pkId); BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); return AjaxResult.success(vo); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index 2d29cf8c..3b836928 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -1059,20 +1059,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 查询专区 - * - * @return - */ - @GetMapping("/order-type-special") - public AjaxResult orderTypeSpecial() { - List enumEntityList = new ArrayList<>(); - for (EOrderType eOrderType : EOrderType.getOrderTypeSpecial()) { - enumEntityList.add(new EnumEntity(eOrderType.getValue(), eOrderType.getLabel(), EnumsPrefixConstants.ORDER_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 订单状态 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 61ba0717..3dbcedce 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -161,11 +161,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 订单类型 - for (EOrderType value : EOrderType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 货币种类 for (EAccount value : EAccount.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -201,11 +196,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 专区枚举 - for (ESpecialArea value : ESpecialArea.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 统计值枚举 for (EStatisticalValue value : EStatisticalValue.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index 4865a687..20d5e7c8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -10,9 +10,9 @@ import java.util.List; public class SysConstants { /** - * 新零售前缀 + * 众康系统前缀 */ - public static final String RETAIL_PREFIX = "BF"; + public static final String RETAIL_PREFIX = "ZK"; /** * 顶点 */ @@ -31,7 +31,7 @@ public class SysConstants { /** * 特殊处理编号(对外开放使用,主要用于支付接入审核) */ - public static final String SPECIAL_CODE = "BD68880628"; + public static final String SPECIAL_CODE = "ZK68880628"; /** * 血缘累计业绩30万 @@ -46,6 +46,6 @@ public class SysConstants { /** * 开放使用会员编号(用于支付登录查看数据) */ - public static final List CONTROL_MEMBER_LIST = Collections.singletonList("BF66886688"); + public static final List CONTROL_MEMBER_LIST = Collections.singletonList("ZK66886688"); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index 61cdcf79..5c1d8493 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -1,12 +1,8 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; -import java.util.ArrayList; -import java.util.List; - /** * 订单类型枚举类 */ @@ -17,68 +13,53 @@ public enum EOrderType { /** * 注册订单 */ - REGISTER_ORDER(1, "注册订单", 1, EnumsPrefixConstants.ORDER_TYPE + 1), + REGISTER_ORDER(1, "注册订单", 1), /** * 升级订单 */ - UPGRADE_ORDER(2, "升级订单", 1, EnumsPrefixConstants.ORDER_TYPE + 2), + UPGRADE_ORDER(2, "升级订单", 1), /** * 复购订单 */ - REPURCHASE_ORDER(3, "复购订单", 1, EnumsPrefixConstants.ORDER_TYPE + 3), + REPURCHASE_ORDER(3, "复购订单", 1), /** * 重消订单-重消专区 */ - CONSUME_ORDER(10, "重消订单", 1, EnumsPrefixConstants.ORDER_TYPE + 10), - - /** - * 兑换订单-积分专区 - */ - EXCHANGE_ORDER(11, "积分订单", 1, EnumsPrefixConstants.ORDER_TYPE + 11), - - /** - * 福利订单-福利专区 bv - */ - WELFARE_ORDER(13, "福利订单", 1, EnumsPrefixConstants.ORDER_TYPE + 13), + CONSUME_ORDER(10, "重消订单", 1), /** * 直播订单 */ - MALL_ORDER(14, "直播订单", 1, EnumsPrefixConstants.ORDER_TYPE + 14), + MALL_ORDER(14, "直播订单", 1), /** * 虚拟订单 */ - FICTITIOUS_ORDER(20, "虚拟订单", 1, EnumsPrefixConstants.ORDER_TYPE + 20), + FICTITIOUS_ORDER(20, "虚拟订单", 1), /** - * 团队带过来的商品 + * 注册订单 */ - COOPERATE_ORDER(22, "合作订单", 1, EnumsPrefixConstants.ORDER_TYPE + 22), + RETAIL_REGISTER(41, "注册订单", 0), + /** + * 升级订单 + */ + RETAIL_UPGRADE(42, "升级订单", 0), + /** + * 复购订单 + */ + RETAIL_REPURCHASE(43, "复购订单", 0), + /** + * 重消订单 + */ + RETAIL_CONSUME(44, "重消订单", 0), - /** - * 新零售注册订单 - */ - RETAIL_REGISTER(41, "注册订单", 0, EnumsPrefixConstants.ORDER_TYPE + 41), - /** - * 新零售升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0, EnumsPrefixConstants.ORDER_TYPE + 42), - /** - * 新零售复购订单 - */ - RETAIL_REPURCHASE(43, "复购订单", 0, EnumsPrefixConstants.ORDER_TYPE + 43), - /** - * 新零售重消订单 - */ - RETAIL_CONSUME(44, "重消订单", 0, EnumsPrefixConstants.ORDER_TYPE + 44), + RETAIL_TICKET(45, "自助购票", 0), - RETAIL_TICKET(45, "自助购票", 0, EnumsPrefixConstants.ORDER_TYPE + 45), - - RETAIL_PICK(46, "提货订单", 0, EnumsPrefixConstants.ORDER_TYPE + 46), + RETAIL_PICK(46, "提货订单", 0), ; @@ -94,10 +75,6 @@ public enum EOrderType { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 根据值,返回枚举 @@ -117,31 +94,6 @@ public enum EOrderType { return null; } - /** - * 根据值返回显示 - * - * @param value - * @return - */ - public static String getEnumLabelByValue(Integer value) { - if (null == value) { - return ""; - } - for (EOrderType eOrderType : EOrderType.values()) { - if (eOrderType.getValue() == value) { - return eOrderType.getLabel(); - } - } - return ""; - } - - public static List getOrderTypeSpecial() { - List resultList = new ArrayList<>(); - resultList.add(EOrderType.REGISTER_ORDER); - resultList.add(EOrderType.UPGRADE_ORDER); - resultList.add(EOrderType.REPURCHASE_ORDER); - return resultList; - } public static String getLabelByValue(Integer value) { if (null == value) { return ""; @@ -154,5 +106,4 @@ public enum EOrderType { return ""; } - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 130cc4ab..061ae73a 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -14,61 +13,46 @@ public enum ESpecialArea { /** * 注册专区 */ - REGISTER_AREA(1, "注册专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "1", 3, EMenuDetail.REGISTER.getValue()), + REGISTER_AREA(1, "注册专区", 1, 3, EMenuDetail.REGISTER.getValue()), /** * 升级专区 */ - UPGRADE_AREA(2, "升级专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "2", 4, EMenuDetail.UPGRADE.getValue()), + UPGRADE_AREA(2, "升级专区", 1, 4, EMenuDetail.UPGRADE.getValue()), /** * 复购专区 名字修改为自营专区(复购自营) */ - REPURCHASE_AREA(3, "复购自营", 1, EnumsPrefixConstants.SPECIAL_AREA + "3", 5, EMenuDetail.REPURCHASE.getValue()), + REPURCHASE_AREA(3, "复购自营", 1, 5, EMenuDetail.REPURCHASE.getValue()), /** * 重消专区 */ - RESCISSION_AREA(10, "重消专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "10", 8, EMenuDetail.REPEATED_CONSUMPTION.getValue()), - - /** - * 积分专区 - */ - INTEGRAL_AREA(11, "积分专区", 1, EnumsPrefixConstants.SPECIAL_AREA + "11", 13, EMenuDetail.INTEGRAL_AREA.getValue()), - - /** - * 福利专区 - */ - WELFARE_AREA(13, "福利专区", 1, EnumsPrefixConstants.SPECIAL_AREA + 13, 9, EMenuDetail.WELFARE_AREA.getValue()), + RESCISSION_AREA(10, "重消专区", 1, 8, EMenuDetail.REPEATED_CONSUMPTION.getValue()), /** * 直播专区 */ - LIVE_BROADCAST(14, "直播专区", 1, EnumsPrefixConstants.SPECIAL_AREA + 14, 14, EMenuDetail.LIVE.getValue()), + LIVE_BROADCAST(14, "直播专区", 1, 14, EMenuDetail.LIVE.getValue()), /** - * 复购合作 团队带过来的产品 + * 会员专区(注册) */ - COOPERATE_AREA(22, "复购合作", 1, EnumsPrefixConstants.SPECIAL_AREA + 22, 6, EMenuDetail.COOPERATE.getValue()), + RETAIL_REGISTER(41, "注册专区", 0, 41, -1), + /** + * 会员专区(升级) + */ + RETAIL_UPGRADE(42, "升级专区", 0, 42, -1), + /** + * 复购专区 + */ + RETAIL_REPURCHASE(43, "复购专区", 0, 43, -1), + /** + * 重消专区 + */ + RETAIL_RESCISSION(44, "重消专区", 0, 44, -1), - /** - * 新零售会员专区(注册) - */ - RETAIL_REGISTER(41, "新零售注册专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 41, 41, -1), - /** - * 新零售会员专区(升级) - */ - RETAIL_UPGRADE(42, "新零售升级专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 42, 42, -1), - /** - * 新零售复购专区 - */ - RETAIL_REPURCHASE(43, "新零售复购专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 43, 43, -1), - /** - * 新零售重消专区 - */ - RETAIL_RESCISSION(44, "新零售重消专区", 0, EnumsPrefixConstants.SPECIAL_AREA + 44, 44, -1), - - RETAIL_TICKET(45, "自助购票", 0, EnumsPrefixConstants.SPECIAL_AREA + 45, 45, -1), + RETAIL_TICKET(45, "自助购票", 0, 45, -1), ; @@ -84,10 +68,6 @@ public enum ESpecialArea { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; /** * 排序 @@ -111,18 +91,6 @@ public enum ESpecialArea { return ""; } - public static String getESpecialArea(Integer value) { - if (null == value) { - return ""; - } - for (ESpecialArea eSpecialArea : ESpecialArea.values()) { - if (eSpecialArea.getValue() == value) { - return eSpecialArea.getLabel(); - } - } - return ""; - } - /** * 新零售专区值匹配 -- 注册、升级,对应商品都是会员专区 * diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index b6f2df5e..1e834e8c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -17,16 +17,13 @@ public enum ETradeType { UPGRADE_ORDER(102, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 102, EOrderType.UPGRADE_ORDER.getValue()), REPURCHASE_ORDER(103, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 103, EOrderType.REPURCHASE_ORDER.getValue()), CONSUME_ORDER(110, 0, "消费订单", 0, EnumsPrefixConstants.TRADE_TYPE + 110, EOrderType.CONSUME_ORDER.getValue()), - EXCHANGE_ORDER(111, 0, "积分订单", 0, EnumsPrefixConstants.TRADE_TYPE + 111, EOrderType.EXCHANGE_ORDER.getValue()), - WELFARE_ORDER(113, 0, "福利订单", 0, EnumsPrefixConstants.TRADE_TYPE + 113, EOrderType.WELFARE_ORDER.getValue()), MALL_ORDER(114, 0, "商城订单", 0, EnumsPrefixConstants.TRADE_TYPE + 114, EOrderType.MALL_ORDER.getValue()), FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), - COOPERATE_ORDER(122, 0, "复购合作", 0, EnumsPrefixConstants.TRADE_TYPE + 122, EOrderType.COOPERATE_ORDER.getValue()), - RETAIL_REGISTER_ORDER(141, 0, "新零售注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), - RETAIL_UPGRADE_ORDER(142, 0, "新零售升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), - RETAIL_REPURCHASE_ORDER(143, 0, "新零售复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), - RETAIL_CONSUME_ORDER(144, 0, "新零售重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), + RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), + RETAIL_UPGRADE_ORDER(142, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), + RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), + RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), EMPTY_ORDER(190, 190, "空单注册", 0, EnumsPrefixConstants.TRADE_TYPE + 190, EOrderType.REGISTER_ORDER.getValue()), @@ -70,16 +67,13 @@ public enum ETradeType { REVOKE_UPGRADE_ORDER(603, 0, "升级订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 603, -EOrderType.UPGRADE_ORDER.getValue()), REVOKE_REPURCHASE_ORDER(604, 0, "复购订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 604, -EOrderType.REPURCHASE_ORDER.getValue()), REVOKE_CONSUME_ORDER(611, 0, "消费订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 611, -EOrderType.CONSUME_ORDER.getValue()), - REVOKE_EXCHANGE_ORDER(612, 0, "积分订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 612, -EOrderType.EXCHANGE_ORDER.getValue()), - REVOKE_WELFARE_ORDER(614, 0, "福利订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 614, -EOrderType.WELFARE_ORDER.getValue()), REVOKE_MALL_ORDER(615, 0, "商城订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 615, -EOrderType.MALL_ORDER.getValue()), REVOKE_FICTITIOUS_ORDER(618, 0, "虚拟订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 618, -EOrderType.FICTITIOUS_ORDER.getValue()), - REVOKE_COOPERATE_ORDER(620, 0, "合作订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 620, -EOrderType.COOPERATE_ORDER.getValue()), - REVOKE_RETAIL_REGISTER_ORDER(641, 0, "新零售注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), - REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "新零售升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), - REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "新零售复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), - REVOKE_RETAIL_CONSUME_ORDER(644, 0, "新零售重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), + REVOKE_RETAIL_REGISTER_ORDER(641, 0, "注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), + REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), + REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), + REVOKE_RETAIL_CONSUME_ORDER(644, 0, "重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), REVOKE_RETAIL_TICKET_ORDER(645, 0, "自主购票撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 645, -EOrderType.RETAIL_TICKET.getValue()), ORDER_SELF_DELIVER(680, 0, "自提返还邮费", 0, EnumsPrefixConstants.TRADE_TYPE + 680, -99), From a4c96b069446ea82c62d74c5eb7cdf7b51365bbf Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 11:53:04 +0800 Subject: [PATCH 145/362] =?UTF-8?q?##=20=E5=8E=BB=E9=99=A4=E5=9B=BD?= =?UTF-8?q?=E9=99=85=E5=8C=96=E5=BC=82=E6=AD=A5=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/third/mq/IDelayedMessageApi.java | 11 +- .../hzs/third/mq/dto/DelayedMessageDTO.java | 6 +- .../manage/BdTransactionController.java | 41 +----- .../base/mapper/BdTransactionMapper.java | 3 - .../base/service/IBdTransactionService.java | 21 --- .../impl/BdTransactionServiceImpl.java | 87 ------------- .../core/constant/RabbitMqConstants.java | 12 -- .../com/hzs/common/core/enums/ELanguages.java | 30 ----- .../domain/system/base/BdTransaction.java | 6 - .../mqcall/config/DelayRabbitConfig.java | 9 +- .../mqcall/listener/ActivityListener.java | 11 +- .../mqcall/listener/TransactionListener.java | 120 ------------------ .../provider/DelayedMessageProvider.java | 7 - .../service/IDelayedMessageService.java | 14 +- .../impl/DelayedMessageServiceImpl.java | 8 +- .../translate/config/TranslateConfig.java | 34 ----- .../third/translate/dto/TranslateParam.java | 39 ------ .../third/translate/dto/TranslateResult.java | 42 ------ .../translate/dto/TranslateResultDetail.java | 25 ---- .../translate/service/ITranslateService.java | 24 ---- .../service/impl/TranslateServiceImpl.java | 86 ------------- 21 files changed, 16 insertions(+), 620 deletions(-) delete mode 100644 bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java delete mode 100644 bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java index e9a4100f..9bd9ea21 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java @@ -3,21 +3,12 @@ package com.hzs.third.mq; import com.hzs.common.core.domain.R; import com.hzs.third.mq.dto.DelayedMessageDTO; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/9 15:21 - * @Classname: IDelayedMessage - * @PackageName: com.hzs.third.mq - */ public interface IDelayedMessageApi { /** * 发送延时队列消息 + * * @param delayedMessageDTO 内容 - * @return: void - * @Author: sui q - * @Date: 2023/3/9 15:18 */ R sendDelayedMessage(DelayedMessageDTO delayedMessageDTO); } diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java index ac90e9cd..7bb6c528 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java @@ -10,11 +10,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 用于延时队列,删除redis缓存 - * @Author: sui q - * @Time: 2023/3/9 15:49 - * @Classname: DelayedMessageDTO - * @PackageName: com.hzs.third.mq.dto + * 用于延时队列,删除redis缓存 */ @Data @Builder diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java index 22cfeed1..103ca5ff 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java @@ -29,9 +29,6 @@ import java.util.*; /** * 国际化翻译控制器 - * - * @author hzs - * @since 2022-08-08 */ @Slf4j @RestController @@ -148,11 +145,7 @@ public class BdTransactionController extends BaseController { } /** - * @description: 下载模板 - * @author: zhang jing - * @date: 2023/4/6 11:48 - * @param: [response] - * @return: void + * 下载模板 **/ @PostMapping("/download") public void download(HttpServletResponse response) { @@ -180,22 +173,6 @@ public class BdTransactionController extends BaseController { return AjaxResult.success(iBdTransactionService.importData(ordersList, updateSupport, SecurityUtils.getUserId())); } - /** - * 初始化语种(以中文为准,翻译为其它语种) - * - * @param language 语种 - * @return - */ - @GetMapping("/init-languages") - public AjaxResult initLanguages(@RequestParam("language") Integer language) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - - return toAjax(iBdTransactionService.initToLanguage(eLanguages)); - } - /** * 刷新资源缓存 * @@ -265,20 +242,4 @@ public class BdTransactionController extends BaseController { return AjaxResult.error("翻译刷新处理失败"); } - /** - * 以指定语种为基础初始数据资源 - * - * @param language 基础语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - @GetMapping("/init-other-language/{language}") - public AjaxResult initOtherLanguage(@PathVariable("language") Integer language, @RequestParam List pkIdList) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - return toAjax(iBdTransactionService.initOtherLanguage(eLanguages, pkIdList)); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java index 824ca591..a01d62ba 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java @@ -12,9 +12,6 @@ import java.util.Set; /** * 统一翻译表 Mapper 接口 - * - * @author hzs - * @since 2022-08-08 */ public interface BdTransactionMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java index 245347d8..ebfeb914 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java @@ -1,7 +1,6 @@ package com.hzs.system.base.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.core.enums.ELanguages; import com.hzs.common.domain.system.base.BdTransaction; import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; @@ -10,9 +9,6 @@ import java.util.*; /** * 统一翻译表 服务类 - * - * @author hzs - * @since 2022-08-08 */ public interface IBdTransactionService extends IService { @@ -108,23 +104,6 @@ public interface IBdTransactionService extends IService { */ List queryListByColumn(String column, boolean isCache, boolean isUpload); - /** - * 初始化指定语种 - * - * @param eLanguages 指定语种 - * @return - */ - boolean initToLanguage(ELanguages eLanguages); - - /** - * 以指定语种为基础初始数据资源 - * - * @param eLanguages 指定语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - boolean initOtherLanguage(ELanguages eLanguages, List pkIdList); - /** * 刷新资源 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java index 994d8327..93477cfc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdTransactionServiceImpl.java @@ -7,9 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.LanguageConstants; -import com.hzs.common.core.constant.RabbitMqConstants; import com.hzs.common.core.enums.ELanguages; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.OssUtil; @@ -19,9 +17,7 @@ import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; import com.hzs.system.base.mapper.BdTransactionMapper; import com.hzs.system.base.service.IBdTransactionService; -import com.hzs.third.mq.dto.TransactionMqDTO; import lombok.extern.slf4j.Slf4j; -import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,27 +28,14 @@ import java.util.*; /** * 统一翻译表 服务实现类 - * - * @author hzs - * @since 2022-08-08 */ @Slf4j @Service public class BdTransactionServiceImpl extends ServiceImpl implements IBdTransactionService { - @Autowired - private RabbitTemplate rabbitTemplate; @Autowired private RedisService redisService; - - /** - * @description: 导入统一翻译信息 - * @author: zhang jing - * @date: 2023/4/27 17:17 - * @param: [transactionList, updateSupport, userId] - * @return: java.lang.String - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean importData(List transactionList, @@ -85,16 +68,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey() + transactionParam.getPkId()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - return transactionParam.getPkId(); } return null; @@ -104,17 +77,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - if (null != updateOther && updateOther) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - } return transactionParam.getPkId(); } return null; @@ -167,55 +129,6 @@ public class BdTransactionServiceImpl extends ServiceImpl transactionResultList = baseMapper.queryToColumnList(eLanguages.getColumn()); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(ELanguages.CN.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .toApiKey(eLanguages.getApiKey()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - @Override - public boolean initOtherLanguage(ELanguages eLanguages, List pkIdList) { - List transactionResultList = baseMapper.queryFromColumnList(eLanguages.getColumn(), pkIdList); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(eLanguages.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - /** - * 刷新资源 - * - * @param languages 刷新语种(ELanguages的value) - * @param isCache 是否刷新缓存 - * @param isOss 是否刷新OSS - */ @Override public void flushResources(Integer languages, boolean isCache, boolean isOss) { String column = null; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java index 4d2303e4..99c6ae6c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java @@ -9,18 +9,6 @@ public class RabbitMqConstants { * 统一mq前缀 */ public final static String PREFIX = "global."; - /** - * 翻译MQ exchange - */ - public static final String TRANSLATE_EXCHANGE = PREFIX + "translate.exchange"; - /** - * 翻译MQ queue - */ - public static final String TRANSLATE_QUEUE = PREFIX + "translate.queue"; - /** - * 翻译MQ key - */ - public static final String TRANSLATE_KEY = PREFIX + "translate.key"; /** * 奖金秒接 exchange diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java index 7e61b90d..1ca7dbe6 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ELanguages.java @@ -86,34 +86,4 @@ public enum ELanguages { return null; } - /** - * 根据语种column,获取语种 - * - * @param column - * @return - */ - public static ELanguages getLanguagesByColumn(String column) { - for (ELanguages eLanguages : ELanguages.values()) { - if (eLanguages.getColumn().equals(column)) { - return eLanguages; - } - } - return null; - } - - /** - * 根据语种apiKey,获取语种 - * - * @param apiKey - * @return - */ - public static ELanguages getLanguagesByApiKey(String apiKey) { - for (ELanguages eLanguages : ELanguages.values()) { - if (eLanguages.getApiKey().equals(apiKey)) { - return eLanguages; - } - } - return null; - } - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java index bd070e22..a01c51b7 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/base/BdTransaction.java @@ -15,12 +15,7 @@ import java.io.Serializable; import java.util.Date; /** - *

* 统一翻译表 - *

- * - * @author hzs - * @since 2022-08-08 */ @Data @EqualsAndHashCode(callSuper = false) @@ -227,7 +222,6 @@ public class BdTransaction implements Serializable { private Integer isCache; - /** * 是否上传(0=是,1=否) */ diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java b/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java index 20c21e47..8d299b70 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/config/DelayRabbitConfig.java @@ -10,11 +10,7 @@ import java.util.HashMap; import java.util.Map; /** - * @Description: 配置队列 - * @Author: sui q - * @Time: 2023/3/9 15:26 - * @Classname: DelayRabbitConfig - * @PackageName: com.hzs.third.mqcall.config + * 配置队列 */ @Configuration @Slf4j @@ -45,12 +41,14 @@ public class DelayRabbitConfig { * 需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配。 * 这是一个完整的匹配。如果一个队列绑定到该交换机上要求路由键 “dog”,则只有被标记为“dog”的消息才被转发, * 不会转发dog.puppy,也不会转发dog.guard,只会转发dog。 + * * @return DirectExchange */ @Bean public DirectExchange orderDelayExchange() { return new DirectExchange(RabbitMqConstants.DELAY_EXCHANGE); } + @Bean public Binding dlxBinding() { return BindingBuilder.bind(delayOrderQueue()).to(orderDelayExchange()).with(RabbitMqConstants.DELAY_ROUTING_KEY); @@ -60,6 +58,7 @@ public class DelayRabbitConfig { public Queue effectQueue() { return new Queue(RabbitMqConstants.EFFECT_QUEUE_NAME, true); } + /** * 将路由键和某模式进行匹配。此时队列需要绑定要一个模式上。 * 符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词。因此“audit.#”能够匹配到“audit.irs.corporate”,但是“audit.*” 只会匹配到“audit.irs”。 diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java index ec5736bd..8f4cfd62 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityListener.java @@ -13,19 +13,14 @@ import org.springframework.messaging.Message; import org.springframework.stereotype.Component; /** - * @description: 活动公共的监听方法, 用于处理活动 - * @author: sui q - * @time: 2023/4/28 11:21 - * @classname: ActivityListener - * @package_name: com.hzs.third.mqcall.listener - * version 1.0.0 + * 活动公共的监听方法, 用于处理活动 */ @Slf4j @Component public class ActivityListener { @DubboReference - IActivityServiceApi activityServiceApi; + IActivityServiceApi iActivityServiceApi; @RabbitListener(bindings = @QueueBinding( exchange = @Exchange(value = RabbitMqConstants.ACTIVITY_EXCHANGE, type = "topic"), @@ -40,7 +35,7 @@ public class ActivityListener { Thread.sleep(1000); Long deliveryTag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); channel.basicAck(deliveryTag, false); - activityServiceApi.handleActivity(saOrderExt); + iActivityServiceApi.handleActivity(saOrderExt); } catch (Exception e) { log.error(e.getMessage()); e.printStackTrace(); diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java deleted file mode 100644 index 25944f20..00000000 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/TransactionListener.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.hzs.third.mqcall.listener; - -import cn.hutool.core.util.ReflectUtil; -import com.hzs.common.core.constant.RabbitMqConstants; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.ELanguages; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.system.base.ITransactionServiceApi; -import com.hzs.system.base.dto.TransactionDTO; -import com.hzs.third.mq.dto.TransactionMqDTO; -import com.hzs.third.translate.dto.TranslateParam; -import com.hzs.third.translate.service.ITranslateService; -import com.rabbitmq.client.Channel; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.amqp.rabbit.annotation.*; -import org.springframework.amqp.support.AmqpHeaders; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.messaging.Message; -import org.springframework.stereotype.Component; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -/** - * 国际化翻译监听 - */ -@Slf4j -@Component -public class TransactionListener { - - @Autowired - private ITranslateService iTranslateService; - - @DubboReference - ITransactionServiceApi iTransactionServiceApi; - - /** - * 国际化全量翻译监听处理 - * - * @param message - * @param channel - * @throws Exception - */ - @RabbitListener(bindings = @QueueBinding( - exchange = @Exchange(value = RabbitMqConstants.TRANSLATE_EXCHANGE, type = "topic"), - value = @Queue(value = RabbitMqConstants.TRANSLATE_QUEUE, durable = "true", autoDelete = "false"), - key = RabbitMqConstants.TRANSLATE_KEY)) - @RabbitHandler - public void onMessage(Message message, Channel channel) throws Exception { - // 手动应答 - Long deliveryTag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); - channel.basicAck(deliveryTag, false); - - // 根据传入的ID获取翻译内容 - TransactionMqDTO transactionMqDto = message.getPayload(); - - log.info("异步翻译入参信息:{}", transactionMqDto); - - // 调用服务查询翻译内容 - ELanguages fromLanguage = ELanguages.getLanguagesByColumn(transactionMqDto.getColumn()); - if (null == fromLanguage) { - log.error("异步翻译来源语言不存在"); - return; - } - - // 翻译内容 - String content = transactionMqDto.getColumnValue(); - // 翻译来源语言 - String from = fromLanguage.getApiKey(); - - // 翻译目标语言列表 - List toList = new ArrayList<>(); - if (StringUtils.isNotEmpty(transactionMqDto.getToApiKey())) { - toList.add(transactionMqDto.getToApiKey()); - } else { - for (ELanguages value : ELanguages.values()) { - if (!value.getApiKey().equals(from)) { - toList.add(value.getApiKey()); - } - } - } - - if (StringUtils.isNotEmpty(content)) { - // 调用三方服务处理成功 - Map dataMap = iTranslateService.translate(TranslateParam.builder() - .from(from) - .to(toList) - .content(content) - .build()); - - // 封装调用翻译服务入库内容 - TransactionDTO transactionDTO = new TransactionDTO(); - transactionDTO.setPkId(transactionMqDto.getPkId()); - ReflectUtil.setFieldValue(transactionDTO, fromLanguage.getColumn(), content); - - // 赋值入库并处理是否加入缓存 - for (String apiKey : toList) { - ELanguages languages = ELanguages.getLanguagesByApiKey(apiKey); - if (null != languages) { - String translateStr = dataMap.get(apiKey); - - ReflectUtil.setFieldValue(transactionDTO, languages.getColumn(), translateStr); - - log.info("{}", apiKey + ":" + translateStr); - } - } - log.info("transactionDTO: {}", transactionDTO); - - R updateR = iTransactionServiceApi.updateTransactionSync(transactionDTO); - if (!updateR.isSuccess()) { - log.error("异步翻译调用翻译服务入库失败: {}", updateR.getMsg()); - } - } else { - log.warn("异步翻译内容为空"); - } - } - -} diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java b/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java index f557b2d7..63224f56 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/provider/DelayedMessageProvider.java @@ -7,13 +7,6 @@ import com.hzs.third.mqcall.service.IDelayedMessageService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/9 15:22 - * @Classname: DelayedMessageProvider - * @PackageName: com.hzs.third.mqcall.provider - */ @DubboService public class DelayedMessageProvider implements IDelayedMessageApi { diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java b/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java index a83715a7..3df7be1c 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/service/IDelayedMessageService.java @@ -3,20 +3,14 @@ package com.hzs.third.mqcall.service; import com.hzs.third.mq.dto.DelayedMessageDTO; /** - * @Description: 延时队列入口类 - * @Author: sui q - * @Time: 2023/3/9 15:16 - * @Classname: IDelaydeMessageService - * @PackageName: com.hzs.third.mqcall.service + * 延时队列入口类 */ public interface IDelayedMessageService { /** - * 发送延时队列消息 + * 发送延时队列消息 + * * @param delayedMessageDTO 内容 - * @return: void - * @Author: sui q - * @Date: 2023/3/9 15:18 - */ + */ void sendDelayedMessage(DelayedMessageDTO delayedMessageDTO); } diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java b/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java index be66b6ef..2b27c507 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/service/impl/DelayedMessageServiceImpl.java @@ -9,11 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - * @Description: 延时队列实现类 - * @Author: sui q - * @Time: 2023/3/9 15:20 - * @Classname: DelayedMessageImpl - * @PackageName: com.hzs.third.mqcall.service.impl + * 延时队列实现类 */ @Service public class DelayedMessageServiceImpl implements IDelayedMessageService { @@ -23,7 +19,7 @@ public class DelayedMessageServiceImpl implements IDelayedMessageService { @Override public void sendDelayedMessage(DelayedMessageDTO delayedMessageDTO) { - if(DateUtils.compareDateTimeAfter(delayedMessageDTO.getEffectDate(), DateUtils.currentDateTime())) { + if (DateUtils.compareDateTimeAfter(delayedMessageDTO.getEffectDate(), DateUtils.currentDateTime())) { // 计算延时时间 long second = DateUtils.betweenSecond(delayedMessageDTO.getEffectDate()) * 1000; rabbitTemplate.convertAndSend(RabbitMqConstants.DELAY_EXCHANGE, RabbitMqConstants.DELAY_ROUTING_KEY, diff --git a/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java b/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java deleted file mode 100644 index 05bda499..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/config/TranslateConfig.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.hzs.third.translate.config; - -import lombok.Data; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.stereotype.Component; - -/** - * Description: - * Author: jiang chao - * Time: 2022/9/8 17:51 - * Classname: TranslateConfig - * PackageName: com.hzs.third.translate.config - */ -@Data -@Component -@ConfigurationProperties(prefix = "baidu.translate") -public class TranslateConfig { - - /** - * API appId - */ - private String appId; - - /** - * API secretKey - */ - private String secretKey; - - /** - * url - */ - private String url; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java deleted file mode 100644 index 555f4f9b..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateParam.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.List; - -/** - * Description: 翻译服务入参 - * Author: jiang chao - * Time: 2022/9/8 18:00 - * Classname: TranslateParam - * PackageName: com.hzs.third.translate.dto - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class TranslateParam implements Serializable { - - private static final long serialVersionUID = 5415462905404464505L; - - /** - * 翻译来源语言ApiKey - */ - private String from; - /** - * 翻译目标语言ApiKey - */ - private List to; - /** - * 翻译内容 - */ - private String content; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java deleted file mode 100644 index 6b4d3bcc..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResult.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.Data; - -import java.util.List; - -/** - * Description: 翻译返回内容 - * Author: jiang chao - * Time: 2022/9/8 17:03 - * Classname: TranslateResult - * PackageName: com.hzs.system.sys.controller.manage - */ -@Data -public class TranslateResult { - - /** - * 翻译源语言 - */ - private String from; - - /** - * 翻译目标语言 - */ - private String to; - - /** - * 错误码 - */ - private String error_code; - - /** - * 错误内容 - */ - private String error_msg; - - /** - * 翻译结果 - */ - private List trans_result; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java b/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java deleted file mode 100644 index 654268ae..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/dto/TranslateResultDetail.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.third.translate.dto; - -import lombok.Data; - -/** - * Description: 翻译返回内容 - * Author: jiang chao - * Time: 2022/9/8 17:03 - * Classname: TranslateResult - * PackageName: com.hzs.system.sys.controller.manage - */ -@Data -public class TranslateResultDetail { - - /** - * 翻译源内容 - */ - private String src; - - /** - * 翻译目标内容 - */ - private String dst; - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java b/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java deleted file mode 100644 index a894f5f1..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/service/ITranslateService.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.third.translate.service; - -import com.hzs.third.translate.dto.TranslateParam; - -import java.util.Map; - -/** - * @Description: - * @Author: jiang chao - * @Time: 2023/3/7 18:42 - * @Classname: ITranslateService - * @PackageName: com.hzs.third.translate.service - */ -public interface ITranslateService { - - /** - * 语言翻译 - * - * @param param 翻译入参 - * @return - */ - Map translate(TranslateParam param); - -} diff --git a/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java b/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java deleted file mode 100644 index fc931cee..00000000 --- a/bd-third/src/main/java/com/hzs/third/translate/service/impl/TranslateServiceImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.hzs.third.translate.service.impl; - -import cn.hutool.core.text.UnicodeUtil; -import cn.hutool.core.util.CharsetUtil; -import cn.hutool.crypto.digest.MD5; -import cn.hutool.http.HttpUtil; -import cn.hutool.json.JSONUtil; -import com.hzs.common.core.constant.Constants; -import com.hzs.common.core.exception.base.BaseException; -import com.hzs.third.translate.config.TranslateConfig; -import com.hzs.third.translate.dto.TranslateParam; -import com.hzs.third.translate.dto.TranslateResult; -import com.hzs.third.translate.service.ITranslateService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.common.utils.CollectionUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.net.URLEncoder; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -/** - * @Description: - * @Author: jiang chao - * @Time: 2023/3/7 18:43 - * @Classname: TranslateServiceImpl - * @PackageName: com.hzs.third.translate.service.impl - */ -@Slf4j -@Service -public class TranslateServiceImpl implements ITranslateService { - - @Autowired - private TranslateConfig translateConfig; - - /** - * 语言翻译 - * - * @param param 翻译入参 - * @return - */ - @Override - public Map translate(TranslateParam param) { - try { - // 请求参数加盐 - String salt = String.valueOf(System.currentTimeMillis()); - // MD5加密 - String sign = MD5.create().digestHex(translateConfig.getAppId() + param.getContent() + salt + translateConfig.getSecretKey()).toLowerCase(); - // 翻译内容进行URLEncode转码 - String content = URLEncoder.encode(param.getContent(), Constants.UTF8); - - // 返回的翻译对应map - Map resultMap = new ConcurrentHashMap<>(); - - List toList = param.getTo(); - if (CollectionUtils.isNotEmpty(toList)) { - for (String str : toList) { - String url = translateConfig.getUrl() + "?q=" + content + "&from=" + param.getFrom() + "&to=" + str + "&appid=" + translateConfig.getAppId() + "&salt=" + salt + "&sign=" + sign; - log.info("异步翻译请求URL: {}", url); - - String result = HttpUtil.get(url, CharsetUtil.CHARSET_UTF_8); - log.info("异步翻译返回内容:{}", result); - - // 翻译返回内容为 unicode,需要进行解码 - result = UnicodeUtil.toString(result); - - TranslateResult translateResult = JSONUtil.toBean(result, TranslateResult.class); - if (null != translateResult && null != translateResult.getFrom()) { - // 返回成功并且有内容 - resultMap.put(str, translateResult.getTrans_result().get(0).getDst()); - } -// // 非企业认证,QPS=1 -// Thread.sleep(1000); - } - } - - return resultMap; - } catch (Exception e) { - log.error("异步翻译异常!param: {}", param, e); - throw new BaseException("异步翻译异常"); - } - } - -} From b1f7051529fa3a704d1ee0fe3ed7ea15198dc086 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 19 Aug 2025 14:14:40 +0800 Subject: [PATCH 146/362] =?UTF-8?q?##=20=E5=8E=BB=E9=99=A4=E9=83=A8?= =?UTF-8?q?=E5=88=86=E5=9B=BD=E9=99=85=E5=8C=96=EF=BC=9B=E5=8E=BB=E6=8E=89?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E6=8F=90=E7=8E=B0=E7=AD=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/detail/ICuRegionAssessApi.java | 29 -- .../member/account/IMemberJobServiceApi.java | 36 +-- .../hzs/retail/member/IMemberRetailApi.java | 7 - .../report/stat/IMemberReportServiceApi.java | 20 -- .../report/stat/dto/StatisticalLogDTO.java | 67 ----- .../hzs/system/base/ICurrencyServiceApi.java | 27 -- .../system/base/ITransactionServiceApi.java | 53 ---- .../hzs/system/base/dto/TransactionDTO.java | 6 +- .../config/IWithdrawalAutoServiceApi.java | 25 -- .../system/config/IWithdrawalServiceApi.java | 24 +- .../detail/mapper/CuRegionAssessMapper.java | 9 - .../provider/CuRegionAssessProvider.java | 46 --- .../service/ICuRegionAssessService.java | 7 - .../impl/CuRegionAssessServiceImpl.java | 29 -- .../bonus/detail/CuRegionAssessMapper.xml | 21 -- .../api/ApiCuMemberWithdrawController.java | 12 - .../account/mapper/CuMemberAccountMapper.java | 44 --- .../mapper/CuMemberWithdrawMapper.java | 6 - .../provider/IMemberJobServiceProvider.java | 37 --- .../service/ICuMemberAccountService.java | 44 --- .../service/ICuMemberRechargeService.java | 13 - .../service/ICuMemberWithdrawService.java | 22 -- .../impl/CuMemberAccountServiceImpl.java | 27 -- .../impl/CuMemberWithdrawServiceImpl.java | 169 +---------- .../hzs/member/account/vo/CuMemberBankVO.java | 8 +- .../mapper/CuMemberRetailRegionMapper.java | 7 - .../member/provider/MemberRetailProvider.java | 11 - .../ICuMemberRetailAchieveService.java | 18 -- .../service/ICuMemberRetailRegionService.java | 5 - .../CuMemberRetailAchieveServiceImpl.java | 155 +--------- .../impl/CuMemberRetailRegionServiceImpl.java | 79 ----- .../member/account/CuMemberAccountMapper.xml | 125 -------- .../member/CuMemberRetailRegionMapper.xml | 12 - .../provider/MemberReportServiceProvider.java | 32 --- .../member/service/MemberReportService.java | 5 - .../service/impl/MemberReportServiceImpl.java | 45 --- .../base/mapper/BdStorehouseMapper.java | 11 +- .../base/mapper/BdTransactionMapper.java | 10 - .../provider/CurrencyServiceProvider.java | 54 ---- .../provider/TransactionServiceProvider.java | 150 ---------- .../base/service/IBdCurrencyService.java | 17 -- .../base/service/IBdStorehouseService.java | 16 +- .../base/service/IBdTransactionService.java | 10 - .../service/impl/BdCurrencyServiceImpl.java | 5 +- .../service/impl/BdStorehouseServiceImpl.java | 82 +----- .../impl/BdTransactionServiceImpl.java | 5 - .../manage/BdWithdrawalAutoController.java | 67 +---- .../manage/BdWithdrawalController.java | 270 +++++++----------- .../manage/BdWithdrawalProcessController.java | 111 +++---- .../config/mapper/BdWithdrawalAutoMapper.java | 6 - .../config/mapper/BdWithdrawalMapper.java | 35 +-- .../WithdrawalAutoServiceProvider.java | 36 --- .../provider/WithdrawalServiceProvider.java | 37 +-- .../service/IBdWithdrawalAutoService.java | 9 - .../config/service/IBdWithdrawalService.java | 56 +--- .../impl/BdWithdrawalAutoServiceImpl.java | 40 --- .../service/impl/BdWithdrawalServiceImpl.java | 116 ++------ .../hzs/system/sys/mapper/SysCorpMapper.java | 10 +- .../system/sys/service/ISysCorpService.java | 27 +- .../sys/service/impl/SysCorpServiceImpl.java | 20 +- .../system/base/BdTransactionMapper.xml | 11 - .../common/core/constant/CacheConstants.java | 16 -- .../member/account/CuMemberRecharge.java | 5 - .../member/account/CuMemberWithdraw.java | 5 - .../domain/system/base/ext/BdCubasdocExt.java | 8 - .../domain/system/config/BdWithdrawal.java | 5 - .../system/config/BdWithdrawalAuto.java | 8 - .../hzs/common/domain/system/sys/SysCorp.java | 5 - .../java/com/hzs/third/job/CuMemberJob.java | 8 - .../java/com/hzs/third/job/MemberJob.java | 54 ---- 70 files changed, 236 insertions(+), 2371 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java delete mode 100644 bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java delete mode 100644 bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java delete mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/member/provider/MemberReportServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalAutoServiceProvider.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java deleted file mode 100644 index ca2ad6d7..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.bonus.detail; - -import com.hzs.common.core.domain.R; - -import java.util.Date; -import java.util.List; - -/** - * @description: 新零售会员区域考核dubbo服务 - * @author: zhang jing - * @date: 2025/3/7 10:36 - * @param: - * @return: - **/ -public interface ICuRegionAssessApi { - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - R validateHandAreaAssess(Date startDate,Date endDate); - - - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java index bd8c4b03..5607f951 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java @@ -1,20 +1,12 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; - -import java.util.Date; /** * 会员模块定时任务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:38 - * @Classname: IMemberJobServiceApi - * @Package_name: com.hzs.member.account */ public interface IMemberJobServiceApi { + /** * 定时插入账户详情数据 * @@ -22,30 +14,14 @@ public interface IMemberJobServiceApi { */ R insertAccountDetail(); - - /** - * 自动提现 - * - * @return - */ - R automaticWithdrawal(); - - /** - * 查询充值金额总和 - * - * @param startDate 开始时暗 - * @param endDate 结速时间 - * @return R - */ - R selectRechargeTotalAmount(Date startDate, Date endDate); - - /** * 自动清理垃圾数据 - * CU_MEMBER_AWARDS - * CU_MEMBER_LEVEL - * CU_MEMBER_GRADE + * CU_MEMBER_AWARDS + * CU_MEMBER_LEVEL + * CU_MEMBER_GRADE + * * @return */ R autoDeleteGarbageData(); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java index e994f225..8c9ed6f9 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java @@ -9,13 +9,6 @@ import java.util.List; */ public interface IMemberRetailApi { - /** - * 定时处理收益区域 - * - * @return - */ - R checkRegion(); - /** * 取消收益区域 * diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java deleted file mode 100644 index 87cc82da..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.report.stat; - -import com.hzs.common.core.domain.R; - -/** - * 统计分析 - **/ -public interface IMemberReportServiceApi { - - /** - * 定时任务批量处理统计会员以及伞下金额业绩盒数 - **/ - R pushAmountBoxmethod(); - - /** - * 定时任务7天重算直推会员金额业绩盒数 - **/ - R repeatPushAmountBoxmethod(String startDateStr, String endDateStr); - -} diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java deleted file mode 100644 index 060b7797..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.report.stat.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * 修改政策币表DTO - * - * @author hzs - * @since 2022-08-22 - */ -@Data -public class StatisticalLogDTO implements Serializable { - - private static final long serialVersionUID = 1L; - - private Long pkMember; - /** - * 会员编号 - */ - private String memberCode; - - /** - * 标题 - */ - private String title; - - /** - * 内容 - */ - private String content; - /** - * 国家 - */ - private Integer pkCountry; - /** - * 创建人 - */ - private Long pkCreate; - - /** - * 会员ID - */ - private List pkMemberList; - /** - * 业务单号 - */ - private String businessNo; - - /** - * 审核状态 2 待审核 4 已驳回 5 已完成(审核成功) 枚举 : EApproveStatus - */ - private Integer approveStatus; - /** - * 错误信息 - */ - private String errorMsg; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java index 180b2011..2ff4f5fc 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java @@ -1,10 +1,7 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.base.BdCubasdoc; import com.hzs.common.domain.system.base.BdStorehouse; -import com.hzs.common.domain.system.base.ext.BdCubasdocExt; -import com.hzs.common.domain.system.sys.SysCorp; import com.hzs.system.base.dto.CurrencyDTO; import java.util.Collection; @@ -46,11 +43,6 @@ public interface ICurrencyServiceApi { */ R queryBdStorehouseByProvince(Integer province, Integer... type); - /** - * 根据省查询对应的发货仓库 - */ - R queryBdStorehouseById(Integer pkId); - /** * 根据省查询对应的发货仓库 * @@ -71,23 +63,4 @@ public interface ICurrencyServiceApi { */ R> findAll(); - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCubasdocById(Integer pkId, Integer pkCountry); - - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCustomerById(Integer pkId, Integer pkCountry); - - /** - * 提供查询采购组织的dubbo调用 - */ - R querySysCorp(Integer pkId, Integer pkCountry); - - /** - * 根据仓库主键查询仓库 - */ - R> queryStorehouseByIds(Set storehouseIdSet, Integer pkCountry, Integer pkCorp); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java index 1fb0ee27..06d167c9 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java @@ -3,7 +3,6 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ETransactionKey; import com.hzs.common.core.enums.EYesNo; -import com.hzs.system.base.dto.TransactionDTO; import java.util.Collection; import java.util.List; @@ -15,27 +14,6 @@ import java.util.Set; */ public interface ITransactionServiceApi { - /** - * 根据key读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param content 翻译内容 - * @param toLocal 返回语言 - * @return - */ - R readTransactionByDataBase(Integer fromCountry, String content, String toLocal); - - /** - * 根据key列表读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param contentList 翻译内容列表 - * @param toLocal 返回语言 - * @return - */ - R> readTransactionListByDataBase(Integer fromCountry, Set contentList, String toLocal); - - /** * 根据key读取缓存翻译 * @@ -72,7 +50,6 @@ public interface ITransactionServiceApi { */ R> readTransactionListDataBase(Collection pkIdList, String toLocal); - /** * 数据库+缓存同时查询 * @@ -83,17 +60,6 @@ public interface ITransactionServiceApi { */ R> readTransactionAll(Integer fromCountry, Set contentList, Set keyList, String toLocal); - - /** - * 创建国际化翻译(只写入缓存) - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @return - */ - R createTransactionCacheOnly(Integer pkCountry, ETransactionKey key, String content); - /** * 创建国际化翻译(写入缓存,上传OSS) * @@ -116,7 +82,6 @@ public interface ITransactionServiceApi { */ R createTransaction(Integer pkCountry, ETransactionKey key, String content, EYesNo cacheFlag, EYesNo uploadFlag); - /** * 移除国际化翻译(根据ID) * @@ -125,15 +90,6 @@ public interface ITransactionServiceApi { */ R removeTransactionByPkId(List pkIdList); - /** - * 移除国际化翻译(根据KEY) - * - * @param keyList 翻译key列表 - * @return - */ - R removeTransactionByKey(List keyList); - - /** * 更新国际化翻译 * @@ -145,13 +101,4 @@ public interface ITransactionServiceApi { */ R updateTransaction(Integer pkCountry, String content, Integer pkId, Boolean updateOther); - - /** - * 更新国际化翻译(异步翻译回调更新) - * - * @param transactionDTO 更新实体 - * @return - */ - R updateTransactionSync(TransactionDTO transactionDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java index 0af35a00..2ae38027 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java @@ -9,11 +9,7 @@ import java.io.Serializable; import java.util.Date; /** - * Description: 翻译操作DTO - * Author: jiang chao - * Time: 2022/9/13 9:33 - * Classname: TransactionDTO - * PackageName: com.hzs.system.base.dto + * 翻译操作DTO */ @AllArgsConstructor @NoArgsConstructor diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java deleted file mode 100644 index 5f37d4d4..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalAuto; - -import java.util.List; - -/** - * @description: 根据国家查询自动提现明细api - * @author: zhang jing - * @date: 2022/9/27 15:15 - * @param: - * @return: - **/ -public interface IWithdrawalAutoServiceApi { - - /** - * @description:根据国家查询自动提现明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:20 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalAuto(Integer pkCountry); -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java index 4fae7ec8..f656fcfd 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java @@ -3,32 +3,14 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdWithdrawal; -import java.util.List; - /** - * @description: 根据国家查询提现配置明细列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现配置明细列表api **/ public interface IWithdrawalServiceApi { /** - * @description: 根据国家查询提现配置明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询提现配置明细列表 **/ - R queryWithdrawal(Integer pkCountry,Integer pkAccount); + R queryWithdrawal(Integer pkCountry, Integer pkAccount); - /** - * @description: 查询所有自动提现的配置 - * @author: zhang jing - * @date: 2022/11/1 19:44 - * @param: [] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalByIsAuto(); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java index 005d38f5..7c407304 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java @@ -52,13 +52,4 @@ public interface CuRegionAssessMapper extends BaseMapper { **/ List queryCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - /* - * 查询到期日期是上个月的区域 - **/ - List queryDueCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /* - * 查询手动设置考核的近6个月考核记录 - **/ - List queryRegionAssessByDate(@Param("memberRetailRegionList") List memberRetailRegionList, @Param("startDate") Date startDate, @Param("endDate") Date endDate); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java deleted file mode 100644 index adb6dfd1..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.provider; - -import com.hzs.bonus.detail.ICuRegionAssessApi; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 新零售会员dubbo服务 - * @Author: jiang chao - * @Time: 2024/12/31 13:40 - * @Classname: MemberRetailProvider - * @PackageName: com.hzs.retail.member.provider - */ -@Slf4j -@DubboService -public class CuRegionAssessProvider implements ICuRegionAssessApi { - - @Autowired - private ICuRegionAssessService iCuRegionAssessService; - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R validateHandAreaAssess(Date startDate,Date endDate) { - try { - iCuRegionAssessService.validateHandAreaAssess(startDate,endDate); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理前3天收益区域异常", e); - return R.fail(e.getMessage()); - } - } - - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java index 29a77c3d..44be6d2d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java @@ -19,13 +19,6 @@ public interface ICuRegionAssessService extends IService { **/ void assessRegionByEveryMonth(String settleDate, String rangeTableName); - /** - * 定时处理会员收益区域(处理前三天) - * - * @return: void - **/ - void validateHandAreaAssess(Date startDate, Date endDate); - /* * 考核开始日期 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java index 7addfb78..14885c12 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java @@ -178,35 +178,6 @@ public class CuRegionAssessServiceImpl extends ServiceImpl cancelRegionList = new ArrayList<>(); - List dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate); - if (dueRetailRegionList.size() > 0) { - Date assessDate = DateUtils.currentMonthFirstDate(startDate); - // 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期 - Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate); - // assessDate assessDate 查询考核记录 - Map regionAssessExtMap = new HashMap<>(); - List cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate); - cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt)); - for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) { - if (regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())) { - CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember()); - if (cuRegionAssessExt.getPkId() >= 3) { - continue; - } - } - cancelRegionList.add(cuMemberRetailRegion.getPkId()); - } - } - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - private void saveCuRegionAssess(Map regionAssessMap, List regionAssessDetailList) { List longs = baseMapper.batchQueryCuRegionAssessSeq(regionAssessMap.size()); int i = 0; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml index 94f79635..740c60cc 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml @@ -161,26 +161,5 @@ and cm.member_name = #{regionAssessParam.memberName} - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java index 28296633..75e19813 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java @@ -25,7 +25,6 @@ import com.hzs.member.account.service.ICuMemberAccountService; import com.hzs.member.account.service.ICuMemberBankService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.service.ICuMemberWithdrawService; -import com.hzs.member.account.vo.CuMemberBankVO; import com.hzs.member.account.vo.CuMemberWithdrawVO; import com.hzs.member.account.vo.CuMemberWithdrawalAddVO; import com.hzs.member.base.service.ICuMemberService; @@ -42,9 +41,6 @@ import java.util.List; /** * 会员提现表 前端控制器 - * - * @author hzs - * @since 2022-09-06 */ @RestController @RequestMapping("/api/withdraw") @@ -286,14 +282,6 @@ public class ApiCuMemberWithdrawController extends BaseController { return balance; } - - @PostMapping("/auto") - public AjaxResult autoWithdrawInfo() { - cuMemberWithdrawService.autoWithdraw(); - return AjaxResult.success(); - } - - /** * 是否为整数值 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java index 2319e26a..72fd3e54 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java @@ -45,15 +45,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ Integer updateMemberAccount(CuMemberAccount cuMemberAccount); - - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkCountry(@Param("pkCountry") Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -176,14 +167,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List selectMemberAccountByPkMember(@Param(value = "pkMembers") List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(@Param("memberIdList") List memberIdList); - /** * 根据用户ID查询钱包余额 * @@ -201,33 +184,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(@Param("pkCountry") Integer pkCountry, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(@Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod, @Param("pkCountry") Integer pkCountry); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(@Param("bonusList") List bonusList, - @Param("operateType") int operateType, - @Param("pkModified") Long pkModified); - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java index 694a88ea..2b3610ab 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberWithdraw; import com.hzs.common.domain.member.account.CuMemberWithdrawExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员提现表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberWithdrawMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java index 9d6ed75e..46563624 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java @@ -1,41 +1,22 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; import com.hzs.member.account.IMemberJobServiceApi; import com.hzs.member.account.service.ICuMemberAccountDetailService; -import com.hzs.member.account.service.ICuMemberRechargeService; -import com.hzs.member.account.service.ICuMemberWithdrawService; import com.hzs.member.base.mapper.DeleteGarbageDataMapper; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; - /** * 会员模块定时任务服务提供 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:40 - * @Classname: IMemberJobServiceProvider - * @Package_name: com.hzs.member.account.provider */ - @Slf4j @DubboService public class IMemberJobServiceProvider implements IMemberJobServiceApi { @Autowired private ICuMemberAccountDetailService memberAccountDetailService; - - @Autowired - private ICuMemberWithdrawService memberWithdrawService; - - @Autowired - private ICuMemberRechargeService memberRechargeService; - @Autowired private DeleteGarbageDataMapper deleteGarbageDataMapper; @@ -51,24 +32,6 @@ public class IMemberJobServiceProvider implements IMemberJobServiceApi { return R.ok(); } - - @Override - public R automaticWithdrawal() { - try { - memberWithdrawService.autoWithdraw(); - } catch (Exception e) { - log.info("自动提现报错:", e); - return R.fail(e.getMessage()); - } - return R.ok(); - } - - - @Override - public R selectRechargeTotalAmount(Date startDate, Date endDate) { - return R.ok(memberRechargeService.selectRechargeTotalAmount(startDate, endDate)); - } - @Override public R autoDeleteGarbageData() { deleteGarbageDataMapper.deleteMemberAwards(30); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java index e869194c..60d51718 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java @@ -24,7 +24,6 @@ public interface ICuMemberAccountService extends IService { */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); - /** * 根据会员编码获取余额 * @@ -34,7 +33,6 @@ public interface ICuMemberAccountService extends IService { */ BigDecimal selectBalanceByMemberCode(Long pkMember, Integer accountType); - /** * 更新用户余额 * @@ -92,14 +90,6 @@ public interface ICuMemberAccountService extends IService { */ List selectAccountDetail(Long pkMember, Integer pkCountry); - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkcountry(Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -229,14 +219,6 @@ public interface ICuMemberAccountService extends IService { */ List selectMemberAccountByPkMember(List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(List memberIdList); - /** * 根据会员姓名与会员编号查询账户信息 * @@ -248,20 +230,6 @@ public interface ICuMemberAccountService extends IService { List selectFrozenAmountExport(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(Integer pkCountry, Integer startPeriod, Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(Integer startPeriod, Integer endPeriod, Integer pkCountry); - /** * 根据用户ID查询账户余额信息 * @@ -271,18 +239,6 @@ public interface ICuMemberAccountService extends IService { */ CuMemberRechargeAccountParam findMemberBalanceById(Integer pkAccount, Long pkMember); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified); - - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java index 2b957eb8..d951c0db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java @@ -1,6 +1,5 @@ package com.hzs.member.account.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.domain.member.account.CuMemberAccountRechargeExt; @@ -14,21 +13,14 @@ import com.hzs.member.account.vo.CuMemberRechargeDetailVO; import com.hzs.member.account.vo.CuMemberRechargeVO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** - *

* 会员充值表 服务类 - *

- * - * @author hzs - * @since 2022-09-08 */ public interface ICuMemberRechargeService extends IService { - /** * 根据批次查询充值信息 * @@ -37,7 +29,6 @@ public interface ICuMemberRechargeService extends IService { */ List selectRechargeByBatch(String batch); - /** * 会员批量充值 * @@ -46,7 +37,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer saveBatchMemberRecharge(CuMemberBatchRechargeParam batchRechargeParam); - /** * 根据充值单号更新审核状态信息 * @@ -63,7 +53,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer submitAuditMemberRecharge(MemberAccountAudit memberAccountAudit); - /** * 审核通过后插入交易明细和用户余额表 * @@ -107,7 +96,6 @@ public interface ICuMemberRechargeService extends IService { */ Boolean preCharge(String rechargeAmount, Integer pkCountry, Long pkMember, String rechargeCode, Long pkCreator); - /** * 会员端在线支付更新审批状态 * @@ -126,7 +114,6 @@ public interface ICuMemberRechargeService extends IService { */ CuMemberRecharge getCuMemberRechargeByRechargeCode(String rechargeCode); - /** * 根据充值单号与用户ID查询充值信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java index f1cabfab..6e5b6219 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java @@ -25,14 +25,6 @@ public interface ICuMemberWithdrawService extends IService { */ List getWithdrawTimes(Long pkMember); - /** - * 根据申请单号查询提现信息 - * - * @param code 单号 - * @return CuMemberWithdraw - */ - CuMemberWithdraw selectWithdrawByCode(String code); - /** * 根据批次号查询审核记录 * @@ -90,15 +82,6 @@ public interface ICuMemberWithdrawService extends IService { */ Integer withdrawPaymentPositiveByPkId(CuMemberWithdrawVO memberWithdrawVO); - /** - * 获取余额 - * - * @param pkMember 用户ID - * @param pkCountry 国家ID - * @return BigDecimal - */ - BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType); - /** * 计算本次提现应该交的个税 * @@ -128,11 +111,6 @@ public interface ICuMemberWithdrawService extends IService { */ BigDecimal computeRounding(BdWithdrawal bdWithdrawal, BigDecimal cashAmount); - /** - * 自动提现 - */ - void autoWithdraw(); - /** * 获取账户余额 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java index 48d27424..80c7ba89 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java @@ -324,11 +324,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryMemberAccountByPkcountry(Integer pkCountry) { - return baseMapper.queryMemberAccountByPkCountry(pkCountry); - } - @Override public List queryMemberAccountByMemberCode(String memberCode, List accountTypes, Integer pkCountry) { List pkAccounts = new ArrayList<>(); @@ -610,12 +605,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryAccountAndMemberInfo(List memberIdList) { - return baseMapper.queryAccountAndMemberInfo(memberIdList); - } - @Override public Object[] queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO) { CuMemberAccountExtVO cuMemberAccountExtVO; @@ -784,28 +773,12 @@ public class CuMemberAccountServiceImpl extends ServiceImpl cuMemberRechargeAccountParams = baseMapper.queryMemberAccountByMemberCode(null, Collections.singletonList(pkAccount), pkMember); return CollUtil.isNotEmpty(cuMemberRechargeAccountParams) ? cuMemberRechargeAccountParams.get(0) : null; } - - @Override - public Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified) { - return baseMapper.batchUpdateBonusAccountByPkMember(bonusList, operateType, pkModified); - } - @Override public List selectMemberBonusAccountBySourceCode(String sourceCode) { return baseMapper.selectMemberBonusAccountBySourceCode(sourceCode); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java index 7288bb72..0da7c4cd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberWithdrawServiceImpl.java @@ -20,8 +20,6 @@ import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberWithdraw; import com.hzs.common.domain.member.account.CuMemberWithdrawExt; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; import com.hzs.common.security.utils.SecurityUtils; @@ -31,15 +29,12 @@ import com.hzs.member.account.dto.MemberAccountAudit; import com.hzs.member.account.mapper.CuMemberWithdrawMapper; import com.hzs.member.account.param.CuMemberWithdrawRejectParam; import com.hzs.member.account.service.*; -import com.hzs.member.account.vo.CuMemberBankVO; import com.hzs.member.account.vo.CuMemberPetitionVO; import com.hzs.member.account.vo.CuMemberTradeVO; import com.hzs.member.account.vo.CuMemberWithdrawVO; import com.hzs.member.base.service.ICuMemberService; import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.IWithdrawalAutoServiceApi; import com.hzs.system.config.IWithdrawalProcessServiceApi; -import com.hzs.system.config.IWithdrawalServiceApi; import com.hzs.system.config.IWithdrawalTaxServiceApi; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -53,18 +48,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.time.DayOfWeek; -import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; /** - *

* 会员提现表 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service @Slf4j @@ -89,16 +77,8 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("WITHDRAW_CODE", code); - queryWrapper.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); - return getOne(queryWrapper); - } - - @Override public List selectWithdrawByBatch(String batchNO) { //根据单号查询充值信息 @@ -255,9 +225,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl withdrawalConfigs = withdrawalServiceApi.queryWithdrawalByIsAuto().getData(); - if (CollUtil.isNotEmpty(withdrawalConfigs)) { - for (BdWithdrawal withdrawal : withdrawalConfigs) { - Integer pkCountry = withdrawal.getPkCountry(); - if (Boolean.TRUE.equals(isWithdrawalCycle(pkCountry))) { - //查询提现到的币种 - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - Integer accountsType = bdAccounts.get(0).getFieldValue(); - //查询会员币种余额、锁定金额 - List cuMemberAccountExts = cuMemberAccountService.queryMemberAccountByPkcountry(pkCountry); - memberWithDrawal(withdrawal, cuMemberAccountExts, bdAccounts, accountsType, pkCountry); - } - } - } - } - - /** - * 会员提现 - * - * @param withdrawal 提现配置信息 - * @param cuMemberAccountExts 会员币种表 - * @param bdAccounts 币种信息 - * @param accountsType 配置的提现币种 - * @param pkCountry 国家ID - */ - public void memberWithDrawal(BdWithdrawal withdrawal, List cuMemberAccountExts, List bdAccounts, Integer accountsType, Integer pkCountry) { - //会员ID 银行卡ID - Long pkMember; - Long pkBank; - //余额 锁定金额 - BigDecimal balance, lockAccount; - //最高自动提现金额 - BigDecimal upperBound = withdrawal.getUpperBound(); - //最低自动提现金额 - BigDecimal lowerBound = withdrawal.getLowerBound(); - //配置文件中的提现次数 - Integer withdrawalNumber = withdrawal.getWithdrawalNumber(); - if (CollUtil.isNotEmpty(cuMemberAccountExts)) { - //查询每个会员正在参与审核的次数 - List withdrawTimesByPkCountry = baseMapper.getWithdrawTimesByPkCountry(pkCountry); - Map withdrawTimes = withdrawTimesByPkCountry.stream().collect(Collectors.toMap(CuMemberWithdrawExt::getPkMember, CuMemberWithdrawExt::getTimes)); - //汇率 - CurrencyDTO currencyDTO = cuMemberBaseService.getCurrency(pkCountry); - for (CuMemberAccountExt cuMemberAccountExt : cuMemberAccountExts) { - pkBank = cuMemberAccountExt.getPkBank(); - //是否绑定银行卡 - CuMemberBankVO memberBank = cuMemberBankService.selectCuMemberBankById(pkBank); - log.info("----------是否绑定银行卡"); - if (null != memberBank) { - log.info("----------绑定银行卡"); - pkMember = cuMemberAccountExt.getPkMember(); - //获取余额 - balance = getAvailableBalance(accountsType, cuMemberAccountExt); - //是否取整 - balance = computeRounding(withdrawal, balance); - // 提现金额在配置金额之间 - if (balance.compareTo(lowerBound) > 0 && balance.compareTo(upperBound) < 0) { - log.info("----------提现开始"); - Integer times = withdrawTimes.get(pkMember) == null ? 0 : withdrawTimes.get(pkMember); - //比较正在提现次数与配置的最大提现次数 - if (times <= withdrawalNumber) { - //本次应缴个税 - BigDecimal payIncomeTax = computeIncomeTaxValue(pkMember, balance, pkCountry, lowerBound); - //手续费金额 - BigDecimal serviceChargeAmount = computeServiceCharge(pkCountry, balance); - BigDecimal issuedAmount = balance.subtract(payIncomeTax).subtract(serviceChargeAmount); - String code = CommonUtil.createSerialNumber(EOrderPrefix.WITHDRAWAL_CODE.getValue()); - CuMember member = cuMemberService.getMember(pkMember); - String remarks = member.getMemberCode() + "自动申请提现" + balance.toString(); - CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) - .pkAccount(bdAccounts.get(0).getPkId()).pkBank(pkBank) - .pkRate(currencyDTO.getPkId()).cashAmount(balance) - .serviceCharge(serviceChargeAmount).incomeTax(payIncomeTax) - .issuedAmount(issuedAmount).withdrawCode(code).remarks(remarks).build(); - cuMemberWithdraw.setApproveState(EApproveStatus.WAIT_SUBMIT.getValue()); - cuMemberWithdraw.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cuMemberWithdraw.setPkCountry(pkCountry); - cuMemberWithdraw.setPkCreator(pkMember); - //保存提现、交易流水、余额信息 - baseMapper.insert(cuMemberWithdraw); - this.updateTradeAndBalancd(cuMemberWithdraw, EOperationMethod.INSERT); - } - } - } - } - } - } - - /** * 获取余额 * @@ -487,40 +362,6 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl listR = withdrawalAutoServiceApi.queryWithdrawalAuto(pkCountry).getData(); - for (BdWithdrawalAuto withdrawalAuto : listR) { - Integer withdrawalCycle = withdrawalAuto.getWithdrawalCycle(); - if (dayOfWeekNum.equals(withdrawalCycle)) { - return true; - } - - } - return false; - } - - @Override - public BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType) { - //提现账户 - if (null == accountsType) { - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - accountsType = bdAccounts.get(0).getFieldValue(); - } - //查询账户余额 - return cuMemberAccountService.selectBalanceByMemberCode(pkMember, accountsType); - } - @Override public BigDecimal computeIncomeTaxValue(Long pkMember, BigDecimal cashAmount, Integer pkCountry, BigDecimal minAmount) { //获取个税配置 @@ -774,13 +615,13 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); @@ -793,7 +634,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl cuMemberWithdrawList = baseMapper.selectList(wrapper); Integer pkCountry = SecurityUtils.getPkCountry(); - if(CollUtil.isNotEmpty(cuMemberWithdrawList)){ + if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { for (CuMemberWithdraw cuMemberWithdraw : cuMemberWithdrawList) { BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder() .tradeCode(cuMemberWithdraw.getWithdrawCode()).pkCountry(pkCountry) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java index afcaece0..21579e39 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java @@ -7,15 +7,11 @@ import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; + import java.io.Serializable; /** * 会员银行卡VO - * @Description: - * @Author: ljc - * @Time: 2023/2/9 15:31 - * @Classname: CuMemberBankVO - * @Package_name: com.hzs.member.account.vo */ @Data @AllArgsConstructor @@ -66,5 +62,5 @@ public class CuMemberBankVO implements Serializable { /** * logo图片 */ - private String logo; + private String logo; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java index 011c58ac..b561e5d0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java @@ -54,13 +54,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 重新判断收益区域数据 - * - * @return - */ - List listCheckRegionMember(); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java index 8e78ffa0..540a0fb8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java @@ -19,17 +19,6 @@ public class MemberRetailProvider implements IMemberRetailApi { @Autowired private ICuMemberRetailRegionService iCuMemberRetailRegionService; - @Override - public R checkRegion() { - try { - iCuMemberRetailRegionService.checkRegion(); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理收益区域异常", e); - return R.fail(e.getMessage()); - } - } - @Override public R cancelRegion(List pkIdList) { try { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 464ed89e..16c34307 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -7,18 +7,9 @@ import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; import java.util.List; -import java.util.Map; public interface ICuMemberRetailAchieveService extends IService { - /** - * 查询会员盒数 - * - * @param pkMember 会员ID - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberSmallBox(Long pkMember, Integer pkCountry, Integer systemType); - /** * 查询会员大小区业绩 * @@ -78,15 +69,6 @@ public interface ICuMemberRetailAchieveService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 定时处理收益区域 - */ - void checkRegion(); - /** * 取消收益区域 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index 549489da..e7ec2e40 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; @@ -22,7 +21,6 @@ import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; @@ -51,64 +49,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable) - .memberRetailSTable(getTableSName()).memberCode(cuMember.getMemberCode()) - .pkMember(pkMember).pkMemberList(pkMemberList).build(); - - //查询会员是否激活 - // Integer enableStatus = baseMapper.selectMemberActiveState(memberAchieveVO); - Integer enableStatus = cuMember.getIsActivate(); - if (null != enableStatus && enableStatus.equals(EYesNo.YES.getIntValue())) { - //查询总盒数 - BigDecimal totalBox = baseMapper.selectMemberTotalBox(memberAchieveVO); - if (null != totalBox) { - BigDecimal maxBox = BigDecimal.ZERO; - //查询是否配置注水 - Integer total = baseMapper.selectWaterInjection(cuMember.getMemberCode()); - if (null != total && total > 0) { - //查询注水最大盒数 - maxBox = baseMapper.selectMemberBoxWaterInjection(memberAchieveVO); - } else { - //查询无注水最大盒数 - maxBox = baseMapper.selectMemberBoxNoWaterInjection(memberAchieveVO); - } -// memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox - maxBox).build(); - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox.subtract(maxBox)).build(); - //总盒数大于2800的时候显示2800 - GradeDTO lastGrate = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - //配置中的总盒数 - BigDecimal totalBoxConfig = lastGrate.getBoxTotal(); -// BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox() > totalBoxConfig ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox().compareTo(totalBoxConfig) > 0 ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - memberRetailAchieveVO.setTotalBox(totalBoxMax); - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - return memberRetailAchieveVO; - } - - @Override public CuMemberRetailAchieveVO selectMemberAchieve(Long pkMember, Integer pkCountry, Integer systemType) { //查询会员昨日业绩 @@ -143,18 +83,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl selectTableNameIsExist(List tableNames) { - return baseMapper.selectTableNameIsExist(tableNames); - } - - /** * 转化万单位、汇率换算 * @@ -448,64 +360,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - // 2025年6月11日 取伞下 + 自己的ID -// List pkMemberList = baseMapper.selectSubMemberIdByRootMember(pkMember, systemType); - //根据国家查汇率 - BigDecimal rate = iCuMemberBaseService.getCurrency(pkCountry).getInExchangeRate(); - //查询自己业绩 - List memberSelfAchieveList = new ArrayList<>(); - - //会员业绩 - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable).pkMember(pkMember).systemType(systemType).build(); - CuMemberRetailAchieveVO orderAchieveVO = baseMapper.selectMemberOrderSumAchieveByPkMember(memberAchieveVO); - if (null != orderAchieveVO && orderAchieveVO.getArealPv().compareTo(BigDecimal.ZERO) > 0) { - orderAchieveVO.setPkMember(pkMember); - memberSelfAchieveList.add(orderAchieveVO); - } - //查询伞下业绩 - if (CollUtil.isNotEmpty(pkMemberList)) { - List memberPushAchieveList = getMemberPushSumAchieve(pkMemberList, memberRetailTable, memberSecondTable, systemType); - if (CollUtil.isNotEmpty(memberPushAchieveList)) { - memberSelfAchieveList.addAll(memberPushAchieveList); - } - } - if (CollUtil.isEmpty(memberSelfAchieveList)) { - return CuMemberRetailAchieveVO.builder().smallAreaPv(BigDecimal.ZERO).bigArealPv(BigDecimal.ZERO).build(); - } - return getMemberBigAndSmallAchieve(memberSelfAchieveList, rate); - } - - - /** - * 查询会员直推业绩(累计) - * - * @param pkMemberList 直推会员ID - * @return CuMemberAchieveVO - */ - private List getMemberPushSumAchieve(List pkMemberList, String memberRangeTable,String memberSecondTable, Integer systemType) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() - .memberRetailTable(memberRangeTable) - .memberRetailSTable(memberSecondTable) - .pkMemberList(pkMemberList).systemType(systemType).build(); - return baseMapper.selectMemberSumAchieve(memberAchieveVO); - } - - /** * 查询不前时间是否是本月第一天 * @@ -514,11 +368,9 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl implements ICuMemberRetailRegionService { - @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired private RedisService redisService; @@ -99,80 +94,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl memberList = baseMapper.listCheckRegionMember(); - - if (CollectionUtil.isNotEmpty(memberList)) { - memberList.parallelStream().forEach(tmpMember -> { - if (ENoticeWebsiteType.ADMIN.getValue() == tmpMember.getSource()) { - log.info("定时任务区域有效, 会员 {} 后台配置,不取消收益区域", tmpMember.getPkId()); - return; - } - - // 当前时间 - Date nowDate = new Date(); - - if (tmpMember.getGradeValue() < EGrade.S_VIP.getValue()) { - // 会员等级不足V5,需要关掉收益区域 - log.info("定时任务区域有效, 会员 {} 等级 {} 不足取消收益区域", tmpMember.getPkId(), tmpMember.getGradeValue()); - this.update(Wrappers.lambdaUpdate() - .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) - .set(CuMemberRetailRegion::getModifiedTime, nowDate) - ); - } else { -// // 获取小市场业绩 -// CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(tmpMember.getPkId(), CountryConstants.CHINA_COUNTRY, tmpMember.getSystemType()); -// if (retailAchieve.getSmallAreaPv().compareTo(BigDecimal.ZERO) <= 0) { -// // 正常有区域业绩肯定达标,由2万突然变0基本不可能,此处暂时不处理 -// log.info("定时任务区域有效, 会员 {} 小市场业绩归0,暂时不取消收益区域", tmpMember.getPkId()); -// return; -// } -// // 2025.02.07 确认需求,如果是历史已经升上去的,还是走老逻辑只校验小市场 -// String checkDate = "2025-02-10 00:00:00"; -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// checkDate = "2025-02-07 00:00:00"; -// } -// if (tmpMember.getCreationTime().compareTo(DateUtils.parseDateOne(checkDate, DateUtils.YYYY_MM_DD_HH_MM_SS)) > 0) { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// || retailAchieve.getBigArealPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// ) { -// // 大市场、小市场业绩小于2万,需要取消收益区域 -// log.info("2.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } else { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0) { -// // 小市场业绩小于2万,需要取消收益区域 -// log.info("1.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } - } - }); - } - } - @Override public void cancelRegion(List pkIdList) { this.update(Wrappers.lambdaUpdate() diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml index 5c02d7bc..daf4be14 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml @@ -235,19 +235,6 @@
- - - select a.pk_member, @@ -1064,25 +1004,6 @@ - - - - - - MERGE INTO cu_member_account m - USING - ( - - select #{item.pkMember} pk_member, - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - - - #{item.account4} account4, - #{item.withdrawAccount4} withdrawAccount4, - - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - #{item.withdrawAccount4} withdrawAccount4, - - FROM DUAL - - ) t - ON ( t.pk_member=m.pk_member and m.pk_member in - - #{item.pkMember} - ) - WHEN MATCHED THEN - UPDATE SET - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - m.MODIFIED_TIME = sysdate,m.pk_modified = #{pkModified} - - - - - - - select ${to} - from BD_TRANSACTION t - where DEL_FLAG = 0 - and IS_CACHE = 1 - and ${from} = #{content} - and ${to} is not null - and rownum = 1 - - select @@ -361,15 +275,9 @@ a.pk_country, a.pk_settle_country, a.enable_status, - new_box_num, - consume_box_num, - month_box_num, new_consume_pv, consume_pv, month_consume_pv, - team_new_box_num, - team_box_num, - team_month_box_num, team_new_pv, team_consume_pv, team_month_pv, @@ -383,13 +291,8 @@ bw.awards_value, bw.awards_name, bwa.awards_value share_awards_value, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, - a.all_team_new_box_num, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_new_pv, a.all_team_consume_pv, a.all_team_month_pv, @@ -437,24 +340,14 @@ a.income_status, a.pk_country, a.pk_settle_country, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, a.system_type, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_consume_pv, a.all_team_month_pv, - new_box_num, - consume_box_num, - month_box_num, new_consume_pv, consume_pv, month_consume_pv, - team_new_box_num, - team_box_num, - team_month_box_num, team_new_pv, team_consume_pv, team_month_pv, @@ -594,13 +487,8 @@ bw.awards_value, bw.awards_name, bwa.awards_value share_awards_value, - a.big_box_num, - a.small_box_num, a.big_team_pv, a.small_team_pv, - a.all_team_new_box_num, - a.all_team_box_num, - a.all_team_month_box_num, a.all_team_new_pv, a.all_team_consume_pv, a.all_team_month_pv, @@ -698,33 +586,21 @@ cm.pk_vertex, nvl(b.pk_rate, bt.pk_id) pk_rate, nvl(cm.is_activate, a.enable_status) enable_status, - a.new_box_num, - nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, - nvl(b.month_box_num, 0) + nvl(a.new_box_num, 0) month_box_num, a.new_consume_pv, nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, - a.team_new_box_num, - nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, - nvl(b.team_month_box_num, 0) + nvl(a.team_new_box_num, 0) team_month_box_num, a.team_new_pv, nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, a.team_new_amount, nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, - nvl(b.big_box_num, 0) big_box_num, - nvl(b.small_box_num, 0) small_box_num, nvl(b.big_team_pv, 0) big_team_pv, nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - a.all_new_box_num, a.all_new_consume_pv, - a.all_team_new_box_num, a.all_team_new_pv, - nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num, - nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv, + nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv, bg.grade_value, bg.grade_name, @@ -769,13 +645,7 @@ cm.pk_parent, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, - nvl(b.consume_box_num, 0) + nvl(a.new_box_num, 0) consume_box_num, - nvl(b.team_box_num, 0) + nvl(a.team_new_box_num, 0) team_box_num, - nvl(b.big_box_num, 0) big_box_num, - nvl(b.small_box_num, 0) small_box_num, - nvl(b.all_team_box_num, 0) + nvl(a.all_team_new_box_num, 0) all_team_box_num, - nvl(b.all_team_month_box_num, 0) + nvl(a.all_team_new_pv, 0) all_team_month_box_num, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_box_num, 0) all_team_consume_pv, + nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv from cu_member cm left join ${secondTableName} a @@ -789,27 +659,17 @@ - SELECT cmsr.pk_id pkId, - cmsr.member_code memberCode, - cmsr.team_box_num teamBoxNum, - cmsr.small_box_num smallBoxNum, - cmsr.total_team_pv totalTeamPv, - cmsr.small_area_pv smallAreaPv, - cmsp.SETTLE_DATE settleDate - FROM CU_MEMBER_SPE_RETAIL cmsr - INNER JOIN CU_MEMBER_SETTLE_PERIOD cmsp ON cmsp.pk_id = cmsr.period - where cmsr.DEL_FLAG = 0 - - and cmsr.pk_id=#{pkId} - - - and cmsr.SYSTEM_TYPE=#{systemType} - - - and cmsr.pk_Country=#{pkCountry} - - - and cmsr.member_code like #{memberCode} || '%' - - - and cmsp.SETTLE_DATE >= to_date(#{startDate}, 'yyyy-mm-dd') - - - and cmsp.SETTLE_DATE <= to_date(#{endtDate} || ' 23:59:59', 'yyyy-mm-dd hh24:mi:ss') - - order by cmsr.CREATION_TIME desc - - - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java index f5bcd896..dc5b0b8c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java @@ -1,6 +1,5 @@ package com.hzs.retail.member.controller.api; - import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -18,19 +17,12 @@ import java.util.List; /** * 会员首页 - * - * @Description: - * @Author: ljc - * @Time: 2023/5/4 21:06 - * @Classname: ApiHomePageController - * @Package_name: com.hzs.member.base.controller.api */ @Slf4j @RequestMapping("/api/retail-member") @RestController public class ApiRetailHomePageController extends BaseController { - @Autowired private ICuMemberRetailAchieveService retailAchieveService; @@ -45,20 +37,16 @@ public class ApiRetailHomePageController extends BaseController { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); Integer systemType = SecurityUtils.getSystemType(); - if(ObjectUtil.isEmpty(systemType)){ + if (ObjectUtil.isEmpty(systemType)) { systemType = 2; } CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(pkMember, pkCountry, systemType); CuMemberRetailAchieveVO vo = CuMemberRetailAchieveVO.builder() - .totalBox(result.getTotalBoxNum()) - .bigAreaBox(result.getBigRangeTotalBoxNum()) - .smallAreaBox(result.getSmallRangeTotalBoxNum()) .totalSumPv(result.getTotalPv()) .bigArealPv(result.getBigRangeTotalPv()) .smallAreaPv(result.getSmallRangeTotalPv()) .build(); return AjaxResult.success(vo); -// return AjaxResult.success(retailAchieveService.selectMemberSmallBox(pkMember, pkCountry, systemType)); } /** @@ -134,52 +122,6 @@ public class ApiRetailHomePageController extends BaseController { return AjaxResult.success(retailAchieveService.selectMemberBigSmallAchieveDetail(pkMember, pkCountry, systemType)); } - - /** - * 查询会员大小区盒数(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-small-box") - public AjaxResult selectMemberBigSmallBox(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigSmallBox(param)); - } - - - /** - * 查询大区盒数列表(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-box-list") - public AjaxResult selectMemberBigBoxList(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigBoxList(param)); - } - - /** - * 查询会员小区盒数列表(市场动态) - * - * @return AjaxResult - */ - @PostMapping("/small-box-list") - public TableDataInfo selectMemberSmallBoxList(@RequestBody CuMemberRetailAchieveVO cuMemberRetailAchieveVO) { - Long pkMember = SecurityUtils.getUserId(); - cuMemberRetailAchieveVO.setPkMember(pkMember); - Integer systemType = SecurityUtils.getSystemType(); - cuMemberRetailAchieveVO.setSystemType(systemType); - cuMemberRetailAchieveVO.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberRetailAchieveVO.setPkMemberList(retailAchieveService.selectDirectPushByPkMember(pkMember, systemType)); - startPage(); - List retailAchieveVOList = retailAchieveService.selectMemberSmallBoxList(cuMemberRetailAchieveVO); - return getDataTable(retailAchieveVOList); - } - /** * 市场动态 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 34c86e7c..04fc622d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -9,9 +9,7 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.msg.AreaConstants; import com.hzs.common.core.enums.EGrade; @@ -26,7 +24,6 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; import com.hzs.common.domain.system.base.BdArea; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.service.ICuMemberService; import com.hzs.retail.member.param.RetailMemberRegionParam; @@ -40,11 +37,9 @@ import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; -import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -65,14 +60,12 @@ public class RetailMemberController extends BaseController { @Autowired private ICuMemberRetailRegionService iCuMemberRetailRegionService; @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired private ICuMemberRetailAchieveService retailAchieveService; @DubboReference IAreaServiceApi iAreaServiceApi; @DubboReference - private IGradeServiceApi gradeServiceApi; + IGradeServiceApi gradeServiceApi; /** * 获取登录会员信息 @@ -87,6 +80,7 @@ public class RetailMemberController extends BaseController { } return AjaxResult.success(retailMemberInfoVO); } + @GetMapping("/get-shared-image") public AjaxResult getSharedImage() { JSONObject result = new JSONObject(); @@ -136,46 +130,26 @@ public class RetailMemberController extends BaseController { .regionStatus(EYesNo.YES.getIntValue()) .build()); } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ + if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()) { + GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); + if (notFirst) { + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if (ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >= 0 + ) { + return AjaxResult.success(RetailMemberRegionVO.builder() .regionStatus(EYesNo.YES.getIntValue()) .build()); } - }else{ - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - }else{ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - } + } else { + return AjaxResult.success(RetailMemberRegionVO.builder() + .regionStatus(EYesNo.YES.getIntValue()) + .build()); + } // if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) // && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 // && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 @@ -185,7 +159,6 @@ public class RetailMemberController extends BaseController { // .regionStatus(EYesNo.YES.getIntValue()) // .build()); // } - } } // 达到条件,但是没有选择区域,需要弹窗选择区域 // 验证伞下业绩+自己是否累计30W @@ -238,52 +211,27 @@ public class RetailMemberController extends BaseController { if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { canSet = true; } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ + if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); + int countNum = iCuMemberRetailRegionService.count(queryWrapper); + boolean notFirst = countNum > 0; + if (notFirst) { + LocalDate today = LocalDate.now(); + DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; + CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); + if (ObjectUtil.isNotEmpty(currentMonthVO) + && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 + && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >= 0 + ) { canSet = true; } - }else{ - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); - int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean notFirst = countNum > 0; - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - canSet = true; - } - }else{ - canSet = true; - } - } -// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 -// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 -// ){ -// canSet = true; -// } + } else { + canSet = true; } } } - if(!canSet){ + if (!canSet) { return AjaxResult.error("还未达到选择收益区域条件"); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java index 9b8436ad..00746509 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java @@ -8,7 +8,6 @@ import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; import com.hzs.retail.member.vo.MarketDynamicsDetailVO; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.List; /** @@ -23,14 +22,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectDirectPushByPkMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); - /** - * 查询大区用户信息 - * - * @param cuMemberAchieveVO - * @return - */ - CuMemberRetailAchieveVO selectBigAreaByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询表名是否存在 * @@ -56,32 +47,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectMemberParentByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** - * 查询会员没有注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxNoWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员最大盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberTotalBox(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询会员业绩 * @@ -130,14 +95,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper getMarketDynamicsDetail(@Param("param") MarketDynamicsQueryDateParam param); - /** - * 查询当天自己新增盒数 - * - * @param param 入参 - * @return Integer - */ - BigDecimal selectSelfNewBox(CuMemberRetailAchieveVO param); - - /** - * 查询会员大小区盒数(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigSmallBox(CuMemberRetailAchieveVO param); - - - /** - * 查询大区盒数列表(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param); - - /** - * 查询会员小区盒数列表(市场动态) - * - * @param param 入参 - * @return List - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - List selectSubMemberIdByRootMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java index 85e209b3..4eea64c3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java @@ -39,7 +39,7 @@ public class MarketDynamicsQueryDateParam implements Serializable { private Integer pageNum = 1; private Integer pageSize = 10; /** - * 查询类型 1-盒数, 2-业绩 + * 查询类型 2-业绩 */ private Integer queryType; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 16c34307..2545fd66 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -18,14 +18,6 @@ public interface ICuMemberRetailAchieveService extends IService - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - /** * 获取会员结算明细 * @param pkMember diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index e7ec2e40..8673f89c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -20,9 +20,7 @@ import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; -import com.hzs.system.config.IGradeServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -192,18 +190,17 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl memberAchieveList, BigDecimal rate) { //查询最大业绩 - if(ObjectUtil.isEmpty(memberAchieveList)){ + if (ObjectUtil.isEmpty(memberAchieveList)) { return null; } for (CuMemberRetailAchieveVO cuMemberRetailAchieveVO : memberAchieveList) { - if(ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())){ + if (ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())) { cuMemberRetailAchieveVO.setArealPv(BigDecimal.ZERO); } } CuMemberRetailAchieveVO maxAchieveVO = memberAchieveList.stream().max(Comparator.comparing(CuMemberRetailAchieveVO::getArealPv)).get(); //查询小区业绩 BigDecimal smallAreaPv = memberAchieveList.stream().filter(achieveVO -> !achieveVO.getPkMember().equals(maxAchieveVO.getPkMember())).map(vo -> null == vo.getArealPv() ? BigDecimal.ZERO : vo.getArealPv()).reduce(BigDecimal.ZERO, BigDecimal::add); -// return CuMemberRetailAchieveVO.builder().smallAreaPv(getBigDecimal(smallAreaPv, rate)).pkBigMember(maxAchieveVO.getPkMember()).bigArealPv(getBigDecimal(maxAchieveVO.getArealPv(), rate)).build(); return CuMemberRetailAchieveVO.builder() .smallAreaPv(smallAreaPv) .pkBigMember(maxAchieveVO.getPkMember()) @@ -212,17 +209,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList, String memberRangeTable) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRangeTable).pkMemberList(pkMemberList).build(); - return baseMapper.selectBigAreaByPkMember(memberAchieveVO); - } - /** * 查询会员直推业绩 @@ -242,8 +228,8 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember) { - //查询参数 - getParam(param); - //查询自己的业绩 - BigDecimal selfBox = baseMapper.selectSelfNewBox(param); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigSmallBox(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); -// BigDecimal selfNewBox = null == selfBox ? 0 : selfBox; - BigDecimal selfNewBox = BigDecimal.ZERO; - if(ObjectUtil.isNotEmpty(selfBox)){ - selfNewBox = selfBox; - } - //判断大小市场增加自己新增的盒数 - if (!pkMember.equals(pkBigMember)) { -// cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox().add(selfNewBox)); - } else { -// cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox().add(selfNewBox)); - } - } - return cuMemberRetailAchieveVO; - } - return CuMemberRetailAchieveVO.builder().bigAreaBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - - - /** - * 获取会员金额、业绩、盒数表 - * - * @return String - */ - private String getAchieveAndBoxTableName(String date) { - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(date); - if(ObjectUtil.isNotEmpty(cuMemberSettlePeriod)){ - int period = cuMemberSettlePeriod.getPkId(); - return TableNameConstants.CU_MEMBER_AMOUNT_BOX + period; - } - return ""; - } - - @Override - public CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - if (null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - param.setPkMemberList(Collections.singletonList(pkBigMember)); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigBoxList(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); - } - return cuMemberRetailAchieveVO; - } - return null; - } - - - private CuMemberRetailAchieveVO getParam(CuMemberRetailAchieveVO param) { - //上月最后一天的表名 - String upLastMonth = DateUtils.beforeMonthLastDateStr(new Date()); - param.setRetailUpMonthTable(getAchieveAndBoxTableName(upLastMonth)); - //昨天的表名 - String yesterdayTableName = LocalDate.now().minus(1, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setMemberRetailTable(getAchieveAndBoxTableName(yesterdayTableName)); - //前天的表名 - String beforeYesterdayTableName = LocalDate.now().minus(2, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setBeforeYesterdayTableName(getAchieveAndBoxTableName(beforeYesterdayTableName)); - //是否是当月第一天 - int isFirst = isFirstDayOfMonth() ? EYesNo.YES.getIntValue() : EYesNo.NO.getIntValue(); - param.setIsFirst(isFirst); - //当天表名 - param.setMemberRetailSTable(getTableSName()); - return param; - } - - @Override - public List selectMemberSmallBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - List pkMemberList = param.getPkMemberList(); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - //删除大区后,如果为空,则不查询 - if (CollUtil.isNotEmpty(pkMemberList)) { - return baseMapper.selectMemberSmallBoxList(param); - } - } - return new ArrayList<>(); - } @Override public CuMemberRetailDataStatisticsResultVO getRetailDataStatisticsDetail(Long pkMember, Integer pkCountry, Integer systemType) { @@ -539,7 +398,7 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if(CollUtil.isEmpty(pkMemberList)){ - return new PageResult(0, new ArrayList<>()); + if (CollUtil.isEmpty(pkMemberList)) { + return new PageResult<>(0, new ArrayList<>()); } param.setPkIdList(pkMemberList); List detailVOList = baseMapper.getMarketDynamicsDetail(param); @@ -568,40 +427,11 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl detailVOList, CuMember cuMember){ + private static final Long SELF_VIRTUAL_ID = -1000L; + private static final String SELF_VIRTUAL_NAME = "个人消费虚拟分支"; + + public static CuMemberRetailDataStatisticsResultVO getCalcMap(List detailVOList, CuMember cuMember) { Long pkId = cuMember.getPkId(); // 非激活直接返0 // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(BigDecimal.ZERO) .totalPv(BigDecimal.ZERO) - .bigRangeTotalBoxNum(BigDecimal.ZERO) .bigRangeTotalPv(BigDecimal.ZERO) - .smallRangeTotalBoxNum(BigDecimal.ZERO) .smallRangeTotalPv(BigDecimal.ZERO) .build(); } calcDetailVOTotalField(detailVOList, pkId); addVirtualBranch(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 excludeDailySettlementData(detailVOList); } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } - CuMemberRetailDataStatisticsDetailVO bigRangeBox = getBigRangeBoxDetailVO(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO bigRangePv = getBigRangePVDetailVO(detailVOList, pkId); -// BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum() - bigRangeBox.getTotalBoxNum(); - BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum().subtract(bigRangeBox.getTotalBoxNum()); - if(smallRangeTotalBoxNum.compareTo(BigDecimal.ZERO) < 0){ - smallRangeTotalBoxNum = BigDecimal.ZERO; - } BigDecimal smallRangeTotalPv = total.getTotalPv().subtract(bigRangePv.getTotalPv()); - if(smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0){ + if (smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0) { smallRangeTotalPv = BigDecimal.ZERO; } return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(total.getTotalBoxNum()) .totalPv(formatPV(total.getTotalPv())) - .bigRangeTotalBoxNum(bigRangeBox.getTotalBoxNum()) .bigRangeTotalPv(formatPV(bigRangePv.getTotalPv())) - .smallRangeTotalBoxNum(smallRangeTotalBoxNum) .smallRangeTotalPv(formatPV(smallRangeTotalPv)) .build(); } + /** * 计算集合内数据总数 + * * @param detailVOList */ - public static void calcDetailVOTotalField(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getTeamBoxNum()) - .add(detailVO.getSNewBoxNum()) - .add(detailVO.getSTeamNewBoxNum()) - .add(detailVO.getBigBoxNum()) - .add(detailVO.getSmallBoxNum()) - ); -// detailVO.setTotalBoxNum( -// detailVO.getConsumeBoxNum() // 个人累计消费盒数(日结) -//// + detailVO.getNewBoxNum() // 个人新增盒数(日结) -// + detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -//// + detailVO.getTeamNewBoxNum() // 团队新增盒数(日结) -// + detailVO.getSNewBoxNum() // 个人新增消费盒数(秒结) -// + detailVO.getSTeamNewBoxNum() // 团队新增盒数(秒结) -// + detailVO.getBigBoxNum() // 个人注水大区盒数(日结) -// + detailVO.getSmallBoxNum() // 个人注水小区盒数(日结) -// ); + public static void calcDetailVOTotalField(List detailVOList, Long pkId) { + detailVOList.forEach(detailVO -> { detailVO.setTotalPv( detailVO.getConsumePv() -// .add(detailVO.getNewConsumePv()) - .add(detailVO.getTeamConsumePv()) -// .add(detailVO.getTeamNewPv()) - .add(detailVO.getSNewConsumePv()) - .add(detailVO.getSTeamNewPv()) + .add(detailVO.getTeamConsumePv()) + .add(detailVO.getSNewConsumePv()) + .add(detailVO.getSTeamNewPv()) ); }); } /** * 排除昨日日结数据 + * * @param detailVOList */ - public static void excludeDailySettlementData(List detailVOList){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getTeamBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -// ); + public static void excludeDailySettlementData(List detailVOList) { + detailVOList.forEach(detailVO -> { detailVO.setTotalPv( detailVO.getTotalPv().subtract(detailVO.getTeamConsumePv()) ); }); } - /** - * 排除昨日日结注水数据 - * 自己的注水不排除 - * @param detailVOList - */ - public static void excludeWaterInjectionData(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - if(!detailVO.getPkId().equals(pkId)){ - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getBigBoxNum()).subtract(detailVO.getSmallBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getBigBoxNum() // 注水大区 -// - detailVO.getSmallBoxNum() // 注水小区 -// ); - } - }); - } - /** * 增加虚拟分支 主要为 * 1.自己的消费总数 @@ -158,103 +98,50 @@ public class DataStatisticsUtil { * * @param detailVOList */ - public static void addVirtualBranch(List detailVOList, Long pkId){ + public static void addVirtualBranch(List detailVOList, Long pkId) { CuMemberRetailDataStatisticsDetailVO detailVO = getDetailVOByPKID(detailVOList, pkId); - if(ObjectUtil.isNotEmpty(detailVO)){ + if (ObjectUtil.isNotEmpty(detailVO)) { CuMemberRetailDataStatisticsDetailVO selfVirtualDetailVO = getCuMemberRetailDataStatisticsDetailVO(detailVO); detailVOList.add(selfVirtualDetailVO); -// if(detailVO.getBigBoxNum() > 0 || detailVO.getSmallBoxNum() > 0){ - if(detailVO.getBigBoxNum().compareTo(BigDecimal.ZERO) >= 0 || detailVO.getSmallBoxNum().compareTo(BigDecimal.ZERO) >= 0){ - CuMemberRetailDataStatisticsDetailVO bigRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(BIG_RANGE_VIRTUAL_ID) - .memberCode(BIG_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getBigBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - CuMemberRetailDataStatisticsDetailVO smallRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(SMALL_RANGE_VIRTUAL_ID) - .memberCode(SMALL_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getSmallBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - detailVOList.add(bigRangeVirtualDetailVO); - detailVOList.add(smallRangeVirtualDetailVO); - } } - } private static CuMemberRetailDataStatisticsDetailVO getCuMemberRetailDataStatisticsDetailVO(CuMemberRetailDataStatisticsDetailVO detailVO) { return CuMemberRetailDataStatisticsDetailVO.builder() .pkId(SELF_VIRTUAL_ID) .memberCode(SELF_VIRTUAL_NAME) - .totalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getSNewBoxNum()) - ) -// .totalBoxNum( -// detailVO.getConsumeBoxNum() -//// + detailVO.getNewBoxNum() -// + detailVO.getSNewBoxNum() -// ) .totalPv( detailVO.getConsumePv() .add(detailVO.getSNewConsumePv()) ) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) .build(); } - /** - * 移除总数Top1 - * @param detailVOList - */ - public static List getSmallRangeList(List detailVOList){ - List result = new ArrayList<>(); - BigDecimal maxTotalBoxNum = getMaxTotalBoxNum(detailVOList); - if (maxTotalBoxNum == null) { - return new ArrayList<>(detailVOList); - } - boolean removed = false; - for (CuMemberRetailDataStatisticsDetailVO vo : detailVOList) { - if (!removed && Objects.equals(vo.getTotalBoxNum(), maxTotalBoxNum)) { - removed = true; - } else { - result.add(vo); - } - } - return result; - } - /** * 根据ID获取对应数据 + * * @param detailVOList * @return */ - public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId){ + public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId) { return detailVOList.stream().filter(o -> o.getPkId().equals(pkId)).findFirst().orElse(null); } /** * 组装市场动态列表数据 + * * @param detailVOList */ - public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param){ - if(StrUtil.isNotEmpty(param.getKeyWords())){ + public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param) { + if (StrUtil.isNotEmpty(param.getKeyWords())) { detailVOList = detailVOList.stream().filter(o -> o.getMemberCode().contains(param.getKeyWords()) || o.getMemberName().contains(param.getKeyWords())).collect(Collectors.toList()); } - MarketDynamicsDetailVO bigRange = null; - if(param.getQueryType().equals(1)){ + MarketDynamicsDetailVO bigRange; + if (param.getQueryType().equals(1)) { bigRange = detailVOList.stream() -// .max(Comparator.comparingInt(MarketDynamicsDetailVO::getTotalBoxNum)) .max(Comparator.comparing(MarketDynamicsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) .orElse(null); - }else{ + } else { bigRange = detailVOList.stream() .max(Comparator.comparing(MarketDynamicsDetailVO::getTodayPv)) .orElse(null); @@ -266,35 +153,22 @@ public class DataStatisticsUtil { return result; } - private static BigDecimal getMaxTotalBoxNum(List detailVOList) { + private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId) { return detailVOList.stream() - .map(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum) - .filter(Objects::nonNull) -// .max(Integer::compare) - .max(BigDecimal::compareTo) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangeBoxDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) -// .max(Comparator.comparingInt(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum)) - .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) + .filter(vo -> !vo.getPkId().equals(pkId)) .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalPv)) .orElse(null); } - public static BigDecimal formatPV(BigDecimal pv){ + + public static BigDecimal formatPV(BigDecimal pv) { return pv.divide( new BigDecimal("10000"), 4, RoundingMode.FLOOR ); } - public static void setQueryDateParam(MarketDynamicsQueryDateParam param){ + + public static void setQueryDateParam(MarketDynamicsQueryDateParam param) { LocalDate.now(ZoneId.of("Asia/Shanghai")); LocalDate currentDate = LocalDate.now(); LocalDate yesterdayDate = currentDate.minusDays(1); @@ -303,57 +177,22 @@ public class DataStatisticsUtil { param.setNowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setYesterdayDate(yesterdayDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setLastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("当前日期: " + currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("上一个月最后一天: " + lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// return MarketDynamicsQueryDateParam.builder() -// .nowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .build(); } - - public static CuMemberRetailDataStatisticsDetailVO getBigRangeWithPV(List detailVOList, CuMember cuMember){ - Long pkId = cuMember.getPkId(); - // 非激活直接返0 - // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ - return CuMemberRetailDataStatisticsDetailVO.builder() - .build(); - } - calcDetailVOTotalField(detailVOList, pkId); - addVirtualBranch(detailVOList, pkId); - CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ - // 昨日非激活 排除昨日日结表数据 - excludeDailySettlementData(detailVOList); - } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } - return getBigRangePVDetailVO(detailVOList, pkId); - } - - - public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember){ + public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember) { Long pkId = cuMember.getPkId(); BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO(); // 非激活直接返0 // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { return null; } calcDetailVOTotalField(detailVOList, pkId); addVirtualBranch(detailVOList, pkId); - CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 excludeDailySettlementData(detailVOList); } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId); bigAndSmallRangeVO.setBigRangeId(big.getPkId()); List smallIdList = detailVOList.stream() diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java index 593613bd..b7cbf855 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java @@ -59,25 +59,6 @@ public class CuMemberRetailAchieveVO implements Serializable { */ private Integer status; - /** - * 总盒数 - */ - @BigDecimalFormat - private BigDecimal totalBox; - - /** - * 小市场盒数 - */ - @BigDecimalFormat - private BigDecimal smallAreaBox; - - - /** - * 大市场盒数 - */ - @BigDecimalFormat - private BigDecimal bigAreaBox; - /** * 小区业绩 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java index 3e52e0d5..b3559969 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java @@ -51,31 +51,6 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal teamNewPv; - /** - * 日结表-个人累计消费盒数 - */ - private BigDecimal consumeBoxNum; - /** - * 日结表-个人当日新消费盒数 - */ - private BigDecimal newBoxNum; - /** - * 日结表-个人伞下累计消费盒数 - */ - private BigDecimal teamBoxNum; - /** - * 日结表-个人伞下新消费盒数 - */ - private BigDecimal teamNewBoxNum; - - /** - * 秒结表-个人新消费盒数 - */ - private BigDecimal sNewBoxNum; - /** - * 秒结表-团队新消费盒数 - */ - private BigDecimal sTeamNewBoxNum; /** * 秒结表-个人新消费pv */ @@ -85,25 +60,10 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal sTeamNewPv; - private BigDecimal sTeamBoxNum; - /** * 个人总业绩 */ private BigDecimal totalPv; - /** - * 个人总盒数 - */ - private BigDecimal totalBoxNum; - - /** - * 注水大区 - */ - private BigDecimal bigBoxNum; - /** - * 注水小区 - */ - private BigDecimal smallBoxNum; @Override public CuMemberRetailDataStatisticsDetailVO clone() { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java index df6c1a61..639e7d08 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java @@ -9,7 +9,6 @@ import lombok.NoArgsConstructor; import java.io.Serializable; import java.math.BigDecimal; - /** * 会员数据统计 */ @@ -30,19 +29,6 @@ public class CuMemberRetailDataStatisticsResultVO implements Serializable { */ private String memberCode; - /** - * 总盒数 - */ - private BigDecimal totalBoxNum; - /** - * 大区盒数 - */ - private BigDecimal bigRangeTotalBoxNum; - /** - * 小区盒数 - */ - private BigDecimal smallRangeTotalBoxNum; - /** * 总业绩 */ diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index f6c673bf..26167ec1 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -10,14 +10,6 @@ AND m.pk_parent = #{pkMember} - - SELECT SUM(t1.arealPv) arealPv ,#{pkMember} pkMember @@ -52,63 +44,6 @@ - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - ) t1 - - - - - - - - - - - - - - - - - - - - - - - - - - - SELECT nvl(sum(box), 0) bigAreaBox, 0 smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box - FROM ${memberRetailTable} ab - where ab.pk_member = #{pkBigMember} - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box - FROM ${retailUpMonthTable} ab - where ab.pk_member = #{pkBigMember} - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box - from ${memberRetailSTable} rs - where rs.pk_member = #{pkBigMember}) t0 - - - - SELECT 0 bigAreaBox, nvl(sum(box), 0) smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box, ab.pk_member - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box, ab.pk_member - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box, - rs.pk_member - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - ) t0 - - - - - - SELECT ab.team_sum_box + ab.sum_box yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${beforeYesterdayTableName} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) realTimeBox, - 0 upMonthBox, - 0 monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box + ab.sum_box monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box * -1 + ab.sum_box * -1 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box + ab.sum_box upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box * -1 + ab.sum_box * -1 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${secondMonthLastDayTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - - - + + select - cmrs.new_box_num, - cmrs.team_new_box_num, cmrs.new_consume_pv, cmrs.team_new_pv, @@ -361,8 +357,6 @@ - - - - - - SELECT min(t0.enable_status) enableStatus, - #{pkMember} pkMember - FROM (SELECT mr.enable_status - FROM ${dpb.memberRetailTable} mr - where mr.pk_member = #{pkMember} - - union all - SELECT mrs.enable_status - FROM ${dpb.memberRetailSTable} mrs - where mrs.pk_member = #{pkMember} - - ) t0 - - - - - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - - ) t1 - - - - - - - - - - - - - - - - - - - - update CU_MEMBER set PK_PARENT = #{pkParent}, @@ -2043,17 +1962,6 @@ and cm.member_name = #{memberName} and cm.phone = #{phone} - - select ca.pk_member,ba.awards_value new_level from cu_member_awards ca - inner join ( - select pk_member,max(pk_id) pk_id from cu_member_awards - where del_flag=0 and pk_member in - - #{item.pkMember} - - group by pk_member - ) cm - on ca.pk_id=cm.pk_id - inner join bd_awards ba - on ca.new_level = ba.pk_id - where ca.del_flag=0 and ba.del_flag=0 - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml index 8cf2aa8d..7d4597f9 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml @@ -20,31 +20,6 @@ - - - - - - merge into CU_MEMBER_LEVEL cml diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java index b5ceaf1b..b3d1e651 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java @@ -656,11 +656,6 @@ public class ActivityServiceImpl implements IActivityService { } // 直推升级 acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 抽奖 - acDrawRewardNumService.giveMemberDrawNum(saOrderExt); - // 直推升级 - acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); } return true; } @@ -888,8 +883,7 @@ public class ActivityServiceImpl implements IActivityService { } // 2024.11.26 新消费赠送活动需求,注册、升级专区处理新需求 - if (ESpecialArea.REGISTER_AREA.getValue() == specialArea - || ESpecialArea.UPGRADE_AREA.getValue() == specialArea) { + if (ESpecialArea.REGISTER_AREA.getValue() == specialArea) { if (null != cuMember && StringUtils.isNotEmpty(cuMember.getMemberName()) && StringUtils.isNotEmpty(cuMember.getPhone())) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java index cf0abfa0..7a60b096 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java @@ -14,33 +14,21 @@ import java.util.List; /** * 会员可抽奖次数记录 服务类 - * - * @author hzs - * @since 2023-04-21 */ public interface IAcDrawRewardNumService extends IService { /* - * @description: 查询会员抽奖活动,查询会员的抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:11 - * @param: null null + * 查询会员抽奖活动,查询会员的抽奖次数 **/ AcDrawRewardNum queryAcDrawRewardNum(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 会员后台查询抽奖次数 - * @author: sui q - * @date: 2023/6/1 10:36 - * @param: null null + * 会员后台查询抽奖次数 **/ List queryDrawRewardExtNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 更新会员抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:43 - * @param: null null + * 更新会员抽奖次数 **/ Boolean updateAcDrawRewardNum(AcDrawRewardNum acDrawRewardNum); @@ -48,49 +36,31 @@ public interface IAcDrawRewardNumService extends IService { * 查询会员账户状态,账户信息 * * @param cuMemberAccount 会员账户条件信息 - * @return: List - * @Author: sui q - * @Date: 2022/9/5 11:57 */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); /* - * @description: 查询 - * @author: sui q - * @date: 2023/4/27 15:14 - * @param: null null + * 查询 **/ AcDrawRewardNumExt queryDrawRewardNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 支付抽奖次数 - * @author: sui q - * @date: 2023/4/27 15:34 - * @param: null null + * 支付抽奖次数 **/ void payDrawRewardNum(CuMemberAccountExt cuMemberAccountExt, Integer payNum, AcDrawRewardNumExt acDrawRewardNumExt); /* - * @description: 在线支付确认生成待支付订单 - * @author: sui q - * @date: 2023/4/27 17:54 - * @param: null null + * 在线支付确认生成待支付订单 **/ String confirmDrawRewardPayNum(AcDrawRewardNumParam acDrawRewardNumParam, AcDrawRewardNumExt acDrawRewardNum); /* - * @description: 赠送抽奖次数 - * @author: sui q - * @date: 2023/4/28 11:27 - * @param: null null + * 赠送抽奖次数 **/ Boolean giveMemberDrawNum(SaOrderExt saOrderExt); /* - * @description: 撤单时回退抽奖次数 - * @author: sui q - * @date: 2023/5/9 9:46 - * @param: null null + * 撤单时回退抽奖次数 **/ Boolean backGiveMemberDrawNum(SaOrderExt saOrderExt); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java index 661f5e3c..40f01d85 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java @@ -49,9 +49,6 @@ import java.util.concurrent.TimeUnit; /** * 会员可抽奖次数记录 服务实现类 - * - * @author hzs - * @since 2023-04-21 */ @Service public class AcDrawRewardNumServiceImpl extends ServiceImpl implements IAcDrawRewardNumService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java index 2358073c..94b4addb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java @@ -12,9 +12,6 @@ import java.util.List; /** * 直推-复购券规则配置 服务类 - * - * @author hzs - * @since 2023-04-22 */ public interface IAcRepurCouponsRuleConfigService extends IService { @@ -70,10 +67,7 @@ public interface IAcRepurCouponsRuleConfigService extends IService queryAcRepurchaseCouponsRule(Date settleDate); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 92e50b18..39c6739f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -82,17 +82,6 @@ public class ApiRetailOrderController { if (ESpecialArea.RETAIL_REGISTER.getValue() == levelParam.getSpecialArea()) { // 注册订单 levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { - // 升级校验 - if (StringUtils.isEmpty(levelParam.getUpgradeMemberCode())) { - return AjaxResult.error("升级编号不能为空"); - } - - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, levelParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - levelParam.setUpgradeMember(updateGradeMember); } try { @@ -111,13 +100,6 @@ public class ApiRetailOrderController { } catch (Exception e) { log.error("会员等级判断异常", e); orderLevelVO.setMsg("会员等级判断异常"); -// if (EYesNo.YES.getIntValue() == levelParam.getFirstCheck()) { -// // 2024.12.25 -- 添加需求,首次校验不需要进行提示错误(9050) -// orderLevelVO.setIsEnough(true); -// return AjaxResult.success(orderLevelVO); -// } else { -// throw e; -// } } return AjaxResult.success(orderLevelVO); } @@ -170,8 +152,7 @@ public class ApiRetailOrderController { // 当前会员ID postageParam.setPkCreator(SecurityUtils.getUserId()); - if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == postageParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { // 注册、升级包邮 return AjaxResult.success(RetailOrderPostageVO.builder() .postage(BigDecimal.ZERO) @@ -323,106 +304,6 @@ public class ApiRetailOrderController { .build()); } - /** - * 确认升级订单 - * - * @param upgradeParam 订单入参 - * @param source 数据来源 - * @return - */ - @RepeatSubmit - @PostMapping("/confirm-upg-order") - public AjaxResult confirmUpgradeOrder(@Valid @RequestBody RetailOrderUpgradeParam upgradeParam, - @RequestHeader("Source") Integer source) { - // 设置数据来源 - upgradeParam.setSource(source); - // 会员ID - upgradeParam.setPkCreator(SecurityUtils.getUserId()); - // 新零售注册专区 - upgradeParam.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); - // 系统类型 - upgradeParam.setSystemType(SecurityUtils.getSystemType()); - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, upgradeParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - upgradeParam.setUpgradeMember(updateGradeMember); - - // 购物车中获取商品信息 - upgradeParam.setOrderItemsParams(convertShoppingCarToSku(upgradeParam.getPkCreator(), upgradeParam.getShopList())); - - // 确认订单 - String str = iRetailOrderService.confirmUpgOrder(upgradeParam); - return confirmOrderReturn(str, upgradeParam.getPkCreator(), upgradeParam.getShopList(), upgradeParam.getOrderCode()); - } - - /** - * 支付升级订单 - * - * @param payParam 支付订单入参 - * @return - */ - @RepeatSubmit - @PostMapping("/pay-upg-order") - public AjaxResult payUpgradeOrder(@Valid @RequestBody RetailOrderPayParam payParam) { - // 当前会员ID - Long pkMember = SecurityUtils.getUserId(); - - // 获取缓存参数 - RetailOrderUpgradeParam upgradeParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + pkMember + payParam.getOrderCode()); - if (null == upgradeParam) { - return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); - } - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, payParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - - // 支付入参 - upgradeParam.setIsPay(EYesNo.YES.getIntValue()); - - // 封装订单信息 - SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(upgradeParam, null, updateGradeMember); - - // 校验会员账户状态等 - R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); - if (!accountResult.isSuccess()) { - return AjaxResult.error(accountResult.getMsg()); - } - CuMemberAccountExt memberAccountExt = accountResult.getData(); - - // 校验余额是否足够 - iSaOrderService.queryRetailOrderSpendDetails(memberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - if (memberAccountExt.getIsPayment()) { - // 进行支付 - saOrderExt.setSpecialArea(upgradeParam.getSpecialArea()); - String payStr = iRetailOrderService.payUpgOrder(saOrderExt, updateGradeMember, memberAccountExt); - if (null != payStr) { - return AjaxResult.error(payStr); - } - } else { - if (StringUtils.isEmpty(memberAccountExt.getErrorMsg())) { - return AjaxResult.error("余额不足,请及时充值"); - } else { - return AjaxResult.error(memberAccountExt.getErrorMsg()); - } - } - - return AjaxResult.success("支付成功"); - } - /** * 确认订单(注册、升级之外的订单) * @@ -529,8 +410,7 @@ public class ApiRetailOrderController { CuMember parentMember = null; // 获取等级值 GradeDTO gradeDTO = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == queryOrderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea()) { parentMember = iMemberServiceApi.getRetailMember(saOrderExt.getPkReference(), null).getData(); gradeDTO = iGradeServiceApi.getGrade(saOrderExt.getPkGrade()).getData(); } @@ -726,8 +606,7 @@ public class ApiRetailOrderController { if (null == buyMember) { return "购买会员编号不存在,请重试"; } - if (ESpecialArea.RETAIL_UPGRADE.getValue() != specialArea - && ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { + if (ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { // 判断购买会员是否是V0,V0不允许下升级、复购以外订单 GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java index 8e60d99a..b0aa7b22 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java @@ -8,11 +8,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:21 - * @Classname: IRetailOrderPostageService - * @PackageName: com.hzs.retail.sale.controller.service + * 新零售订单邮费处理服务 */ public interface IRetailOrderPostageService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java index bc915ada..b7c2f958 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java @@ -10,7 +10,6 @@ import com.hzs.common.domain.system.config.BdGrade; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.system.base.dto.CurrencyDTO; import java.util.List; @@ -29,14 +28,6 @@ public interface IRetailOrderService { */ String confirmRegOrder(RetailOrderRegisterParam registerParam, List gradeList); - /** - * 确认升级订单 - * - * @param upgradeParam 升级订单入参 - * @return - */ - String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam); - /** * 确认其它订单 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java index 5da50448..623a68fd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java @@ -32,11 +32,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:22 - * @Classname: RetailOrderPostageServiceImpl - * @PackageName: com.hzs.retail.sale.controller.service.impl + * 新零售订单邮费处理服务 */ @Slf4j @Service @@ -64,8 +60,7 @@ public class RetailOrderPostageServiceImpl implements IRetailOrderPostageService @Override public String calculatePostage(BigDecimal freePostage, Map> postageMap, RetailOrderParam orderParam) { // 处理邮费 - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 会员专区(注册、升级)免邮费 orderParam.setPostage(BigDecimal.ZERO); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index ff6aa2af..91b10693 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -20,7 +20,6 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; @@ -35,7 +34,6 @@ import com.hzs.retail.sale.controller.service.IRetailOrderService; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; @@ -74,8 +72,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderItemsService iSaOrderItemsService; @Autowired - private ISaOrderWaresService iSaOrderWaresService; - @Autowired private IBdWaresExtendService iBdWaresExtendService; @Autowired private IBdWaresDetailService iBdWaresDetailService; @@ -86,8 +82,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderTempService iSaOrderTempService; @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; - @Autowired private IBdProductService iBdProductService; @Autowired private ISaOrderSyncService iSaOrderSyncService; @@ -129,25 +123,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { return null; } - @Override - public String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam) { - // 升级会员 - CuMember upgradeMember = upgradeParam.getUpgradeMember(); - // 封装订单信息 - SaOrderExt saOrderExt = this.createSaOrder(upgradeParam, null, upgradeMember); - - // 订单缓存(60分钟有效,防止在线支付回调慢) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_ORDER + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), saOrderExt, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - upgradeParam.setPkGrade(upgradeMember.getPkSettleGrade()); - // 缓存订单参数(30分钟有效) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), upgradeParam, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - - // 保存订单时间信息 - this.saveOrderTemp(upgradeParam.getPkCreator(), upgradeParam.getOrderCode(), JSONUtil.toJsonStr(saOrderExt), JSONUtil.toJsonStr(upgradeParam)); - - return null; - } - @Override public String confirmOtherOrder(RetailOrderOtherParam orderParam) { // 购买会员 @@ -215,8 +190,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPkGradeOld(cuMember.getPkSettleGrade()); } - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 注册、升级订单,计算会员等级 BdGrade newGrade = iSaOrderService.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(), gradeList, cuMember, orderParam.getSystemType(), orderParam.getIsPay()); @@ -247,9 +221,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public List createSaOrderItems(RetailOrderParam orderParam, List gradeList, CuMember cuMember, SaOrderExt saOrderExt, CurrencyDTO currency) { - // 需要查询盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(null); - // 订单明细信息 List orderItemsList = new ArrayList<>(); if (null == currency) { @@ -283,24 +254,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 不包邮,处理邮费模板map saOrderHandle.setPostageTmpMap(orderParam.getTranType(), postageMap, waresDetailExt, orderItems); } - - if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } else { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } - - } } } @@ -592,7 +545,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { this.allProductSync(saOrderExt); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType() ) { @@ -641,10 +593,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade(), newMember.getPkVertex()); - newMember.setPkSettleGrade(tmpGrade.getPkId()); - newMember.setPkAwards(tmpGrade.getPkAwards()); - saOrderExt.setPkMember(newMember.getPkId()); resultStr = this.payRegOrder(saOrderExt, newMember, null); @@ -655,15 +603,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (null == cuMember) { return "会员信息不存在"; } - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单 - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade(), cuMember.getPkVertex()); - cuMember.setPkSettleGrade(tmpGrade.getPkId()); - resultStr = this.payUpgOrder(saOrderExt, cuMember, null); - } else { - // 其它订单 - resultStr = this.payOtherOrder(saOrderExt, cuMember, null); - } + // 其它订单 + resultStr = this.payOtherOrder(saOrderExt, cuMember, null); } if (null == resultStr) { iSaOrderTempService.remove(Wrappers.lambdaQuery() @@ -684,23 +625,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); iSaOrderService.save(saOrderExt); - // 订单商品拆分数据 - List orderWaresList = new ArrayList<>(); - // 订单商品拆分map(key:商品主键,value:商品数量) - Map orderWaresMap = new HashMap<>(); - // 订单商品价格拆分map(key:商品主键,value:商品价格) - Map orderWaresPriceMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) Map waresNumberMap = new HashMap<>(); - // 商品限购列表 - List waresLimitList = new ArrayList<>(); - // 商品限购map(key:商品主键,value:商品数量) - Map waresLimitMap = new HashMap<>(); - - // 盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { saOrderItems.setPkOrder(saOrderExt.getPkId()); @@ -708,43 +636,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderItems.setPkCreator(saOrderExt.getPkCreator()); saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - // 指定商品拆分 并且 非赠品 - if (boxProductList.contains(saOrderItems.getWareCode()) - && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - // 盒数 = 商品上传盒数 * 商品数量 - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); - orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - - // 价格 = 产品上传价格 * 产品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())); - if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { - BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); - orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); - } else { - orderWaresPriceMap.put(saOrderItems.getPkWares(), waresPrice); - } - - waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); - } // 商品销量累计 waresNumberMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); } iSaOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - if (orderWaresMap.size() > 0) { - // 处理订单商品拆分数据 - for (Integer key : orderWaresMap.keySet()) { - SaOrderWares saOrderWares = SaOrderWares.builder() - .pkOrder(saOrderExt.getPkId()) - .pkWares(key) - .waresPrice(orderWaresPriceMap.get(key)) - .waresQuantity(orderWaresMap.get(key)) - .build(); - saOrderWares.setPkCreator(saOrderExt.getPkCreator()); - saOrderWares.setCreationTime(saOrderExt.getCreationTime()); - orderWaresList.add(saOrderWares); - } - } if (waresNumberMap.size() > 0) { // 处理订单商品销量、会员商品限购 for (Integer key : waresNumberMap.keySet()) { @@ -754,38 +650,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { .build()); } } - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() - || ESpecialArea.RETAIL_RESCISSION.getValue() == saOrderExt.getOrderType()) { - if (waresLimitMap.size() > 0) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - for (Integer key : waresLimitMap.keySet()) { - SaOrderWaresLimit saOrderWaresLimit = SaOrderWaresLimit.builder() - .pkMember(saOrderExt.getPkMember()) - .orderType(saOrderExt.getOrderType()) - .pkWares(key) - .waresQuantity(waresLimitMap.get(key)) - .limitDate(limitDate) - .build(); - saOrderWaresLimit.setPkCreator(saOrderExt.getPkCreator()); - saOrderWaresLimit.setCreationTime(saOrderExt.getCreationTime()); - saOrderWaresLimit.setPkCountry(saOrderExt.getPkCountry()); - waresLimitList.add(saOrderWaresLimit); - } - } - } - if (orderWaresList.size() > 0) { - // 订单商品拆分表 - iSaOrderWaresService.saveBatch(orderWaresList); - } if (waresNumberList.size() > 0) { // 更新商品销量表 iBdWaresExtendService.updateWaresSalesAccrual(waresNumberList); } - if (waresLimitList.size() > 0) { - // 更新会员商品限购 - iSaOrderWaresLimitService.saveBatchLimit(waresLimitList); - } } @Transactional(rollbackFor = Exception.class) @@ -832,7 +701,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private Boolean handleMemberActivate(CuMember cuMember, SaOrderExt saOrder) { if ((null == cuMember.getIsActivate() || EYesNo.YES.getIntValue() != cuMember.getIsActivate()) - && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) + && EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() ) { // 会员激活状态为空 或 未激活,并且是 注册、升级 订单,判断会员是否激活 if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { @@ -846,88 +715,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } return false; - -// if (null == cuMember.getIsActivate()) { -//// // 会员激活状态为空,按未激活处理 -//// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// -// // new 暂时不处理激活,只要是会员就按激活处理,有订单就有支付状态和时间 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (null != saOrder) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// } -// return true; - -// if (EYesNo.YES.getIntValue() != cuMember.getIsActivate() -// && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) -// ) { -// // 会员未激活,并且是 注册、升级、复购 订单,判断会员是否激活 -// List boxProductList = BoxProductUtil.getBoxProductListBySystemType(saOrder.getSystemType()); -// -// for (SaOrderItems saOrderItems : saOrder.getOrderItemsList()) { -// if (boxProductList.contains(saOrderItems.getWareCode())) { -// // 存在指定盒数商品 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// return true; -// } -// } -// } -// return false; - } - - /** - * 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 - * - * @param pkMember 会员ID - * @param specialArea 所属专区 - * @param waresDetailExtList 购买商品列表 - * @param boxProductList 盒数商品列表 - * @return - */ - private void checkWaresLimit(Long pkMember, Integer specialArea, List waresDetailExtList, List boxProductList) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - // 商品数量map(key: 商品编号,value: 商品数量) - Map waresNumMap = new HashMap<>(); - // 商品信息map(key: 商品编号,value: 商品名称) - Map waresNameMap = new HashMap<>(); - for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { - if ((ESpecialArea.RETAIL_REPURCHASE.getValue() == specialArea - || ESpecialArea.RETAIL_RESCISSION.getValue() == specialArea) - && boxProductList.contains(waresDetailExt.getWaresCode()) - && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift() - ) { - // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每月每人限购50件(赠品排除) - waresNumMap.merge(waresDetailExt.getWaresCode(), waresDetailExt.getWaresQuantity(), Integer::sum); - waresNameMap.put(waresDetailExt.getWaresCode(), waresDetailExt.getWaresName()); - } - } - - if (!waresNumMap.isEmpty()) { - for (String key : waresNumMap.keySet()) { - if (waresNumMap.get(key) > 50) { - throw new ServiceException("商品【" + waresNameMap.get(key) + "】每月限购50件"); - } - } - - List limitList = iSaOrderWaresLimitService.listWaresList(pkMember, specialArea, limitDate, new ArrayList<>(waresNumMap.keySet())); - if (CollectionUtil.isNotEmpty(limitList)) { - for (SaOrderWaresLimitExt waresLimitExt : limitList) { - Integer waresNum = waresNumMap.get(waresLimitExt.getWaresCode()); - if (null != waresNum - && waresNum + waresLimitExt.getWaresQuantity() > 50) { - throw new ServiceException("商品【" + waresLimitExt.getWaresName() + "】每月限购50件"); - } - } - } - } } /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java deleted file mode 100644 index b85a29c0..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.retail.sale.param; - -import com.hzs.common.domain.member.base.CuMember; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.Size; -import java.io.Serializable; - -/** - * 新零售升级订单入参 - */ -@EqualsAndHashCode(callSuper = true) -@Data -public class RetailOrderUpgradeParam extends RetailOrderParam implements Serializable { - - /** - * 升级编号 - */ - @NotEmpty(message = "升级编号不能为空") - @Size(max = 20, message = "升级编号不能超过20位") - private String upgradeMemberCode; - - /** - * 升级会员 - */ - private CuMember upgradeMember; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java index bf96bdd6..3a2e422f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java @@ -1,22 +1,15 @@ package com.hzs.sale.order.controller; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; -import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; @@ -24,7 +17,6 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; @@ -47,8 +39,6 @@ public abstract class ParentOrderController extends BaseController { private ISaOrderService orderService; - private ISaOrderItemsService orderItemsService; - protected RedisService redisService; @Autowired @@ -68,355 +58,6 @@ public abstract class ParentOrderController extends BaseController { return orderService; } - @Autowired - public void setOrderItemsService(ISaOrderItemsService orderItemsService) { - this.orderItemsService = orderItemsService; - } - - public ISaOrderItemsService getOrderItemsService() { - return orderItemsService; - } - - /** - * 根据code、编码获取值 - * - * @param code 查询的code - */ - protected CuMember getCuMemberByCode(String code) { - return orderService.getCuMemberByCode(code); - } - - /** - * 验证字段是否必输 - * - * @param fieldList 需要验证的字段 - */ - protected boolean validateFieldNotNull(OrderParam orderParam, List fieldList) { - return fieldList.stream().anyMatch(field -> { - Object obj = ReflectUtils.invokeGetter(orderParam, field); - return obj == null || "".equals(obj); - }); - } - - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名、安置人必输 - */ - protected AjaxResult validatePhone(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getPhone()) || StringUtils.isEmpty(orderParam.getMemberName())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - // 手机号 - String phone = orderParam.getPhone(); - // 会员姓名 - String memberName = orderParam.getMemberName(); - // 验证手机号注册次数 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().phone(phone).payStatus(EPayStatus.PAID.getValue()).pkSettleGrade(EGrade.VIP.getValue()).pkSettleCountry(orderParam.getPkSettleCountry()).build()); - // 系统中存在该手机号走的验证 - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - // 手机号注册次数 - if (!validatePhoneCount(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.SYSTEM_REGISTER_COUNT)); - } - // 一个手机号只能有一个姓名 - boolean flag = cuMemberExtList.stream().allMatch(cuMemberExt -> memberName.equals(cuMemberExt.getMemberName())); - if (!flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PHONE_ALREADY_REGISTER)); - } - } - if (!orderParam.getIsHaiFun()) { - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - // 安置人 - // 1.只能在同一个团队内 验证安置人及安置人伞上是否存在该手机号+姓名 - // 很多情况安置人跟伞下是一样的,从redis获取安置人,验证安置人手机号跟姓名是否一致 - CuMember placeParentCuMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (!placeParentCuMember.getMemberName().equals(memberName) || - !placeParentCuMember.getPhone().equals(phone)) { - // 寻找安置人伞上,验证安置伞上是否存在该手机姓名,如果伞上没有找到手机号,其他地方找到了,说明不在一个团队 - List sponsorOnUmbrella = orderService.querySponsorOnUmbrella(placeParentCuMember.getPkId(), phone); - CuMemberExt searchCuMember = null; - for (CuMemberExt sponsor : sponsorOnUmbrella) { - if (sponsor.getPhone().equals(phone) && sponsor.getMemberName().equals(memberName)) { - searchCuMember = sponsor; - break; - } - } - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - if (searchCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } else { - // 验证cuMemberExtList是否在searchCuMember的伞下,不在伞下说明游离了 - List validateSponsorOnUmbrella = orderService.selectPlaceSponsorUnderUmbrellaByCondition(searchCuMember.getPkId(), cuMemberExtList); - if (CollectionUtil.isEmpty(validateSponsorOnUmbrella) || validateSponsorOnUmbrella.size() != cuMemberExtList.size()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } - } - } - } - } - return AjaxResult.success(); - } - - /** - * 验证推荐编号,成功后返回姓名,如果首单返回安置人、安置部门 - * - * @param orderParam 必须推荐人 - */ - protected AjaxResult validateReferenceRelation(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - CuMember cuMember = getCuMemberByCode(orderParam.getParent()); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - // 验证会员支付状态,只有支付状态才能进行推荐人 - if (cuMember.getPayStatus() != EPayStatus.PAID.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_PAY)); - } - // 验证推荐人跟报单人关系, 报单人一定在最上,然后是推荐人 - // 推荐人=报单人,不用在验证报单人在推荐人上面 - if (!cuMember.getPkId().equals(orderParam.getCenterCodeId())) { - // 查找报单人安置伞下是否存在推荐人 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), cuMember.getMemberCode()); - if (CollectionUtil.isEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_TEAM)); - } - } - // 存在首单,只返回推荐人姓名 - orderParam.setParentId(cuMember.getPkId()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setParentName(cuMember.getMemberName()); - } else { - orderParam.setParentName(cuMember.getMemberName()); - } - - String firstOrder = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(firstOrder)) { - // 判断是否为首单,根据订单关系,按照订单关系,是首单的话,直接带出极左极下,放在第一部门,不能修改 - Integer count = orderService.queryCuMemberByPkMember(cuMember.getPkId()); - if (count == 0) { - // 验证网体 - orderParam.setIsFirst(true); - // 不存在首单,返回推荐人姓名、安置人编号、安置人姓名、安置人部门 - // 查找推荐人极左极下 - CuMemberExt cuMemberExt = orderService.queryPlaceSponsorLastLeft(cuMember.getPkId(), EPlaceDept.LEFT_DEPT.getValue()); - if (cuMemberExt == null) { - orderParam.setPlaceParentId(cuMember.getPkId()); - orderParam.setPlaceParent(cuMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } - } else { - orderParam.setPlaceParentId(cuMemberExt.getPkId()); - orderParam.setPlaceParent(cuMemberExt.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } - } - String placePosition = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.PLACE_POSITION.getKey()); - if (Objects.equals("3", placePosition)) { - orderParam.setPlaceDept(EPlaceDept.RIGHT_DEPT.getValue()); - } else { - orderParam.setPlaceDept(EPlaceDept.LEFT_DEPT.getValue()); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证安置编号、安置部门,成功后返回姓名 - * - * @param orderParam 必须安置人 - */ - protected AjaxResult validatePlaceParentMemberCode(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - - // 验证推荐编号、安置编号是否存在,不验证大小写,去空格。 - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParent(parentMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(parentMember.getPkId())) { - orderParam.setParentName(parentMember.getMemberName()); - } else { - orderParam.setParentName(parentMember.getMemberName()); - } - - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXISTS)); - } - orderParam.setPlaceParentId(placeMember.getPkId()); - orderParam.setPlaceParent(placeMember.getMemberCode()); - - if (SecurityUtils.getUserId().equals(placeMember.getPkId())) { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } else { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } - // 当安置人跟安置位置都有值是需要验证 需要验证安置位置 - if (orderParam.getPlaceDept() != null && orderParam.getPlaceDept() > 0) { - // 安置人在推荐人伞下,含自己。 推荐人在报单中心伞下,含自己,在推荐那边验证 - if (!orderParam.getPlaceParent().equals(orderParam.getParent())) { - // 查找推荐人安置伞下 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(parentMember.getPkId(), orderParam.getPlaceParent()); - // 查找是否在伞下 - boolean flag = cuMemberExtList.stream().noneMatch(placeSponsor -> - orderParam.getPlaceParent().equals(placeSponsor.getMemberCode()) || orderParam.getPlaceParent().equals(placeSponsor.getServiceCode()) - ); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - // 推荐人安置人左区或者右区只能有1个,验证安置人是否已经有点位 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().pkPlaceParent(placeMember.getPkId()).category(10).placeDept(orderParam.getPlaceDept()).build()); - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - // 安置部门为第二部门时,需要判断推荐人是否推荐过首单,可以安置在第二部门,否则只能在第一部门; - // 推荐过左区可以放右区,需要验证安置人是否有有单 - // 西非不验证安置部门是否推荐过首单,只需要验证安置左区必须有人 - if (orderParam.getPlaceDept() == EPlaceDept.RIGHT_DEPT.getValue()) { - // 推荐人是否有首单 - // 从参数中获取是否需要验证安置人有首单 - Integer pkCountry = orderParam.getPkSettleCountry(); - if (!placeMember.getPkId().equals(parentMember.getPkId()) && orderService.validateFirstOrder(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_REFERENCE)); - } - // 安置人左区是否有人 - if (orderService.validateLeftExistMember(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXIST)); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证需要注册的信息, 订单保存时需要调用的验证 - * - * @param orderParam 所有信息 - */ - protected AjaxResult validateSaveMember(OrderParam orderParam) { - // 安置编号 - String placeParent = orderParam.getPlaceParent(); - // 安置部门 - Integer placeDept = orderParam.getPlaceDept(); - AjaxResult result = validateFun(orderParam); - if (result != null) { - return result; - } - // 验证是否首单,首单安置人安置部门不能变动 - if (orderParam.getIsFirst()) { - // 判断安置人跟安置部门是否一致 - if (!(placeParent.equals(orderParam.getPlaceParent()) && placeDept.equals(orderParam.getPlaceDept()))) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_IS_LAST_LEFT)); - } - } else { -// // 验证过首单后可以不用在验证安置人,不是首单的情况直接验证安置人 - // 验证安置人 - result = validatePlaceParentMemberCode(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - } - return AjaxResult.success(orderParam); - } - - protected AjaxResult validateFun(OrderParam orderParam) { - // 报单中心 - Long centerCodeId = orderParam.getCenterCodeId(); - // 验证权限 - AjaxResult result = validateRegisterAuthority(centerCodeId, orderParam.getSpecialArea()); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证手机号 - result = validatePhone(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证推荐人 - result = validateReferenceRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - return null; - } - - /** - * 对安置位置进行加锁预防位置重复 - * - * @param placeParentId 安置人 - * @param placeDept 安置位置 - */ - protected boolean validatePlacePosition(Long placeParentId, Integer placeDept) { - // 验证通过对安置人,安置部门加锁,防止同时安置引起错误,最后解锁 - return orderService.lockKey(getLockKey(placeParentId, placeDept)); - } - - /** - * @param placeParentId 安置位置 - * @param placeDept 安置部门 - */ - private String getLockKey(Long placeParentId, Integer placeDept) { - return CacheConstants.POSITION + - placeParentId + - placeDept; - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - * - * @param centerCodeId 验证的权限 - */ - protected AjaxResult validateRegisterAuthority(Long centerCodeId, Integer specialArea) { - // 前台登录验证登录会员,后台空点验证输入的报单人 - CuMember cuMember = orderService.getCuMemberByKey(centerCodeId); - if (cuMember == null || cuMember.getRegisterAuthority() == ERegistrationAuthority.ORDINARY.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_AUTHORITY)); - } - return AjaxResult.success(); - } - - /** - * 检查输入的条件 - * - * @param orderParam 条件 - * @return boolean - */ - protected Boolean checkRecMsgBoolean(OrderParam orderParam) { - if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay())) { - orderParam.setTransType(null); - return orderParam.getSpecialArea() != null - && orderParam.getOrderItemsParams() != null - && orderParam.getOrderItemsParams().size() > 0; - } else { - return orderParam.getSpecialArea() != null - && orderParam.getDeliveryWay() != null && orderParam.getTransType() != null - && orderParam.getRecName() != null && orderParam.getRecPhone() != null - && orderParam.getRecProvince() != null && orderParam.getRecCity() != null - && orderParam.getOrderItemsParams() != null && orderParam.getRecAddress() != null - && orderParam.getOrderItemsParams().size() > 0; - } - } - /** * 检查输入的条件 * @@ -460,17 +101,6 @@ public abstract class ParentOrderController extends BaseController { orderParam.setPkLoginSettleCountry(SecurityUtils.getPkCountry()); } - /** - * 验证手机号注册次数 - * - * @param cuMemberExtList 会员数量 - */ - private Boolean validatePhoneCount(List cuMemberExtList) { - // 判断次数,获取系统参数,从redis中获取系统参数 - String value = orderService.querySystemConfigByKey(cuMemberExtList.get(0).getPkSettleCountry(), ESystemConfig.REGISTER_NUMBER.getKey()); - return cuMemberExtList.size() < Integer.parseInt(value); - } - protected CuMemberAccount getCuMemberAccount(OrderParam orderParam) { CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(orderParam.getCenterCodeId()).build(); cuMemberAccount.setPkCountry(orderParam.getPkLoginSettleCountry()); @@ -500,32 +130,6 @@ public abstract class ParentOrderController extends BaseController { return AjaxResult.success(cuMemberAccountExt); } - /** - * 验证升级关系,只能给自己或者自己安置伞下升级 - * - * @param orderParam 前台传递的参数 - */ - protected AjaxResult validateUpgradeRelation(OrderParam orderParam) { - CuMember upgradeMember = orderService.getCuMemberByCode(orderParam.getUpgradeMemberCode()); - if (upgradeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_DOES_NOT_EXITS)); - } - if (null != orderParam.getCenterCodeId() && orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } else { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } - - if (!orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - // 可以给别人升级,只能是自己的安置伞下 - List cuMemberExtList = getOrderService().queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), upgradeMember.getMemberCode()); - boolean flag = cuMemberExtList.stream().noneMatch(cuMemberExt -> cuMemberExt.getPkId().equals(upgradeMember.getPkId())); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - return AjaxResult.success(orderParam); - } protected SaOrder getSaOrderQueryParam(OrderParam orderParam) { SaOrder saOrder = SaOrder.builder() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java deleted file mode 100644 index cab5d6cc..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.IMemberServiceApi; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.*; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 嗨粉订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiFanSaOrderController extends ParentOrderController { - - @DubboReference - IMemberServiceApi iMemberServiceApi; - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-fun-order") - @RepeatSubmit - public AjaxResult confirmHaiFunOrder(@Validated @RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 自注册 - */ - @PostMapping("/confirm-self-fun-order") - @RepeatSubmit - public AjaxResult confirmSelfFunOrder(@Validated @RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - - CuMember cuMember = iMemberServiceApi.queryMember(orderParam.getCenterCodeId()).getData(); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - - if (getOrderService().confirmSelfFunOrderByOrderParam(orderParam, cuMember)) { - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java deleted file mode 100644 index 462f43b4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ /dev/null @@ -1,171 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.enums.EOrderType; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.OrderParam; -import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -/** - * 其他订单(升级、复购)订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiOthSaOrderController extends ParentOrderController { - - @Autowired - private ISaOrderService orderService; - - /** - * @param orderParam 前台传递的参数 - */ - @PostMapping("/confirm-oth-order") - @RepeatSubmit - public AjaxResult confirmOtherOrder(@RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { - convertShoppingCarToSku(orderParam); - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (StringUtils.isEmpty(orderParam.getUpgradeMemberCode())) { - orderParam.setUpgradeMemberCode(SecurityUtils.getMemberCode()); - } - // 验证复购的人是否在推荐人伞下 - AjaxResult result = validateUpgradeRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - // 升级订单,校验是否满足升级条件 - orderParam.setUpgradeMemberCodeTmp(orderParam.getUpgradeMemberCode()); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (!orderReturn.getIsEnough()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } - } - if (!getOrderService().confirmRepurchaseSaOrder(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - } - return AjaxResult.success(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/validate-upg-rel") - public AjaxResult validateUpgradeMemberCodeRelation(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - return validateUpgradeRelation(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/query-special-deduct") - public AjaxResult querySpecialDeduct(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - return validateUpgradeRelation(orderParam); - } - - - /** - * 支付升级订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-oth-order") - @RepeatSubmit - public AjaxResult payOtherOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getOrderCode() == null || orderParam.getSpecialArea() == null || - StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - if (orderParam.getSpecialArea() == EOrderType.REGISTER_ORDER.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - // 验证账户余额 - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - SaOrder saOrderQueryParam = getSaOrderQueryParam(orderParam); - SaOrderExt saOrderExt = getOrderService().querySaleOrderExtByOrderCode(saOrderQueryParam, null); - - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - if (oldOrderParam == null) { - oldOrderParam = orderParam; - oldOrderParam.setRecProvince(saOrderExt.getRecProvince()); - } - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - // 升级订单 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (getOrderService().payUpgradeSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } else { - // 复购订单 - if (getOrderService().payRepurchaseSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } - } - } - - - if (cuMemberAccountExt.getErrorMsg() == null) { - cuMemberAccountExt.setErrorMsg(TransactionUtils.getContent(MemberMsgConstants.MEMBER_ACCOUNT_BALANCE_NOT_ENOUGH)); - } - - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index f3da318a..8a47f7dc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -1,10 +1,7 @@ package com.hzs.sale.order.controller.api; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.constant.msg.SaOrderMsgConstants; import com.hzs.common.core.enums.EDelivery; @@ -21,18 +18,13 @@ import com.hzs.sale.order.controller.ParentOrderController; import com.hzs.sale.order.param.CuMemberAccountParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.concurrent.TimeUnit; /** * 订单控制类 @@ -43,142 +35,7 @@ import java.util.concurrent.TimeUnit; public class ApiRegSaOrderController extends ParentOrderController { @DubboReference - IGradeServiceApi gradeServiceApi; - @Autowired - private ISaOrderService orderService; - - /** - * 确认注册订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-reg-order") - @RepeatSubmit - public AjaxResult confirmRegisterOrder(@Validated @RequestBody OrderParam orderParam, - @RequestHeader("Source") Integer source) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - initSecurityOrderParam(orderParam); - // 验证必输项 - if (source == null || validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setSource(source); - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), ShoppingCartVO.builder() - .deleteList(orderParam.getDeleteList()) - .build()); - } - return AjaxResult.success(OrderReturn.builder().orderCode(orderParam.getOrderCode()).specialArea(orderParam.getSpecialArea()).build()); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NO_JURISDICTION)); - } - } - - /** - * 支付注册订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-reg-order") - @RepeatSubmit - public AjaxResult payRegisterOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 判断是否是待支付,待支付的话验证订单编号是否存在 - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - - boolean isToBePay = getOrderService().getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember newCuMember; - SaOrderExt saOrderExt; - boolean isHaiFun = false; - if (isToBePay) { - if (StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_PASSWORD_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getOrderCode())) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_CODE_EMPTY)); - } - saOrderExt = getOrderService().querySaleOrderExtByOrderCode(getSaOrderQueryParam(orderParam), null); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - newCuMember = getOrderService().getCuMemberByKey(saOrderExt.getPkMember()); - } else { - String payPwd = orderParam.getPayPwd(); - orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - initSecurityOrderParam(orderParam); - orderParam.setPayPwd(payPwd); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidSaveField())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - String orderCode = orderParam.getOrderCode(); - newCuMember = getOrderService().packageCuMember(orderParam); - if (StringUtils.isNotEmpty(orderParam.getMemberCode())) { - newCuMember.setMemberCode(orderParam.getMemberCode()); - } - saOrderExt = getOrderService().packageSaOrder(orderParam, newCuMember); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - saOrderExt.setOrderCode(orderCode); - } - - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - // 对安置位置加锁 - if (validatePlacePosition(orderParam.getPlaceParentId(), orderParam.getPlaceDept())) { - // 验证余额状态 - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - getOrderService().payRegSaOrder(saOrderExt, newCuMember, cuMemberAccountExt, isHaiFun); - } else { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY)); - } else { - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - } - // 保存逻辑 保存订单、保存会员 - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - OrderReturn orderReturn = OrderReturn.builder() - .memberCode(newCuMember.getMemberCode()) - .memberName(newCuMember.getMemberName()) - .phone(newCuMember.getPhone()) - .email(newCuMember.getEmail()) - .loginPassword(newCuMember.getLoginPassword()) - .payPassword(newCuMember.getPayPassword()) - .build(); - return AjaxResult.success(orderReturn); - } + IGradeServiceApi iGradeServiceApi; /** * 查询订单 @@ -224,7 +81,7 @@ public class ApiRegSaOrderController extends ParentOrderController { if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { CuMember parentCuMember = getOrderService().getCuMemberByKey(cuMember.getPkParent()); CuMember placeCuMember = getOrderService().getCuMemberByKey(cuMember.getPkPlaceParent()); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); orderReturn.setPhone(cuMember.getPhone()); orderReturn.setParent(parentCuMember.getMemberCode()); @@ -238,16 +95,12 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderReturn.setPlaceDept(cuMember.getPlaceDept()); orderReturn.setSource(cuMember.getSource()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { - getOrderService().setLastCuMemberGrade(cuMember, saOrder); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } } } else { orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); if (orderParam.getPkGrade() != null) { - GradeDTO gradeDTO = gradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } orderReturn.setMemberCode(orderParam.getMemberCode()); @@ -288,8 +141,6 @@ public class ApiRegSaOrderController extends ParentOrderController { **/ @PostMapping("/self-order-postage") public AjaxResult selfOrderPostage(@RequestBody OrderParam orderParam) { - //提货订单邮费 - Integer pkCountry = SecurityUtils.getPkCountry(); // 验证必输项,一个条件未填写都不计算邮费 orderParam.setTransType(orderParam.getTranType()); if (checkRecPostageMsgBoolean(orderParam) && orderParam.getDeliveryWay() == EDelivery.FAST_MAIL.getValue()) { @@ -350,53 +201,6 @@ public class ApiRegSaOrderController extends ParentOrderController { return null; } - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名 - */ - @Override - @PostMapping("/valid-phone") - public AjaxResult validatePhone(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePhone(orderParam); - } - - /** - * 验证推荐编号、推荐关系,成功后返回姓名,只有注册订单调用 - * - * @param orderParam 必须推荐人 - */ - @Override - @PostMapping("/valid-p-code") - public AjaxResult validateReferenceRelation(@RequestBody OrderParam orderParam) { - // 报单中心只能是登陆人 - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - initPkCountry(orderParam); - return super.validateReferenceRelation(orderParam); - } - - /** - * 验证安置编号,成功后返回姓名 - * - * @param orderParam 必须安置人 当传输的值中安置部门不为空时,校验安置位置 - */ - @Override - @PostMapping("/valid-p-p-code") - public AjaxResult validatePlaceParentMemberCode(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePlaceParentMemberCode(orderParam); - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - */ - @PostMapping("/valid-authority") - public AjaxResult validateRegisterAuthority() { - // 前台登录验证登录会员,后台空点验证输入的报单人 - return super.validateRegisterAuthority(SecurityUtils.getUserId(), null); - } - /** * 校验会员等级, 计算会员等级 * @@ -413,108 +217,14 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderParam.setCenterCodeId(SecurityUtils.getUserId()); convertShoppingCarToSku(orderParam); - // 计算等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (orderParam.getUpgradeMemberCode() == null) { - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - } else { - CuMember cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - orderParam.setCenterCodeId(cuMember.getPkId()); - } - } + initPkCountry(orderParam); OrderReturn orderReturn = getOrderService().computeLevel(orderParam); if (orderReturn.getIsEnough()) { return AjaxResult.success(orderReturn); } else { - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); - } + return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); } } - /** - * 快速注册 - * - * @param orderParam 参数 - */ - @PostMapping("/quick-reg") - public AjaxResult quickRegistration(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - CuMember parentCuMember; - if (StringUtils.isEmpty(orderParam.getParent())) { - orderParam.setParentId(SecurityUtils.getUserId()); - parentCuMember = getOrderService().getCuMemberByKey(orderParam.getParentId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } else { - parentCuMember = getCuMemberByCode(orderParam.getParent()); - if (parentCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParentId(parentCuMember.getPkId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } - - CuMember cuMember = CuMember.builder() - .pkParent(orderParam.getParentId()) - .memberName(orderParam.getMemberName()) - .memberCode(orderParam.getMemberCode()) - .pkSettleCountry(SecurityUtils.getPkCountry()) - .build(); - boolean isFirst = getOrderService().validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - cuMember = getOrderService().obtainLastResettleByRecommend(cuMember, Boolean.TRUE, isFirst); - - String placeParentName; - if (null == cuMember.getPkPlaceParent()) { - if (SecurityUtils.getUserId().equals(parentCuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } else { - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } - - return AjaxResult.success(OrderReturn.builder() - .isFirst(isFirst) - .parentName(orderParam.getParentName()) - .placeParent(cuMember.getMemberCode()) - .placeParentName(placeParentName) - .placeDept(cuMember.getPlaceDept()).build()); - } - - @PostMapping("/update-default") - public AjaxResult setRegisterDefault(@RequestBody OrderParam orderParam) { - if (orderParam.getDisplayDefault() == null) { - orderParam.setDisplayDefault(0); - } - redisService.setCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId(), orderParam.getDisplayDefault(), CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.DAYS); - return AjaxResult.success(); - } - - @GetMapping("/query-default") - public AjaxResult setRegisterDefault() { - Integer displayDefault = redisService.getCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId()); - return AjaxResult.success(OrderReturn.builder().displayDefault(displayDefault == null ? 0 : displayDefault).build()); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java index f47c79d2..23b18aaf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java @@ -14,15 +14,11 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * 销售订单-明细表 Mapper 接口 - * - * @author hzs - * @since 2022-08-31 */ public interface SaOrderItemsMapper extends BaseMapper { @@ -119,17 +115,11 @@ public interface SaOrderItemsMapper extends BaseMapper { * 更新订单明细表,将订单明细更改为删除 * * @param saOrder 订单 - * @return: Boolean - * @Author: sui q - * @Date: 2022/10/24 20:48 */ Integer updateOrderItems(SaOrder saOrder); /* - * @description: - * @author: sui q - * @date: 2023/7/27 16:16 - * @param: null null + * **/ void updateOrderItemsByMemberList(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); @@ -140,9 +130,6 @@ public interface SaOrderItemsMapper extends BaseMapper { * @param pkOrderItemsId 订单明细 * @param pkApprove 审核人 * @param currentDate 更新时间 - * @return: Boolean - * @Author: sui q - * @Date: 2023/3/28 11:25 */ Integer updateOrderItemsById(@Param("pkOrderItemsId") List pkOrderItemsId, @Param("pkApprove") Long pkApprove, @Param("currentDate") Date currentDate); @@ -155,11 +142,7 @@ public interface SaOrderItemsMapper extends BaseMapper { List queryListByOrderId(@Param("orderIdList") List orderIdList); /** - * @description: 根据订单ID查询订单商品明细列表 - * @author: zhang jing - * @date: 2023/5/29 15:38 - * @param: [orderIdList, tOrderIdList] - * @return: java.util.List + * 根据订单ID查询订单商品明细列表 **/ List waresListByOrderId(@Param("orderIdList") List orderIdList); @@ -206,11 +189,7 @@ public interface SaOrderItemsMapper extends BaseMapper { List selectByList(@Param("pkOrder") Long pkOrder); /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List + * 根据订单ID查询商品 **/ List getOrderItemsParams(@Param("orderIdList") List orderIdList); @@ -260,22 +239,6 @@ public interface SaOrderItemsMapper extends BaseMapper { */ List selectByWaresCodeList(@Param("orderCode") String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(@Param("pkMember") Long pkMember, - @Param("waresCodeList") List waresCodeList, - @Param("payTime") Date payTime, - @Param("orderTypeList") List orderTypeList, - @Param("systemType") Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java index 9de5b9c0..a0f3ad2c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 + * Mapper 接口 */ public interface SaOrderRelationItemsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java index 5d3cf456..54794409 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface SaOrderRelationMapper extends BaseMapper { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java index 77ce7f4b..5769b1f4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java @@ -1,55 +1,12 @@ package com.hzs.sale.order.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员商品限购 Mapper 接口 - * - * @author hzs - * @since 2025-03-11 */ public interface SaOrderWaresLimitMapper extends BaseMapper { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(@Param("pkMember") Long pkMember, - @Param("orderType") Integer orderType, - @Param("limitDate") String limitDate, - @Param("waresCodeList") List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(@Param("dataList") List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(@Param("pkOrder") Long pkOrder, - @Param("pkMember") Long pkMember, - @Param("modifiedTime") Date modifiedTime, - @Param("waresCodeList") List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java index 256ec76a..32e3562f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java @@ -42,14 +42,6 @@ public interface IOrderBusinessService { */ String checkOrderDeliver(List orderCodeList, Integer pkCountry); - /** - * 校验新零售盒数产品是否可以换货 - * - * @param param 请求入参 - * @return - */ - String checkOrderRetailProduct(OrderProductParam param); - /** * 本次业务修改费用 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index f9177c35..d92177ae 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -14,7 +14,6 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -208,18 +207,6 @@ public interface ISaOrderItemsService extends IService { */ List selectByWaresCodeList(String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java index b723be42..fdfef547 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * 服务类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务类 */ public interface ISaOrderRelationItemsService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java index b336e5ef..f81fcba3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 服务类 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface ISaOrderRelationService extends IService { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index a5a46abe..b244439a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -25,43 +24,6 @@ import java.util.List; */ public interface ISaOrderService extends IService { - /** - * 验证手机号注册次数 - * 根据手机号查询出目前系统所有的会员 - * - * @param cuMember 会员的各种属性、手机号码必输 国家 - */ - List queryMemberExtByCondition(CuMember cuMember); - - /** - * 查找安置人伞上 - * - * @param placeParentId 安置人 - */ - List querySponsorOnUmbrella(Long placeParentId, String phone); - - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList); - - /** - * 查找安置人伞下 - * - * @param memberId 安置人,编号 - */ - List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent); - - /** - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 1代表左区极左极下,2代表右区极左极下 - */ - CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept); - /** * 根据订单编号查询订单 * @@ -121,13 +83,6 @@ public interface ISaOrderService extends IService { */ CuMember getCuMemberByCode(String code); - /** - * 加锁,将键锁定 - * - * @param key 锁定的键 - */ - Boolean lockKey(String key); - /** * 查询会员账户状态,账户信息 * @@ -143,81 +98,11 @@ public interface ISaOrderService extends IService { */ CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); - - /** - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam 会员端的报单信息 - */ - Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam); - - /* - * 确认嗨粉订单根据参数 - **/ - Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - */ - CuMember packageCuMember(OrderParam orderParam); - /* * 这是会员等级 **/ Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); - /** - * 点击支付按钮,输入密码,确认下单(注册订单) - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - * @param isHaiFun 是否嗨粉 - */ - Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun); - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 生成升级待支付订单 - * - * @param orderParam 参数信息 - */ - Boolean confirmRepurchaseSaOrder(OrderParam orderParam); - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 订单以及明细入库等处理 - * - * @param saOrderExt 订单(带明细) - */ - void processOrder(SaOrderExt saOrderExt); - /** * 是否直接支付 * @@ -270,14 +155,6 @@ public interface ISaOrderService extends IService { */ GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade); - /** - * 根据推荐人获取极左极下最末安置人 - * - * @param cuMember 会员 需要放(推荐人、国家、新用户姓名、新用户手机号) - * @param isFirstAchieve 是否验证首购业绩 - */ - CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst); - /** * 生成空单注册 * @@ -285,22 +162,6 @@ public interface ISaOrderService extends IService { */ String registerEmptyOrder(OrderBlankRegParams orderBlankRegParams); - /** - * 验证是否必须有首单 - * - * @param pkParent 推荐人主键 - * @param pkCountry 国家 - */ - boolean validateFirstOrder(Long pkParent, Integer pkCountry); - - /** - * 验证是否左区必须现有安置才能安置右区 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry); - /** * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 * @@ -540,7 +401,6 @@ public interface ISaOrderService extends IService { */ void waresSalesAccrual(List waresNumberParamList); - /** * 会员首页我的市场 * @@ -620,12 +480,4 @@ public interface ISaOrderService extends IService { List gradeList, CuMember updateGradeMember, Integer systemType, Integer isPay); - /** - * 处理最终等级(多送2级) - * @param gradeList - * @param pkGrade - * @return - */ - BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java index fff476ed..807d6c8a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java @@ -1,48 +1,12 @@ package com.hzs.sale.order.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务类 - * - * @author hzs - * @since 2025-03-11 */ public interface ISaOrderWaresLimitService extends IService { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java index 85a7d103..20302130 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java @@ -5,9 +5,6 @@ import com.hzs.common.domain.sale.order.SaOrderWares; /** * 订单商品拆分 服务类 - * - * @author hzs - * @since 2024-12-13 */ public interface ISaOrderWaresService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index 73b02276..ec0b2da2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -91,8 +91,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { private IBdProductService iBdProductService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdWaresService iBdWaresService; @DubboReference IServiceChargeServiceApi iServiceChargeServiceApi; @@ -151,34 +149,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - @Override - public String checkOrderRetailProduct(OrderProductParam param) { - // 盒数商品对应的产品列表 - List pkProductList = iBdWaresService.listBoxProduct(BoxProductUtil.getBoxWaresListBySystemType(null)); - // 换货产品列表 - List paramProductList = param.getItemList().stream().map(OrderProductDetailParam::getPkProduct).collect(Collectors.toList()); - - SaOrder saOrder = iSaOrderService.getOne(Wrappers.lambdaQuery() - .eq(SaOrder::getOrderCode, param.getOrderCode()) - ); - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 盒数商品订单,换货的产品是否都是盒数商品下的,如果是则可以进行更换,如果不是则不能更换 - for (Integer pkProduct : paramProductList) { - if (!pkProductList.contains(pkProduct)) { - return "盒数商品与普通商品不能互相换货"; - } - } - } else { - // 非盒数商品订单 - for (Integer pkProduct : paramProductList) { - if (pkProductList.contains(pkProduct)) { - return "普通商品与盒数商品不能互相换货"; - } - } - } - return null; - } - @Override public Map queryChargeLog(List saOrderList, EApprovalBusiness eApprovalBusiness, Integer pkCountry) { // key 订单编号, value 扣款实体 @@ -1440,23 +1410,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } } else if (orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue())) { // 其他撤单 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return validateCancelOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - validateCancelOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 2025.03.05 复购可以升级,需要必须从最后一单开始撤单 List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), + Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), null); if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { validateCancelOrderVO.setMsg("撤销复购订单,只能从最新的订单开始撤销,最新的订单编号:" + saOrderList.get(0).getOrderCode()); @@ -2286,13 +2243,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { saOrderItems.setPkWares(0); saOrderItems.setPkWaresDetail(0); saOrderItems.setPkWaresSpecsSku(0); - - // 2025.02.11 如果是盒数商品换货,需要更新成最新的盒数商品ID - List tmpList = iBdWaresService.listBoxProductAndWares(BoxProductUtil.getBoxWaresListBySystemType(null), saOrderItems.getPkProduct(), ESpecialArea.getRetailSpecialAreaValue(saOrder.getOrderType())); - if (CollectionUtil.isNotEmpty(tmpList)) { - saOrderItems.setPkWares(tmpList.get(0).getPkWares()); - } - createOrderItemsList.add(saOrderItems); } else { // 更新数据 @@ -2377,13 +2327,8 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - /** - * @description: 校验自助撤单 - * @author: zhang jing - * @date: 2023/11/21 15:23 - * @param: [orderCancelParam, businessCode] - * @return: com.hzs.sale.order.vo.ValidateCancelOrderVO + * 校验自助撤单 **/ @Override public MyOrderVO checkSelfOrder(Long userId, MyOrderVO myOrderVO) { @@ -2392,7 +2337,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() || - myOrderVO.getOrderType() == EOrderType.RETAIL_UPGRADE.getValue() || myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue()) { String lastOrderCode = iSaOrderService.lastOrderList(userId, myOrderVO.getPkCountry()); if (StringUtils.isEmpty(lastOrderCode) || !lastOrderCode.equals(myOrderVO.getOrderCode())) { @@ -2455,21 +2399,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } } - // 升级撤单验证 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - myOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return myOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - myOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } myOrderVO.setSaOrderExt(saOrderExt); return myOrderVO; } @@ -2679,7 +2608,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { log.error("订单抵扣驳回处理失败:更新数据失败"); throw new BaseException(TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_ERROR)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 6469d6ba..744e5f9b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -781,14 +781,7 @@ public class SaOrderHandle { GradeDTO getMemberGradeAndAwardByCountry(CuMember cuMember, Integer specialArea, BigDecimal settleOrderAmount, BigDecimal settleOrderPv, Integer pkCountry, String upgradeWay) { // 根据推荐人等级获取推荐等级 - List gradeList; - if (EOrderType.UPGRADE_ORDER.getValue() != specialArea && - cuMember != null && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { - gradeList = gradeServiceApi.queryHaiFunGradeConfigByCondition(pkCountry).getData(); - } else { - gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); - } + List gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); if (gradeList != null && gradeList.size() > 0) { for (GradeDTO gradeDTO : gradeList) { if (validateGradeByAchieve(settleOrderAmount, settleOrderPv, gradeDTO)) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 51375c86..2840ac68 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -20,7 +20,6 @@ import com.hzs.sale.order.vo.WaresOrderVo; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.math.BigDecimal; import java.util.*; /** @@ -94,32 +93,16 @@ public class SaOrderItemsServiceImpl extends ServiceImpl selectByList(Long pkOrder) { return baseMapper.selectByList(pkOrder); } - /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List - **/ @Override public List getOrderItemsParams(List orderIdList) { return baseMapper.getOrderItemsParams(orderIdList); @@ -175,22 +158,11 @@ public class SaOrderItemsServiceImpl extends ServiceImpl selectByWaresCodeList(String orderCode) { return baseMapper.selectByWaresCodeList(orderCode); } - @Override - public BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType) { - return baseMapper.getRetailWaresQuantityNew(pkMember, waresCodeList, payTime, orderTypeList, systemType); - } - @Override public int countOrderDeliver(List orderCodeList, Integer pkCountry) { return baseMapper.countOrderDeliver(orderCodeList, pkCountry); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java index ee0d7485..207866f9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.sale.order.service.ISaOrderRelationItemsService; import org.springframework.stereotype.Service; /** - *

- * 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务实现类 */ @Service public class SaOrderRelationItemsServiceImpl extends ServiceImpl implements ISaOrderRelationItemsService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java index f71e24e7..0b26cdb7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java @@ -7,18 +7,9 @@ import com.hzs.sale.order.service.ISaOrderRelationService; import org.springframework.stereotype.Service; /** - *

* 订单与虚拟订单关联表 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 */ @Service public class SaOrderRelationServiceImpl extends ServiceImpl implements ISaOrderRelationService { - @Override - public SaOrderRelation querySaOrderRelationBySaOrder(String orderCode) { - return baseMapper.querySaOrderRelationBySaOrder(orderCode); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 28ef5cd3..223b158a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -8,7 +8,6 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; import com.hzs.common.core.constant.*; @@ -17,14 +16,11 @@ import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.exception.ServiceException; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.business.UpPolicyCurrency; -import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; @@ -32,7 +28,6 @@ import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.base.BdCountry; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; @@ -45,9 +40,7 @@ import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.CuMemberBankParam; import com.hzs.member.account.dto.MemberAmountDTO; -import com.hzs.member.achieve.IMemberAchieveServiceApi; import com.hzs.member.base.IMemberServiceApi; -import com.hzs.member.detail.ICuMemberDetailServiceApi; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.sale.deliver.service.ISaDeliverItemsService; import com.hzs.sale.index.vo.CuMemberMyMarketDetailVO; @@ -59,7 +52,6 @@ import com.hzs.sale.order.service.*; import com.hzs.sale.order.vo.*; import com.hzs.sale.product.service.IBdProductExtendService; import com.hzs.sale.wares.service.*; -import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; @@ -82,10 +74,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; -import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -102,8 +92,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IAwardsServiceApi awardsServiceApi; @DubboReference - IAreaServiceApi areaServiceApi; - @DubboReference IMemberBankServiceApi memberBankServiceApi; @DubboReference IMemberAccountServiceApi memberAccountServiceApi; @@ -116,16 +104,12 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IApprovalServiceApi approvalServiceApi; @DubboReference - IMemberAchieveServiceApi memberAchieveServiceApi; - @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @DubboReference ICuMemberServiceLogServiceApi cuMemberServiceLogServiceApi; @DubboReference IMemberTradeServiceApi memberTradeServiceApi; @DubboReference - ICuMemberDetailServiceApi iCuMemberDetailServiceApi; - @DubboReference IGradeServiceApi iGradeServiceApi; @Autowired @@ -143,49 +127,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Autowired private RabbitTemplate rabbitTemplate; @Autowired - private ISaOrderRelationService saOrderRelationService; - @Autowired private IBdWaresSpecsRelationService waresSpecsRelationService; @Autowired - private ISaOrderRelationItemsService saOrderRelationItemsService; - @Autowired private ISaDeliverItemsService saDeliverItemsService; @Autowired private IAcRetailPickService iAcRetailPickService; - @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; @Autowired private IOrderBusinessService orderBusinessService; @Autowired private ISaOrderChargeLogService saOrderChargeLogService; - @Autowired - private RedisService redisService; - - @Override - public List queryMemberExtByCondition(CuMember cuMember) { - return memberServiceApi.getMemberInfo(cuMember).getData(); - } - - @Override - public List querySponsorOnUmbrella(Long placeParentId, String phone) { - return memberServiceApi.querySponsorOnUmbrella(placeParentId, null, phone).getData(); - } - - @Override - public List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList) { - return memberServiceApi.selectPlaceSponsorUnderUmbrellaByCondition(memberId, cuMemberExtList).getData(); - } - - @Override - public List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent) { - return memberServiceApi.queryPlaceSponsorUnderUmbrella(memberId, placeParent).getData(); - } - - @Override - public CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept) { - return memberServiceApi.queryPlaceSponsorLastLeft(memberId, placeDept).getData(); - } @Override public SaOrder querySaleOrderByOrderCode(SaOrder saOrder) { @@ -271,11 +222,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return memberServiceApi.getMemberByCode(code).getData(); } - @Override - public Boolean lockKey(String key) { - return redisService.lockKeyOnce(key); - } - @Override public List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { return memberAccountServiceApi.queryMemberAccountByCondition(cuMemberAccount).getData(); @@ -285,11 +231,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl public CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList) { BigDecimal payMoney = saOrder.getOrderAmount(); - // 海粉只有升级可以用奖金币,其他专区只能用现金币,验证会员等级,会员是海粉的话除现金账户,其他账户置为0 CuMember cuMember = getCuMemberByKey(saOrder.getPkMember()); - if (EOrderType.UPGRADE_ORDER.getValue() != saOrder.getOrderType() && - cuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, cuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { + if (null != cuMember) { cuMemberAccount.setAccount1(BigDecimal.ZERO); cuMemberAccount.setAccount3(BigDecimal.ZERO); cuMemberAccount.setAccount4(BigDecimal.ZERO); @@ -355,12 +298,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 原始支付金额(订单金额 + 邮费) BigDecimal original = payMoney; - // 2024.05.30 与业务确认,政策币个人配置优先特殊配置 // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -458,111 +399,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 会员端的报单信息 - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - if (isToBePay) { - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - } else if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - // 2023.10.16按最新需求,注册订单需要在支付前需要显示会员编号 - cuMember = memberServiceApi.createRegisterMemberCode(cuMember).getData(); - } - - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者海粉订单 - if (isToBePay && !orderParam.getIsHaiFun()) { - processOrder(saOrderExt); - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(cuMember); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("confirmRegSaOrderByOrderParam 保存会员失败."); - throw new ServiceException("保存会员失败."); - } - } else { - log.error("confirmRegSaOrderByOrderParam 保存会员失败. {}", saveResult.getMsg()); - throw new ServiceException("保存会员失败."); - } - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - @Override - public Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember) { - // 获取会员编号、会员主键 - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者嗨粉订单 - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - return true; - } - - @Override - public SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember) { - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return null; - } - return saOrderExt; - } - - @Override - public CuMember packageCuMember(OrderParam orderParam) { - if (null != orderParam.getPkParent()) { - orderParam.setParentId(orderParam.getPkParent()); - } else { - if (StringUtils.isNotEmpty(orderParam.getParent())) { - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember != null) { - orderParam.setParentId(parentMember.getPkId()); - } - } - } - - if (StringUtils.isNotEmpty(orderParam.getPlaceParent())) { - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember != null) { - orderParam.setPlaceParentId(placeMember.getPkId()); - } - } - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - return cuMember; - } - - /** - * 设置会员最终的等级 - * - * @param cuMember 会员 - * @param saOrderExt 订单 - * @return boolean - */ @Override public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt); @@ -579,9 +415,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (parentCuMember.getPkSettleCountry() != null && cuMember.getPkSettleCountry() != null && Objects.equals(parentCuMember.getPkSettleCountry(), cuMember.getPkSettleCountry())) { GradeDTO validateGradeDTO = queryGradeConfigByCondition(parentCuMember.getPkSettleCountry(), parentCuMember.getPkSettleGrade()); // 获取推荐人可以推荐的等级 - GradeDTO tmpGradeDTO = gradeDTO; if (validateGradeDTO == null || validateGradeDTO.getBdGradeScopeExtList() == null || - validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> tmpGradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { + validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> gradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { return true; } } @@ -611,41 +446,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl return false; } - /** - * 保存订单信息 - * - * @param saOrderExt 订单 - */ - @Transactional(rollbackFor = Exception.class) - @Override - public void processOrder(SaOrderExt saOrderExt) { - // 待支付直接保存订单、会员 - // 保存订单 - save(saOrderExt); - // 将订单表主键封装为明细表主键 - List waresNumberParamList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkOrder(saOrderExt.getPkId()); - if (saOrderItems.getPkWares() != null && saOrderItems.getPkWares() != 0) { - // 换货或等,商品为0,则不需要处理 - waresNumberParamList.add(WaresNumberParam.builder().pkWares(saOrderItems.getPkWares()).number(saOrderItems.getWaresQuantity()).build()); - } - }); - // 更新销量 - // 过滤相同商品主键数据 - List waresNumberList = waresNumberParamList.stream().filter(DeduplicationUtil.distinctByKey(WaresNumberParam::getPkWares)).collect(Collectors.toList()); - waresSalesAccrual(waresNumberList); - // 保存订单明细 - saOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - } - @Override public boolean getIsToBePayByOrderType(Integer pkCountry, Integer specialArea) { String confirmPay; if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { @@ -671,8 +476,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (getIsToBePayByOrderType(pkCountry, specialArea)) { if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_TIME.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_TIME.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { @@ -693,359 +496,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return timeSecond; } - /** - * 点击支付按钮,输入密码,确认下单 - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun) { - boolean isToBePay = getIsToBePayByOrderType(newCuMember.getPkSettleCountry(), saOrderExt.getOrderType()); - Date currentDateTime = DateUtils.currentDateTime(); - Long pkCreator = saOrderExt.getPkCreator(); - newCuMember.setPayStatus(EPayStatus.PAID.getValue()); - newCuMember.setPayTime(currentDateTime); - saOrderExt.setPayTime(currentDateTime); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - if (isToBePay && !isHaiFun) { - // 根据业绩判断自动上树 - newCuMember.setPkModified(pkCreator); - newCuMember.setModifiedTime(currentDateTime); - saOrderExt.setPkModified(pkCreator); - saOrderExt.setModifiedTime(currentDateTime); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setPkModified(pkCreator); - saOrderItems.setModifiedTime(currentDateTime); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 更新订单信息 - updateSaOrder(saOrderExt); - } else { - newCuMember.setConsumeMoney(BigDecimal.ZERO); - newCuMember.setConsumeAchieve(BigDecimal.ZERO); - if (setLastCuMemberGrade(newCuMember, saOrderExt)) { - return false; - } - if (isHaiFun) { - if (null == newCuMember.getPkPlaceParent() - || null == newCuMember.getPlaceDept()) { - // 2024.01.13 当安置人和安置部门为空时,则进行重新上树 - CuMember cuMember = repeatTry(newCuMember, Boolean.FALSE); - newCuMember.setPkPlaceParent(cuMember.getPkPlaceParent()); - newCuMember.setPlaceDept(cuMember.getPlaceDept()); - } - isToBePay = false; - } - newCuMember.setCreationTime(currentDateTime); - saOrderExt.setCreationTime(currentDateTime); - - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 保存订单信息 - processOrder(saOrderExt); - } - - // 2024.05.29 会员续约需求,【有效期】为购买时间次年的上月最后一天 - newCuMember.setExpireDate(DateUtils.beforeMonthLastDate(DateUtils.addYears(currentDateTime, 1))); - // 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员) - newCuMember.setStopDate(DateUtils.addMonths(newCuMember.getExpireDate(), 6)); - - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(newCuMember, saOrderExt, isToBePay, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRegSaOrder 保存会员失败!."); - throw new ServiceException("保存会员失败!."); - } - } else { - log.error("payRegSaOrder 保存会员失败!.,{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!."); - } - - try { - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - log.error("payRegSaOrder 发送短信或推送MQ失败,", e); - } - return Boolean.TRUE; - } - - /** - * 尝试重新换位置 - * - * @param newCuMember 修改的会员 - */ - private synchronized CuMember repeatTry(CuMember newCuMember, Boolean isFirstAchieve) { - CuMember cuMember = obtainLastResettleByRecommend(newCuMember, isFirstAchieve, null); - if (!lockKey(CacheConstants.POSITION + cuMember.getPkPlaceParent() + cuMember.getPlaceDept())) { - try { - Thread.sleep(300); - repeatTry(newCuMember, isFirstAchieve); - } catch (Exception e) { - e.printStackTrace(); - } - } - return cuMember; - } - - private void updateSaOrder(SaOrderExt saOrderExt) { - redisService.lockKeyMany(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - try { - updateById(saOrderExt); - saOrderItemsService.updateBatchById(saOrderExt.getOrderItemsList()); - } finally { - redisService.unlock(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - } - } - - /** - * @param saOrderExt 销售订单 - * @Description: 销售订单更改状态为待支付 - * @return: void - * @Author: sui q - * @Date: 2022/10/24 21:35 - */ - public void encapsulationSaOrder(SaOrderExt saOrderExt) { - saOrderExt.setPayTime(new Date()); - saOrderExt.setPkModified(saOrderExt.getPkCreator()); - saOrderExt.setModifiedTime(saOrderExt.getPayTime()); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkModified(saOrderExt.getPkCreator()); - saOrderItems.setModifiedTime(saOrderExt.getPayTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - }); - } - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - GradeDTO oldGradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - // 封装等级,重新计算会员等级 - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - String upgradeWay = querySystemConfigByKey(saOrderExt.getPkCountry(), ESystemConfig.UPGRADE_WAY.getKey()); - if (oldGradeDTO.getGradeValue() >= cuMember.getPkSettleGradeValue() && !Objects.equals(Integer.toString(EUpgradeWay.TOTAL.getValue()), upgradeWay)) { - return false; - } - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - // 处理会员信息,更新会员等级,扣款 - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payUpgradeSaOrder 保存会员失败!!!"); - throw new ServiceException("保存会员失败!!!"); - } - } else { - log.error("payUpgradeSaOrder 保存会员失败!!!{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!!!"); - } - try { -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - - if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRepurchaseSaOrder(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember; - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea()) { - cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - } else { - cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); - } - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (saOrderExt.getOrderItemsList().size() == 0) { - return false; - } - - // 升级订单验证等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - } - - if (isToBePay) { - processOrder(saOrderExt); - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - /** - * @param orderAmount 订单金额 - * @param postage 邮费 - * @param saOrderExtList 订单列表 - * @Description: 复购订单、福利订单插入 订单跟虚拟订单关系 - * @return: void - * @Author: sui q - * @Date: 2023/3/17 17:46 - */ - private void saveSaOrderRelation(BigDecimal orderAmount, BigDecimal postage, List saOrderExtList) { - if (saOrderExtList.size() > 0) { - SaOrderExt saOrderExt = saOrderExtList.get(0); - SaOrderRelation saOrderRelation = SaOrderRelation.builder() - .orderCode(saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue())) - .orderType(saOrderExt.getOrderType()) - .pkRate(saOrderExt.getPkRate()) - .orderAmount(orderAmount) - .postage(postage) - .build(); - saOrderRelation.setPkCreator(saOrderExt.getPkCreator()); - saOrderRelation.setPkCountry(saOrderExt.getPkCountry()); - saOrderRelationService.save(saOrderRelation); - List saOrderRelationItemsList = new ArrayList<>(); - for (SaOrderExt saOrder : saOrderExtList) { - SaOrderRelationItems saOrderRelationItems = SaOrderRelationItems.builder() - .pkOrder(saOrder.getPkId()) - .build(); - saOrderRelationItems.setPkCountry(saOrder.getPkCountry()); - saOrderRelationItems.setPkCreator(saOrder.getPkCreator()); - saOrderRelationItemsList.add(saOrderRelationItems); - } - saOrderRelationItemsService.saveBatch(saOrderRelationItemsList); - } - } - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - - // 处理会员信息,更新会员等级,扣款 - CuMember member = getCuMemberByKey(saOrderExt.getPkMember()); - CuMember cuMember = calculateHaFunMemberGrade(saOrderExt, member); - - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRepurchaseSaOrder 保存订单失败!"); - throw new ServiceException("保存订单失败!"); - } - } else { - log.error("payRepurchaseSaOrder 保存订单失败! {}", saveResult.getMsg()); - throw new ServiceException("保存订单失败!"); - } - - try { -// // 推送秒结数据 -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - /** - * 封装整个订单 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - private SaOrderExt packageWholeSaOrder(OrderParam orderParam, CuMember cuMember) { - // 获取订单编号 - String orderCode = orderParam.getOrderCode(); - if (StringUtils.isEmpty(orderCode)) { - orderCode = saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue()); - } - SaOrderExt saOrderExt = saOrderHandle.packageSaveSaOrder(orderParam, cuMember, orderCode); - // 封装订单明细(2024.02.02添加处理订单扩展类型) - saOrderHandle.packSaOrderItems(cuMember, saOrderExt, orderParam); - // 第二次封装订单,根据明细表计算订单主表金额、业绩,处理明细仓库 - // key为产品id - List productIdList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderExt.setPkRate(saOrderItems.getPkRate()); - if (EYesNo.YES.getIntValue() == saOrderItems.getIsGift()) { - return; - } - // 总价; - saOrderExt.setOrderAmount(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAmount(), saOrderItems.getPrice(), saOrderItems.getQuantity())); - // 总业绩 - saOrderExt.setOrderAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAchieve(), saOrderItems.getAchievement(), saOrderItems.getQuantity())); - // 总考核业绩 - saOrderExt.setOrderAssAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAssAchieve(), saOrderItems.getAssAchievement(), saOrderItems.getQuantity())); - productIdList.add(saOrderItems.getPkProduct()); - }); - - if (CountryConstants.CHINA_COUNTRY.equals(saOrderExt.getPkCountry())) { - // 中国金额四舍五入保留2位小数 - saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().setScale(2, RoundingMode.HALF_UP)); - } - - if (productIdList.size() > 0 && saOrderExt.getRecProvince() != null) { - // 根据产品,先查看是否由仓库,有仓库的话修改仓库 - List bdProductStorehouseList = areaServiceApi.queryBdProductStorehouseByCondition(productIdList, saOrderExt.getRecProvince()).getData(); - Map bdProductStorehouseMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(bdProductStorehouseList)) { - bdProductStorehouseList.forEach(bdProductStorehouse -> bdProductStorehouseMap.put(bdProductStorehouse.getPkProduct(), bdProductStorehouse)); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - if (bdProductStorehouseMap.containsKey(saOrderItems.getPkProduct())) { - BdProductStorehouseExt bdProductStorehouseExt = bdProductStorehouseMap.get(saOrderItems.getPkProduct()); - saOrderItems.setPkStorehouse(bdProductStorehouseExt.getPkStorehouse().intValue()); - } - } - } - } - saOrderExt.setUploadAchieve(saOrderExt.getOrderAchieve()); - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - - @Override public void queryPostageByParam(OrderParam orderParam) { CuMember cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); @@ -1100,10 +550,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl String upgradeWay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_WAY.getKey()); // 会员等级为1的话 为一次性补差升级; CuMember cuMember = getCuMemberByKey(pkMember); - if (specialArea.equals(EOrderType.UPGRADE_ORDER.getValue())) { - //补差升级,当天的按照累计升级,非当天按照补差升级 - upgradeWay = Integer.toString(EUpgradeWay.DIFFERENCE.getValue()); - } return saOrderHandle.getMemberGradeAndAwardByCountry(cuMember, specialArea, orderAmount, orderAchieve, pkCountry, upgradeWay); } @@ -1111,8 +557,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl * 生成空单注册 * * @param orderBlankRegParams 参数 - * @return: String - * @Date: 2022/11/14 15:10 */ @Override @Transactional(rollbackFor = Exception.class) @@ -1495,50 +939,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return saOrderHandle.queryGradeConfigByCondition(pkCountry, pkGrade); } - @Override - public CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst) { - // 验证是否首单 - if (isFirst == null) { - isFirst = validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - } - cuMember = memberAchieveServiceApi.queryCuMemberAchieveByPkMember(cuMember, isFirst, isFirstAchieve).getData(); - // 验证是否推荐过人,没有推荐只能放入极左极下 - return cuMember; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkParent 推荐人 - * @param pkCountry 国家 - */ - @Override - public boolean validateFirstOrder(Long pkParent, Integer pkCountry) { - String validateFirstOrder = querySystemConfigByKey(pkCountry, ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateFirstOrder)) { - Integer count = queryCuMemberByPkMember(pkParent); - return count == 0; - } - return false; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - @Override - public boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry) { - String validateParent = querySystemConfigByKey(pkCountry, ESystemConfig.PARENT_VALIDATE.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateParent)) { - // 因为使用Member作为入参,此处 category 传入 10,代表 0=正常,1=待激活 - List cuMemberExtList = queryMemberExtByCondition(CuMember.builder().pkPlaceParent(pkPlaceParent).placeDept(EPlaceDept.LEFT_DEPT.getValue()).category(10).build()); - return cuMemberExtList.size() == 0; - } - return false; - } - @Override public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); @@ -1729,8 +1129,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl private CuMember calculateHaFunMemberGrade(SaOrderExt saOrderExt, CuMember newCuMember) { CuMember cuMember = null; - if (newCuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, newCuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, newCuMember.getPkSettleCountry())) { + if (newCuMember != null) { int oldLevel = newCuMember.getPkSettleGrade(); // 封装等级,重新计算会员等级 setLastCuMemberGrade(newCuMember, saOrderExt); @@ -1742,12 +1141,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return cuMember; } - /** - * 空单注册审核通过 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1757,12 +1150,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 空单注册审核驳回 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderReject(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1794,9 +1181,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 定时关单 订单三十分钟未支付自动关闭 - */ @Override public void closeOrder() { R> configMap = systemConfigServiceApi.getSystemConfig(); @@ -1815,9 +1199,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REGISTER_ORDER_TIME.getKey())) { // 注册专区 orderType = EOrderType.REGISTER_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.UPGRADE_ORDER_TIME.getKey())) { - // 升级专区 - orderType = EOrderType.UPGRADE_ORDER.getValue(); } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REPURCHASE_ORDER_TIME.getKey())) { // 复购专区时间 orderType = EOrderType.REPURCHASE_ORDER.getValue(); @@ -1836,27 +1217,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - /** - * 统计用户pv - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumPv(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumPv(startPayDate, endPayDate, memberId); } - /** - * 统计用户金额 - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumAmount(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumAmount(startPayDate, endPayDate, memberId); @@ -1867,9 +1232,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderType(memberId, pkCountry); } - /** - * 商品销量累计 - */ @Override public void waresSalesAccrual(List waresNumberParamList) { try { @@ -1907,7 +1269,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl public SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate) { List orderTypeList = new ArrayList<>(); orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("sum(order_amount) orderAmount,sum(order_achieve) orderAchieve") .eq(SaOrderFieldConstants.ORDER_STATUS, EOrderStatus.PAY.getValue()) @@ -1932,12 +1293,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return i; } - /** - * 根据编号查询会员首单 - * - * @param memberCodeList - * @return - */ @Override public List checkMemberIsFirstOrder(List memberCodeList) { return baseMapper.checkMemberIsFirstOrder(memberCodeList); @@ -2015,12 +1370,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryByPkIdOrCode(pkOrder, orderCode, pkCountry); } - - /** - * 查询订单单品统计 - * - * @return - */ @Override public List singleItemStat(SingleItemStatParam singleItemStatParam) { return baseMapper.singleItemStat(singleItemStatParam); @@ -2095,8 +1444,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { + if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -2193,28 +1541,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 计算新零售撤单等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @return - */ - private GradeDTO calculateRetailCancelGrade(CuMember cuMember, SaOrder saOrder) { - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrder.getPkId()).getData(); - if (null != cuMemberLevel) { - return gradeServiceApi.getGrade(cuMemberLevel.getNewLevel()).getData(); - } - - // 没有升级记录,直接查会员注册信息表 - CuMemberRegister cuMemberRegister = iCuMemberDetailServiceApi.getMemberRegister(cuMember.getPkId()).getData(); - if (null == cuMemberRegister) { - throw new ServiceException("没有会员注册信息"); - } - return gradeServiceApi.getGrade(cuMemberRegister.getPkRegisterGrade()).getData(); - } - /** * 处理撤销升级订单 * @@ -2226,93 +1552,13 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void handleCancelUpgradeOrder(SaOrderExt saOrderExt, SaOrder updSaOrder, Long pkApprove, BusinessCommissionDTO businessCommissionDTO) { // 其他撤单 撤销升级订单 CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 计算等级 - // 空单注册,从cu_member_register中获取 - if (updSaOrder == null) { - CuMemberRegister cuMemberRegister = memberServiceApi.queryCuMemberRegister(saOrderExt.getPkMember()).getData(); - cuMember.setPkRegisterGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setPkSettleGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setConsumeMoney(BigDecimal.ZERO); - cuMember.setConsumeAchieve(cuMemberRegister.getConsumeAchieve()); - - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrderExt.getPkId()).getData(); - if (null != cuMemberLevel) { - // 存在手动升级 - cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); - } - } else { - // 传的订单是当前撤的订单 - GradeDTO gradeDTO = calculateRetailCancelGrade(cuMember, saOrderExt); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - } - - Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); - if (null == firstDate) { - // 盒数商品订单最早的时间为空,则会员未激活 - cuMember.setPayTime(null); - cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); - cuMember.setIsActivate(EYesNo.NO.getIntValue()); - } - saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单存在盒数商品撤单,需要处理降级操作 - if (saOrderExt.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // TODO 目前只有注册、升级才能激活,复购不进行处理 -// Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); -// if (null == firstDate) { -// // 盒数商品订单最早的时间为空,则会员未激活 -// cuMember.setPayTime(null); -// cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); -// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } - - // TODO 恢复升级专区,复购专区不需要处理等级问题 -// // 如果复购订单后面还有升级订单,不需要处理等级问题; 复购订单后面没有升级订单,走新逻辑校验 -// if (this.count(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, saOrderExt.getPkMember()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_UPGRADE.getValue()) -// .ge(SaOrder::getPayTime, saOrderExt.getPayTime()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// ) == 0) { -// // 带有盒数商品的订单,需要校验等级 -// List gradeList = iGradeServiceApi.getRetailGradeList().getData(); -// // 当前会员等级 -// BdGrade memberGrade = this.getGrade(cuMember.getPkSettleGrade(), gradeList); -// -// // 需要添加的升级记录列表 -// List createLevelList = new ArrayList<>(); -// // 需要删除的升级记录列表 -// List deleteLevelList = new ArrayList<>(); -// // 新等级计算 -// BdGrade newGrade = this.handleNewGrade(cuMember, memberGrade, gradeList, saOrderExt, createLevelList, deleteLevelList); -// -// if (memberGrade.getGradeValue() < EGrade.VIP.getValue() && newGrade.getGradeValue() < memberGrade.getGradeValue()) { -// // 当前会员等级不是V4或者V5 并且 新等级小于当前等级需要进行处理 -// saOrderExt.setNewGrade(newGrade); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } -// saOrderExt.setCreateLevelList(createLevelList); -// saOrderExt.setDeleteLevelList(deleteLevelList); -// } - } - } else if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { // 新提货订单 if (!iAcRetailPickService.cancelRetailPickOrder(saOrderExt.getPkId(), pkApprove)) { throw new ServiceException("撤销订单退还提货失败"); } } - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || - EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { - // 需要查询盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); - // 复购、重消订单处理限购 - iSaOrderWaresLimitService.updateCancelOrder(saOrderExt.getPkId(), saOrderExt.getPkMember(), saOrderExt.getModifiedTime(), boxProductList); - } - if (!memberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO).getData()) { throw new ServiceException("撤单处理会员失败"); } @@ -2326,7 +1572,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void pushCancelOrderMq(SaOrderExt saOrderExt) { try { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { // 撤单标记为 true @@ -2349,71 +1594,14 @@ public class SaOrderServiceImpl extends ServiceImpl impl gradeList = iGradeServiceApi.getRetailGradeList().getData(); } - // 盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(systemType); - // 当前产品盒数 BigDecimal boxNum = BigDecimal.ZERO; - // 处理商品盒数 - this.handleWaresBoxNum(specialArea, orderItemsParams); - // 判断订单明细中指定产品数量,校验等级 - for (OrderItemsParam orderItemsParam : orderItemsParams) { - if (boxWaresList.contains(orderItemsParam.getWaresCode())) { - // 存在指定商品,需要累计盒数 - boxNum = boxNum.add(orderItemsParam.getBoxNum().multiply(new BigDecimal(orderItemsParam.getQuantity()))); - } - } // 返回等级 BdGrade bdGrade = null; if (ESpecialArea.RETAIL_REGISTER.getValue() == specialArea) { // 注册专区直接算等级 - bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea) { - // 升级专区,一次性补差升级 - if (boxNum.compareTo(BigDecimal.ZERO) == 0) { - // 不满足升级条件 - throw new ServiceException("不满足升级条件"); - } - - // 当前会员等级 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); - // 2025.08.01 非雨汐团队会多升2级 - if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { - // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - - // 获取升级盒数基数 - BigDecimal baseBoxNum = this.handleBaseBoxNum(updateGradeMember, memberGrade, gradeList, boxWaresList, systemType); - // 计算等级 - bdGrade = this.getGradeByBox(boxNum.add(baseBoxNum), gradeList, memberGrade, true); - - if (bdGrade.getGradeValue().equals(memberGrade.getGradeValue()) - && (EGrade.HAI_FAN.getValue() == bdGrade.getGradeValue() || EGrade.YOU_KE.getValue() == bdGrade.getGradeValue()) - ) { - // 旧等级与新等级相同 并且 旧等级为V1或V2 - return null; - } - - // 2025.08.01 非雨汐团队会多升2级 - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - - // 会员等级 大于等于 购买盒数等级,则不满足升级条件 - if (memberGrade.getGradeValue().compareTo(tmpGrade.getGradeValue()) >= 0) { - return null; - } + bdGrade = this.getGradeByBox(boxNum, gradeList, null); } return bdGrade; } @@ -2421,13 +1609,12 @@ public class SaOrderServiceImpl extends ServiceImpl impl /** * 根据盒数计算等级 * - * @param boxTotal 总盒数 - * @param gradeList 等级列表(可为空) - * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 - * @param checkUpgrade 校验升级 + * @param boxTotal 总盒数 + * @param gradeList 等级列表(可为空) + * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 * @return */ - private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade, boolean checkUpgrade) { + private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade) { if (CollectionUtil.isEmpty(gradeList)) { gradeList = iGradeServiceApi.getRetailGradeList().getData(); } @@ -2440,20 +1627,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl .max(Comparator.comparingInt(BdGrade::getGradeValue)).get(); } else { // 非注册处理 -// if (checkUpgrade) { -// // 当前等级大于等于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } else { -// // 当前等级大于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) > 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } - // 查询等级比现在当前等级大的,然后倒序排序,再查询 购买盒数 <= 等级盒数 的第一个等级,就是当前升级的等级 Optional gradeOptional = gradeList.stream() // new 2025.06.25 V1-V3升级多送两级,需要支持送完还能买,此处暂时注释掉 @@ -2465,838 +1638,4 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - - /** - * 处理升级盒数基数 - * - * @param cuMember 会员信息 - * @param memberGrade 会员等级信息 - * @param gradeList 等级列表 - * @param boxWaresList 盒数商品列表 - * @param systemType 所属系统 - * @return - */ - private BigDecimal handleBaseBoxNum(CuMember cuMember, BdGrade memberGrade, List gradeList, List boxWaresList, - Integer systemType) { - // 升级盒数基数 - BigDecimal baseBoxNum = BigDecimal.ZERO; - // 会员所有升级记录 - List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); - if (CollectionUtil.isNotEmpty(memberLevelList)) { - Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); - if (lastManualOptional.isPresent()) { - // 最新一次的手动升级 - CuMemberLevel lastMemberLevel = lastManualOptional.get(); - BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); - if (lastUpdateGrade.getGradeValue() >= EGrade.MAKER.getValue()) { - // new 2025.06.25 V1-V3升级多送两级,但手动开到V3及以上,则不能继续购买升级 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - // 盒数基数 = 手动升级盒数 + 手动升级之后的升级订单盒数 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, lastMemberLevel.getUpgradeTime(), Collections.singletonList(EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = lastUpdateGrade.getBoxNumber().add(oldBoxNum); - } else { - baseBoxNum = lastUpdateGrade.getBoxNumber(); - } - } else { - // 没有手动升级记录 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = oldBoxNum; - } - } - } - return baseBoxNum; - - -// // 获取今天开始时间 -// Date todayDate = DateUtils.getStartTime(new Date()); -// // 2025.03.18 调整需求,升级走当天累计,当天买的所有都进行积累,24点之后则重新累积(手动升级前后的盒数都算累计) -// int baseBoxNum = 0; -// -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 如果今天有手动升级记录,则以手动升级记录的盒数 + 今天购买的盒数做累计 -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent() && lastManualOptional.get().getUpgradeTime().compareTo(todayDate) >= 0) { -// // 存在今天的手动升级记录 -// CuMemberLevel lastMemberLevel = lastManualOptional.get(); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } else { -// // 如果今天没有手动升级记录,则以今天以前最后一条升级记录的盒数 + 今天购买的盒数做累计 -// memberLevelList = memberLevelList.stream().filter(tmp -> tmp.getUpgradeTime().compareTo(todayDate) < 0).collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// CuMemberLevel lastMemberLevel = memberLevelList.get(0); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } -// } -// } -// -// return baseBoxNum + saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxProductList, todayDate, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); - - -// // 是否当天购买(当天走累计升级,非当天走一次性补差) -// if (HzsUtil.checkCreateMember(cuMember.getCreationTime())) { -// // 当天,走累计升级 -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent()) { -// // 有手动升级记录 -// CuMemberLevel lastManual = lastManualOptional.get(); -// // 手动升级等级 -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastManual.getNewLevel())).findFirst().get(); -// // 升级之后购买的订单盒数 -// int newBoxNumber = saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, lastManual.getUpgradeTime(), -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// // 基数盒数 = 手动升级的等级盒数 + 手动升级之后购买的盒数 -// return lastUpdateGrade.getBoxNumber() + newBoxNumber; -// } else { -// // 没有手动升级记录 -// // 基数盒数 = 购买的盒数 -// return saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, null, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// } -// } -// } else { -// if (null != memberGrade) { -// // 非当天,走一次性补差 -// // 基数盒数 = 当前等级的盒数 -// return memberGrade.getBoxNumber(); -// } -// } -// return 0; - } - -// /** -// * 处理日升级新 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 新等级(可为null) -// * @param manualUpgradeLevel 手动升级等级(可为null) -// * @param queryStartTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录列表 -// * @return -// */ -// private BdGrade handleTodayGrade(CuMember cuMember, Integer oldLevel, Integer lastLevel, Integer manualUpgradeLevel, Date queryStartTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询撤单当天的注册、复购订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .in(SaOrder::getOrderType, EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// // 如果存在手动升级,则以手动升级为基数 -// if (null != manualUpgradeLevel) { -// int tmpBox = this.getGrade(manualUpgradeLevel, gradeList).getBoxNumber(); -// if (tmpBox != 0) { -// oldGradeBox = tmpBox; -// } -// } -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理日升级后每天升级 -// * -// * @param cuMember -// * @param oldGrade -// * @param queryStartTime -// * @param queryEndTime -// * @param memberLevelList -// * @param gradeList -// * @param createLevelList -// * @param deleteLevelList -// * @return -// */ -// private BdGrade handleTodayNextNew(CuMember cuMember, BdGrade oldGrade, Date queryStartTime, Date queryEndTime, -// List memberLevelList, List gradeList, -// List createLevelList, List deleteLevelList) { -// if (queryStartTime.compareTo(new Date()) >= 0) { -// // 查询时间大于等于当前时间了,则结束处理 -// return oldGrade; -// } -// -// // 订单购买当天所有升级记录 -// List todayLevelList = memberLevelList.stream() -// .filter(tmp -> (tmp.getUpgradeTime().compareTo(queryStartTime) >= 0 && tmp.getUpgradeTime().compareTo(queryEndTime) <= 0)) -// .collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(todayLevelList)) { -// // 处理当日等级 -// Integer oldLevel = oldGrade.getPkId(); -// Integer lastLevel = todayLevelList.get(todayLevelList.size() - 1).getNewLevel(); -// // 手动升级记录 -// Integer manualUpgradeLevel = null; -// -// // 当天最后一条手动升级记录 -// Optional manualUpgradeOptional = todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() == tmp.getUpType()) -// .max(Comparator.comparing(CuMemberLevel::getUpgradeTime)); -// if (manualUpgradeOptional.isPresent()) { -// // 存在手动升级记录(计算等级为手动升级盒数为基数 + 当天购买的订单盒数) -// // 删除升级记录时,只删除非手动升级的 -// deleteLevelList.addAll(todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() != tmp.getUpType()) -// .collect(Collectors.toList())); -// // 重算订单当天升级记录(存在手动升级) -// manualUpgradeLevel = manualUpgradeOptional.get().getNewLevel(); -// } else { -// // 不存在手动升级记录(当天购买的订单盒数) -// deleteLevelList.addAll(todayLevelList); -// } -// -// // 今天重算等级 -// oldGrade = this.handleTodayGrade(cuMember, oldLevel, lastLevel, manualUpgradeLevel, -// queryStartTime, queryEndTime, gradeList, createLevelList); -// if (lastLevel.equals(oldGrade.getPkId())) { -// // 重算之后和重算之前等级一致,直接返回当前会员等级 -// return oldGrade; -// } -// } -// -// return this.handleTodayNextNew(cuMember, oldGrade, DateUtils.addDays(queryStartTime, 1), DateUtils.addDays(queryEndTime, 1), -// memberLevelList, gradeList, createLevelList, deleteLevelList); -// } - -// /** -// * 处理首日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleToday(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 存在手动升级,只需要重算手动升级之前的 -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// return newGrade; -// } - -// /** -// * 首日等级有变化,处理次日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleTodayNext(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 次日升级之前的等级 -// BdGrade oldGrade = this.getGrade(oldLevel, gradeList); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, null != queryEndTime ? queryEndTime : new Date()) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理次日一次性升级 -// * -// * @param cuMember 会员信息 -// * @param queryStartTime 升级查询开始时间 -// * @param queryEndTime 升级查询结束时间 -// * @param oldGrade 升级旧等级 -// * @param lowGradeList 需要处理的升级等级 -// * @param gradeList 等级列表 -// * @param createLevelList 需要新増的升级记录 -// */ -// private BdGrade handleNextDay(CuMember cuMember, Date queryStartTime, Date queryEndTime, BdGrade oldGrade, List lowGradeList, -// List gradeList, List createLevelList) { -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,订单盒数大于等于升级盒数的订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getBoxNum, lowGradeList.get(0).getBoxNumber()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(null != queryEndTime, SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV1.getPkId().equals(orderV3.getPkId())) { -// // V1和V3相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V1和V3不相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// -// } -// } -// return newGrade; -// } - - /** - * 获取等级(没有则返回V0) - * - * @param eGrade 等级枚举 - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(EGrade eGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getGradeValue().equals(eGrade.getValue())).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 获取等级(没有则返回V0) - * - * @param pkGrade 等级ID - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(Integer pkGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(pkGrade)).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 封装会员等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @param oldLevel 旧等级 - * @param newLevel 新等级 - * @return - */ - private CuMemberLevel packageMemberLevel(CuMember cuMember, SaOrder saOrder, Integer oldLevel, Integer newLevel) { - CuMemberLevel cuMemberLevel = CuMemberLevel.builder() - .pkMember(cuMember.getPkId()) - .upgradeTime(saOrder.getPayTime()) - .upType(EUpgradeType.BUY_UPGRADE.getValue()) - .oldLevel(oldLevel) - .newLevel(newLevel) - .pkOrder(saOrder.getPkId()) - .build(); - cuMemberLevel.setPkCreator(cuMember.getPkId()); - cuMemberLevel.setPkCountry(cuMember.getPkSettleCountry()); - return cuMemberLevel; - } - - /** - * new 2025.06.25 V1-V3升级多送两级处理 - * - * @param gradeList - * @param pkGrade - * @return - */ - @Override - public BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - // new 2025.06.14 添加新需求,V1-V3,购买多给两级 - // new 2025.06.25 V1-V3升级多送两级,可以继续购买升级 - // 临时处理等级 - BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); - - if (EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { - // V1 给 V3 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.MAKER.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { - // V2 给 V4 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { - // V3 给 V5 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.S_VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } - - return tmpGrade; - } - - /** - * 处理商品盒数 - * - * @param orderItemsParams - */ - private void handleWaresBoxNum(Integer specialArea, List orderItemsParams) { - if (CollectionUtil.isNotEmpty(orderItemsParams)) { - List waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); - List waresList = iBdWaresService.list(Wrappers.lambdaQuery() - .eq(BdWares::getSpecialArea, specialArea) - .in(BdWares::getWaresCode, waresCodeList) - ); - if (CollectionUtil.isNotEmpty(waresList)) { - for (OrderItemsParam orderItemsParam : orderItemsParams) { - for (BdWares bdWares : waresList) { - if (orderItemsParam.getWaresCode().equals(bdWares.getWaresCode())) { - orderItemsParam.setBoxNum(bdWares.getBoxNum()); - } - } - } - } - } - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java index 94934179..5890ebf8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java @@ -1,37 +1,15 @@ package com.hzs.sale.order.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; import com.hzs.sale.order.mapper.SaOrderWaresLimitMapper; import com.hzs.sale.order.service.ISaOrderWaresLimitService; import org.springframework.stereotype.Service; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务实现类 - * - * @author hzs - * @since 2025-03-11 */ @Service public class SaOrderWaresLimitServiceImpl extends ServiceImpl implements ISaOrderWaresLimitService { - @Override - public List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList) { - return baseMapper.listWaresList(pkMember, orderType, limitDate, waresCodeList); - } - - @Override - public int saveBatchLimit(List dataList) { - return baseMapper.saveBatchLimit(dataList); - } - - @Override - public int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList) { - return baseMapper.updateCancelOrder(pkOrder, pkMember, modifiedTime, waresCodeList); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index cb7b97a0..a8acbfec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.retail.wares.param.RetailWaresParam; import com.hzs.sale.wares.param.WaresNoSaleParam; @@ -130,18 +129,6 @@ public interface BdWaresMapper extends BaseMapper { */ List listRetailWaresByCondition(@Param("param") RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProduct(@Param("boxWaresList") List boxWaresList, - @Param("pkProduct") Integer pkProduct, - @Param("specialArea") Integer specialArea); - /** * 查询非在售商品 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index f475689c..3538b0f8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.sale.wares.BdWaresAuthority; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.retail.wares.param.RetailWaresParam; @@ -196,24 +195,6 @@ public interface IBdWaresService extends IService { */ List listRetailWaresByCondition(RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @return - */ - List listBoxProduct(List boxWaresList); - - /** - * 查询盒数商品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea); - /** * 查询非在售商品 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index e67fbc11..4e3388f6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1156,16 +1156,6 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listRetailWaresByCondition(param); } - @Override - public List listBoxProduct(List boxWaresList) { - return baseMapper.listBoxProduct(boxWaresList, null, null).stream().map(BdWaresDetail::getPkProduct).collect(Collectors.toList()); - } - - @Override - public List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea) { - return baseMapper.listBoxProduct(boxWaresList, pkProduct, specialArea); - } - @Override public List listWaresNoSale(WaresNoSaleParam param) { return baseMapper.listWaresNoSale(param); diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 6c78b2c4..244385f2 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -1132,35 +1132,6 @@ and so.ORDER_CODE = #{orderCode} - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml index 1b98af63..591cf9e1 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml @@ -2,90 +2,4 @@ - - - - - - merge into sa_order_wares_limit sowl - using ( - - select #{item.pkMember} PK_MEMBER, - #{item.orderType} ORDER_TYPE, - #{item.pkWares} PK_WARES, - #{item.waresQuantity} WARES_QUANTITY, - #{item.limitDate} LIMIT_DATE, - #{item.pkCountry} PK_COUNTRY - from dual - - ) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - WHEN MATCHED THEN - update set sowl.WARES_QUANTITY = sowl.WARES_QUANTITY + tmp.WARES_QUANTITY - WHEN NOT MATCHED THEN - insert - (PK_ID, - PK_MEMBER, - ORDER_TYPE, - PK_WARES, - WARES_QUANTITY, - LIMIT_DATE, - PK_COUNTRY, - PK_CREATOR) - values - (sa_order_wares_limit_seq.nextval, - tmp.pk_member, - tmp.order_type, - tmp.pk_wares, - tmp.wares_quantity, - tmp.limit_date, - tmp.pk_country, - tmp.pk_member) - - - - - merge into SA_ORDER_WARES_LIMIT sowl - using (select so.pk_member PK_MEMBER, - so.order_type ORDER_TYPE, - soi.pk_wares PK_WARES, - sum(soi.wares_quantity) WARES_QUANTITY, - to_char(so.pay_time, 'yyyymm') LIMIT_DATE - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - and to_char(soi.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - left join bd_wares bw - on bw.pk_id = soi.pk_wares - where so.order_status = 1 - and so.pk_id = #{pkOrder} - and so.pk_member = #{pkMember} - and to_char(so.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - and bw.wares_code in - - #{item} - - group by so.pk_member, so.order_type, soi.pk_wares, so.pay_time) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - when matched then - update set sowl.wares_quantity = sowl.wares_quantity - tmp.wares_quantity - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 639146e4..09231787 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -444,28 +444,6 @@ order by bw.SORT desc, bw.CREATION_TIME desc - - - - - diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java index 4b1ec351..ca3ed9fb 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/CacheConstants.java @@ -260,11 +260,6 @@ public class CacheConstants { */ public final static String DRAW_REWARD_NUMBER = CACHE_PREFIX + "reward:num:"; - /** - * 抽奖更新次数 - */ - public final static String MEMBER_DEFAULT_DISPLAY = CACHE_PREFIX + "member:display:"; - /** * 交易配置 @@ -297,10 +292,6 @@ public class CacheConstants { * 新零售缓存参数(注册) */ public static final String RETAIL_TEMP_REG_PARAM = CACHE_PREFIX + "retail:temp_reg:param:"; - /** - * 新零售缓存参数(升级) - */ - public static final String RETAIL_TEMP_UPG_PARAM = CACHE_PREFIX + "retail:temp_upg:param:"; /** * 新零售缓存参数(其它订单) */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java index 6cb24f8b..27ea7d20 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/LanguageConstants.java @@ -25,9 +25,4 @@ public class LanguageConstants { */ public static final String WEB_RESOURCES_SUFFIX = ".js"; - /** - * 请求头语言字段 - */ - public static final String HEAD_LANGUAGE = "Accept-Language"; - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index dea654a0..f7897c21 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -86,11 +86,6 @@ public class MagicNumberConstants { */ public static final Integer ACC0UNT_LOCK_NUM = 10; - /** - * 海粉等级主键为1 - */ - public static final Integer CHINA_HA_FUN = 1; - /** * 提现的倍数 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 89458c7f..b0af6c77 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -1,8 +1,6 @@ package com.hzs.common.core.constant; import java.math.BigDecimal; -import java.util.Arrays; -import java.util.List; /** * 新零售商品常量类 @@ -18,56 +16,4 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); - /** - * 盒数产品列表 - */ - public static final List BOX_PRODUCT_LIST = Arrays.asList( - // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", - "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", - "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", - "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", - // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", - "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", - "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", - "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", - // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", - "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", - "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", - "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", - // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", - "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", - "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", - "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" - ); - - /** - * 盒数产品列表 - */ - public static final List ALL_BOX_WARES_LIST = Arrays.asList( - // 注册 - "SP02410001", "SP02410002", "SP02410003", "SP02410004", "SP02410005", - "SP02410006", "SP02410007", "SP02410008", "SP02410009", "SP02410010", - "SP02410011", "SP02410012", "SP02410013", "SP02410014", "SP02410015", - "SP02410016", "SP02410017", "SP02410018", "SP02410019", "SP02410020", - // 升级 - "SP02420001", "SP02420002", "SP02420003", "SP02420004", "SP02420005", - "SP02420006", "SP02420007", "SP02420008", "SP02420009", "SP02420010", - "SP02420011", "SP02420012", "SP02420013", "SP02420014", "SP02420015", - "SP02420016", "SP02420017", "SP02420018", "SP02420019", "SP02420020", - // 复消 - "SP02430001", "SP02430002", "SP02430003", "SP02430004", "SP02430005", - "SP02430006", "SP02430007", "SP02430008", "SP02430009", "SP02430010", - "SP02430011", "SP02430012", "SP02430013", "SP02430014", "SP02430015", - "SP02430016", "SP02430017", "SP02430018", "SP02430019", "SP02430020", - // 重消 - "SP02440001", "SP02440002", "SP02440003", "SP02440005", "SP02440005", - "SP02440006", "SP02440007", "SP02440008", "SP02440009", "SP02440010", - "SP02440011", "SP02440012", "SP02440013", "SP02440014", "SP02440015", - "SP02440016", "SP02440017", "SP02440018", "SP02440019", "SP02440020" - ); - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java index 7b714236..c334b815 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderBusiness.java @@ -36,10 +36,6 @@ public enum EOrderBusiness { * 新零售注册订单 */ RETAIL_REGISTER(41, "注册订单", 0, EnumsPrefixConstants.ORDER_BUSINESS + 41), - /** - * 新零售升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0, EnumsPrefixConstants.ORDER_BUSINESS + 42), /** * 新零售复购订单 */ @@ -93,13 +89,11 @@ public enum EOrderBusiness { List orderTypeList = new ArrayList<>(); if (null == value || EOrderBusiness.WHOLE.getValue() == value) { orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); orderTypeList.add(EOrderType.RETAIL_CONSUME.getValue()); } else if (EOrderBusiness.FIRST_PURCHASE.getValue() == value) { //首购 orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); } else if (EOrderBusiness.REPURCHASE.getValue() == value) { //复购 orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); @@ -107,9 +101,6 @@ public enum EOrderBusiness { } else if (EOrderBusiness.RETAIL_REGISTER.getValue() == value) { // 注册 orderTypeList.add(EOrderType.RETAIL_REGISTER.getValue()); - } else if (EOrderBusiness.RETAIL_UPGRADE.getValue() == value) { - // 升级 - orderTypeList.add(EOrderType.RETAIL_UPGRADE.getValue()); } else if (EOrderBusiness.RETAIL_REPURCHASE.getValue() == value) { // 复购 orderTypeList.add(EOrderType.RETAIL_REPURCHASE.getValue()); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index 5c1d8493..b76dcf34 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -15,11 +15,6 @@ public enum EOrderType { */ REGISTER_ORDER(1, "注册订单", 1), - /** - * 升级订单 - */ - UPGRADE_ORDER(2, "升级订单", 1), - /** * 复购订单 */ @@ -44,10 +39,6 @@ public enum EOrderType { * 注册订单 */ RETAIL_REGISTER(41, "注册订单", 0), - /** - * 升级订单 - */ - RETAIL_UPGRADE(42, "升级订单", 0), /** * 复购订单 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 061ae73a..682946ce 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -15,11 +15,6 @@ public enum ESpecialArea { */ REGISTER_AREA(1, "注册专区", 1, 3, EMenuDetail.REGISTER.getValue()), - /** - * 升级专区 - */ - UPGRADE_AREA(2, "升级专区", 1, 4, EMenuDetail.UPGRADE.getValue()), - /** * 复购专区 名字修改为自营专区(复购自营) */ @@ -39,10 +34,6 @@ public enum ESpecialArea { * 会员专区(注册) */ RETAIL_REGISTER(41, "注册专区", 0, 41, -1), - /** - * 会员专区(升级) - */ - RETAIL_UPGRADE(42, "升级专区", 0, 42, -1), /** * 复购专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java index f2abd157..5f7f0804 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESystemConfig.java @@ -94,8 +94,6 @@ public enum ESystemConfig { * 1=12小时 2=24小时 3=48小时 4=72小时 */ REGISTER_ORDER_TIME("1", "注册专区时间", 0, "PAYMENT_2"), - UPGRADE_ORDER_CONFIRM_PAY("0", "升级专区", 0, "PAYMENT_3"), - UPGRADE_ORDER_TIME("0", "升级专区时间", 0, "PAYMENT_4"), REPURCHASE_ORDER_CONFIRM_PAY("0", "复购专区", 0, "PAYMENT_5"), REPURCHASE_ORDER_TIME("0", "复购专区时间", 0, "PAYMENT_6"), FANS_ORDER_CONFIRM_PAY("0", "海粉专区", 0, "PAYMENT_7"), @@ -162,7 +160,6 @@ public enum ESystemConfig { public static List getPayMentTimeList() { List list = new ArrayList<>(); list.add(REGISTER_ORDER_TIME); - list.add(UPGRADE_ORDER_TIME); list.add(REPURCHASE_ORDER_TIME); list.add(FANS_ORDER_TIME); list.add(CONSUME_ORDER_TIME); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index 1e834e8c..2f8e9677 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -14,14 +14,12 @@ public enum ETradeType { * 消费类 */ REGISTER_ORDER(101, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 101, EOrderType.REGISTER_ORDER.getValue()), - UPGRADE_ORDER(102, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 102, EOrderType.UPGRADE_ORDER.getValue()), REPURCHASE_ORDER(103, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 103, EOrderType.REPURCHASE_ORDER.getValue()), CONSUME_ORDER(110, 0, "消费订单", 0, EnumsPrefixConstants.TRADE_TYPE + 110, EOrderType.CONSUME_ORDER.getValue()), MALL_ORDER(114, 0, "商城订单", 0, EnumsPrefixConstants.TRADE_TYPE + 114, EOrderType.MALL_ORDER.getValue()), FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), - RETAIL_UPGRADE_ORDER(142, 0, "升级订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), @@ -64,14 +62,12 @@ public enum ETradeType { CANCELLATION_ORDER_REFUND(600, 0, "撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 600, -99), RETURN_MONEY(601, 0, "返还本金", 0, EnumsPrefixConstants.TRADE_TYPE + 601, -99), REVOKE_REGISTER_ORDER(602, 0, "注册订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 602, -EOrderType.REGISTER_ORDER.getValue()), - REVOKE_UPGRADE_ORDER(603, 0, "升级订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 603, -EOrderType.UPGRADE_ORDER.getValue()), REVOKE_REPURCHASE_ORDER(604, 0, "复购订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 604, -EOrderType.REPURCHASE_ORDER.getValue()), REVOKE_CONSUME_ORDER(611, 0, "消费订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 611, -EOrderType.CONSUME_ORDER.getValue()), REVOKE_MALL_ORDER(615, 0, "商城订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 615, -EOrderType.MALL_ORDER.getValue()), REVOKE_FICTITIOUS_ORDER(618, 0, "虚拟订单撤单返钱", 0, EnumsPrefixConstants.TRADE_TYPE + 618, -EOrderType.FICTITIOUS_ORDER.getValue()), REVOKE_RETAIL_REGISTER_ORDER(641, 0, "注册订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 641, -EOrderType.RETAIL_REGISTER.getValue()), - REVOKE_RETAIL_UPGRADE_ORDER(642, 0, "升级订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 642, -EOrderType.RETAIL_UPGRADE.getValue()), REVOKE_RETAIL_REPURCHASE_ORDER(643, 0, "复购订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 643, -EOrderType.RETAIL_REPURCHASE.getValue()), REVOKE_RETAIL_CONSUME_ORDER(644, 0, "重消订单撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 644, -EOrderType.RETAIL_CONSUME.getValue()), REVOKE_RETAIL_TICKET_ORDER(645, 0, "自主购票撤单", 0, EnumsPrefixConstants.TRADE_TYPE + 645, -EOrderType.RETAIL_TICKET.getValue()), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java deleted file mode 100644 index f4104df9..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/BoxProductUtil.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.hzs.common.core.utils; - -import com.hzs.common.core.constant.RetailConstants; -import com.hzs.common.core.enums.ESystemType; - -import java.util.ArrayList; -import java.util.List; - -public class BoxProductUtil { - - /** - * 根据系统类型获取盒数商品 - * - * @param systemType 系统类型(为空返回全部盒数商品) - * @return - */ - public static List getBoxWaresListBySystemType(Integer systemType) { - List productList = new ArrayList<>(0); - - if (null == systemType || ESystemType.ALL.getValue() == systemType) { - productList.addAll(RetailConstants.ALL_BOX_WARES_LIST); - return productList; - - } - if (ESystemType.DEFAULT.getValue() == systemType) { - // 新零售 - productList = RetailConstants.BOX_PRODUCT_LIST; - } - return productList; - } - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java index 51d22070..a718ac02 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/draw/AcDrawRewardNum.java @@ -9,12 +9,7 @@ import lombok.*; import lombok.experimental.Accessors; /** - *

* 会员可抽奖次数记录 - *

- * - * @author hzs - * @since 2023-04-21 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java index 432042b9..55040237 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuMemberAwardsExt.java @@ -5,11 +5,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * @Description: 奖衔升级记录扩展类 - * @Author: jiang chao - * @Time: 2024/2/28 16:38 - * @Classname: CuMemberAwardsExt - * @PackageName: com.hzs.common.domain.member.detail.ext + * 奖衔升级记录扩展类 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java index 9213415f..9dc3d32f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderWaresLimitExt.java @@ -5,11 +5,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; /** - * @Description: 会员商品限购扩展类 - * @Author: jiang chao - * @Time: 2025/3/11 14:02 - * @Classname: SaOrderWaresLimitExt - * @PackageName: com.hzs.common.domain.sale.ext + * 会员商品限购扩展类 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java index 93a1e6ed..b8a90c93 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/order/SaOrderRelationItems.java @@ -9,12 +9,7 @@ import lombok.*; import lombok.experimental.Accessors; /** - *

* - *

- * - * @author hzs - * @since 2023-03-17 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java index 7f8775c2..e66df185 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java @@ -47,8 +47,7 @@ public class ActivityBackListener { // 处理抽奖 iActivityServiceApi.backGiveMemberDrawNum(saOrderExt); - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { // 处理直推升级 iActivityServiceApi.invokeRecommendUpgrade(AcRecommendUpgradeDTO.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.CANCEL).build()); } From e02f2c8f9f99ff4f72bc281e571f802b8465700e Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 14:33:14 +0800 Subject: [PATCH 149/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E5=AF=B9?= =?UTF-8?q?=E7=A2=B0=E3=80=81=E8=BE=85=E5=AF=BC=E3=80=81=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E7=9B=B8=E5=85=B3=E5=A5=96=E9=A1=B9=E5=A4=84=E7=90=86=EF=BC=9B?= =?UTF-8?q?=E5=8E=BB=E6=8E=89=E7=BB=93=E7=AE=97=E4=B8=AD=E7=AD=89=E7=BA=A7?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B=E5=8E=BB=E6=8E=89=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E7=AD=89=E8=80=83=E6=A0=B8=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/IMemberTeamServiceApi.java | 5 - .../detail/ICuMemberServiceLogServiceApi.java | 42 - .../hzs/retail/member/IMemberRetailApi.java | 19 - .../hzs/sale/order/ISaOrderServiceApi.java | 26 - .../system/base/ISystemConfigServiceApi.java | 12 - .../hzs/system/config/dto/BonusConfigDTO.java | 5 - .../com/hzs/system/config/dto/GradeDTO.java | 6 +- .../mapper/CuMemberRetailRangeMapper.java | 37 - .../service/ICuMemberRetailRangeService.java | 31 - .../impl/CuMemberRetailRangeServiceImpl.java | 36 - .../impl/CuMemberSettlePeriodServiceImpl.java | 15 +- .../hzs/bonus/base/mapper/CuMemberMapper.java | 47 - .../base/service/IBdVertexBonusService.java | 10 - .../bonus/base/service/ICuMemberService.java | 46 - .../impl/BdVertexBonusServiceImpl.java | 28 +- .../service/impl/CuMemberServiceImpl.java | 38 - .../api/ApiCuMemberBonusController.java | 39 - .../manage/CuMemberShareBonusController.java | 64 - .../mapper/CuMemberBonusCoachMapper.java | 32 - .../mapper/CuMemberBonusExpandMapper.java | 32 - .../bonus/mapper/CuMemberBonusPushMapper.java | 7 - .../mapper/CuMemberShareBonusMapper.java | 6 - .../mapper/CuMemberShareDetailMapper.java | 9 - .../bonus/param/CuMemberShareBonusParam.java | 38 - .../bonus/param/CuMemberShareDetailParam.java | 28 - .../service/ICuMemberBonusCoachService.java | 16 - .../service/ICuMemberBonusExpandService.java | 17 - .../service/ICuMemberShareBonusService.java | 12 - .../service/ICuMemberShareDetailService.java | 9 - .../bonus/service/impl/BonusSettleHandle.java | 59 +- .../service/impl/BonusSettleRangeHandle.java | 1256 +---------------- .../service/impl/BonusSettleServiceImpl.java | 56 +- .../impl/CuMemberBonusCoachServiceImpl.java | 32 - .../impl/CuMemberBonusExpandServiceImpl.java | 36 - .../impl/CuMemberBonusServiceImpl.java | 80 +- .../impl/CuMemberShareBonusServiceImpl.java | 168 --- .../impl/CuMemberShareDetailServiceImpl.java | 8 - .../bonus/bonus/vo/BonusRecordDetailVO.java | 10 - .../api/ApiCuRegionAssessController.java | 46 - .../manage/CuMemberAssessController.java | 56 - .../manage/CuRegionAssessController.java | 88 -- .../mapper/CuMemberAssessDetailMapper.java | 59 - .../mapper/CuMemberAssessExemptMapper.java | 16 - .../detail/mapper/CuMemberAssessMapper.java | 116 -- .../detail/mapper/CuMemberGradeMapper.java | 67 - .../mapper/CuRegionAssessDetailMapper.java | 58 - .../detail/mapper/CuRegionAssessMapper.java | 55 - .../service/ICuMemberAssessDetailService.java | 53 - .../service/ICuMemberAssessExemptService.java | 16 - .../service/ICuMemberAssessService.java | 19 - .../detail/service/ICuMemberGradeService.java | 63 - .../service/ICuRegionAssessDetailService.java | 35 - .../service/ICuRegionAssessService.java | 33 - .../impl/CuMemberAssessDetailServiceImpl.java | 65 - .../impl/CuMemberAssessExemptServiceImpl.java | 20 - .../impl/CuMemberAssessServiceImpl.java | 168 --- .../impl/CuMemberGradeServiceImpl.java | 62 - .../impl/CuRegionAssessDetailServiceImpl.java | 49 - .../impl/CuRegionAssessServiceImpl.java | 245 ---- .../achieve/CuMemberRetailRangeMapper.xml | 207 --- .../mapper/bonus/base/CuMemberMapper.xml | 113 -- .../bonus/bonus/CuMemberBonusCoachMapper.xml | 265 ---- .../bonus/bonus/CuMemberBonusExpandMapper.xml | 274 ---- .../bonus/bonus/CuMemberBonusPushMapper.xml | 129 -- .../bonus/bonus/CuMemberShareBonusMapper.xml | 52 - .../bonus/bonus/CuMemberShareDetailMapper.xml | 43 - .../detail/CuMemberAssessDetailMapper.xml | 110 -- .../detail/CuMemberAssessExemptMapper.xml | 29 - .../bonus/detail/CuMemberAssessMapper.xml | 185 --- .../bonus/detail/CuMemberGradeMapper.xml | 183 --- .../detail/CuRegionAssessDetailMapper.xml | 136 -- .../bonus/detail/CuRegionAssessMapper.xml | 165 --- .../impl/CuMemberSettlePeriodServiceImpl.java | 15 +- .../provider/MemberTeamServiceProvider.java | 5 - .../base/service/ICuMemberTeamService.java | 5 - .../service/impl/CuMemberTeamServiceImpl.java | 11 - .../mapper/CuMemberAssessExemptMapper.java | 16 - .../mapper/CuMemberServiceLogMapper.java | 37 - .../provider/CuMemberServiceLogProvider.java | 31 - .../service/ICuMemberAssessExemptService.java | 16 - .../service/ICuMemberServiceLogService.java | 38 - .../impl/CuMemberAssessExemptServiceImpl.java | 20 - .../impl/CuMemberServiceLogServiceImpl.java | 69 +- .../impl/CuBonusStatisServiceImpl.java | 7 +- .../member/provider/MemberRetailProvider.java | 33 - .../service/ICuMemberRetailRegionService.java | 7 - .../impl/CuMemberRetailRegionServiceImpl.java | 11 - .../detail/CuMemberAssessExemptMapper.xml | 29 - .../detail/CuMemberServiceLogMapper.xml | 78 - .../api/ApiRegSaOrderController.java | 26 - .../manager/SaOrderBusinessController.java | 18 +- .../hzs/sale/order/mapper/SaOrderMapper.java | 10 - .../sale/order/param/OrderSelectParam.java | 6 +- .../provider/SaOrderServiceProvider.java | 24 - .../sale/order/service/ISaOrderService.java | 53 - .../impl/OrderBusinessServiceImpl.java | 37 +- .../order/service/impl/SaOrderHandle.java | 216 --- .../service/impl/SaOrderServiceImpl.java | 171 --- .../mapper/sale/order/SaOrderMapper.xml | 51 - .../provider/SystemConfigServiceProvider.java | 27 - .../provider/BonusItemsServiceProvider.java | 8 - .../config/service/IBdGradeService.java | 2 - .../service/impl/BdGradeServiceImpl.java | 9 - .../enums/controller/EnumsController.java | 12 - .../core/annotation/AccessPermissions.java | 9 - .../common/core/constant/SysConstants.java | 6 +- .../core/constant/msg/BonusMsgConstants.java | 28 - .../hzs/common/core/enums/EBonusItems.java | 82 +- .../common/core/enums/EExpandCapMethod.java | 1 + .../hzs/common/core/enums/ESystemConfig.java | 78 - .../hzs/common/core/enums/EVertexBonus.java | 29 - .../domain/member/detail/CuMemberAssess.java | 5 - .../member/detail/CuMemberAssessExempt.java | 60 - .../domain/member/detail/CuRegionAssess.java | 78 - .../member/detail/CuRegionAssessDetail.java | 79 -- .../member/detail/ext/CuRegionAssessExt.java | 35 - .../member/ext/CuMemberBonusCoachExt.java | 133 -- .../member/ext/CuMemberBonusExpandExt.java | 133 -- .../member/ext/CuMemberShareBonusExt.java | 26 - .../member/ext/CuMemberShareDetailExt.java | 21 - .../domain/sale/ext/SaDeliverItemsExt.java | 6 +- .../common/domain/system/config/BdGrade.java | 3 - 122 files changed, 88 insertions(+), 7519 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml delete mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java delete mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EVertexBonus.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuMemberAssessExempt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuRegionAssess.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/CuRegionAssessDetail.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/detail/ext/CuRegionAssessExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberBonusCoachExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberBonusExpandExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberShareBonusExt.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberShareDetailExt.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java index af4365c3..0b82aae6 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java @@ -25,11 +25,6 @@ public interface IMemberTeamServiceApi { */ R checkVertex(Integer pkVertex); - /* - * 根据主键获得所属团队 - **/ - R getCuMemberTeamById(Long pkMember); - /** * 查询体系团队map * diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java index 412dd054..746a4065 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java @@ -2,10 +2,7 @@ package com.hzs.member.detail; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; public interface ICuMemberServiceLogServiceApi { @@ -50,43 +47,4 @@ public interface ICuMemberServiceLogServiceApi { */ R updateByBusinessNo(CuMemberServiceLog memberLog); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - R queryPolicy(Long pkMember); - - /** - * @param pkMember 会员主键 pkMember - * @param approvalBusiness 类型 EApprovalBusiness - * @param approveStatus 提交签呈状态 EApproveStatus - * @return - */ - R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus); - - /** - * 查询最新一条变动记录 - * - * @param pkMember 会员ID - * @param editType 业务类型 - * @param approveStatus 审核状态 - * @return - */ - R selectTopData(Long pkMember, int editType, int approveStatus); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - R> listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java deleted file mode 100644 index 8c9ed6f9..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hzs.retail.member; - -import com.hzs.common.core.domain.R; - -import java.util.List; - -/** - * 新零售会员dubbo服务 - */ -public interface IMemberRetailApi { - - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID列表 - */ - R cancelRegion(List pkIdList); - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index e6c1e93f..6994222d 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -2,9 +2,7 @@ package com.hzs.sale.order; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.dto.*; @@ -27,25 +25,6 @@ public interface ISaOrderServiceApi { */ R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /* - * 根据主键查询订单,需要查询del_flag=1的,存在先撤单在退货 - **/ - R querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - R> querySaOrderByDeliverList(List deliverItemExtList); - - /** - * 根据订单ID查询订单详细列表 - * - * @param pkOrderList 订单ID列表 -- 必传 - * @param pkCountry 国家ID -- 非必传 - * @return - */ - R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry); - /** * 空单注册审核通过 * @@ -81,11 +60,6 @@ public interface ISaOrderServiceApi { */ void closeOrder(); - /* - * 查询订单某段时间累计金额,累计业绩 - **/ - R queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java index 0469e498..2d84c3a5 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java @@ -18,18 +18,6 @@ public interface ISystemConfigServiceApi { */ R getBonusSystemConfig(Integer pkCountry, String key); - /** - * 批量查询系统参数 - * - * @param pkCountry 国家 - */ - R> getBonusSystemConfig(Integer pkCountry); - - /** - * 批量查询所有国家的系统参数 - */ - R> getBonusSystemConfig(); - /** * 批量查询所有国家的订单参数 */ diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java index 3a7affd8..cc6cddf5 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java @@ -52,11 +52,6 @@ public class BonusConfigDTO implements Serializable { */ private Map gradeMap; - /** - * 新零售团队等级 - */ - private List retaiGradeList; - /** * 主任每个国家值对应的配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + 奖衔值 为了解决服务中心算主任 */ diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java index b9d10657..200e7803 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java @@ -11,11 +11,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 等级的dto - * @Author: sui q - * @Time: 2022/9/24 15:06 - * @Classname: GradeDTO - * @PackageName: com.hzs.system.config.dto + * 等级的dto */ @Data @Builder diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index a86706cc..79942ade 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -26,43 +26,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper batchQueryMemberRetailRangeByMemberPk(@Param("rangeTableName") String rangeTableName, - @Param("memberPkList") List memberPkList); - - /** - * 查询出有奖衔的会员 - * - * @param rangeTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(@Param("rangeTableName") String rangeTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(@Param("rangeTableName") String rangeTableName, - @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(@Param("rangeTableName") String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(@Param("rangeTableName") String rangeTableName, @Param("secondRangeTableName") String secondRangeTableName, @Param("county") Integer county); - /** * 当前网体更新极差秒结表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 81520ba9..ceec0067 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -9,7 +9,6 @@ import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; -import java.util.Set; /** * 服务类 @@ -54,36 +53,6 @@ public interface ICuMemberRetailRangeService extends IService cuMemberTreeMap); - /** - * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 - * - * @param settleTableName 结算表 - * @param serviceMemberSet 会员编号 - */ - List batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet); - - /** - * 查询出有奖衔的会员 - * - * @param settleTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(String settleTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county); - /** * 更新极差秒接表,用昨天的结算表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index c2814762..5746913c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -32,8 +32,6 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberRetailRangeExt(settleTableName, list)); } - @Override - public List batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet) { - List cuMemberSettleExtList = new ArrayList<>(); - if (serviceMemberSet.size() > 0) { - // 做一下排序 - List memberPkList = Arrays.asList(serviceMemberSet.toArray(new Long[]{})); - Collections.sort(memberPkList); - List> listList = cuMemberBonusSettle.handleCutList(memberPkList, MagicNumberConstants.BATCH_QUERY_NUM); - listList.forEach(list -> - cuMemberSettleExtList.addAll(baseMapper.batchQueryMemberRetailRangeByMemberPk(settleTableName, list))); - } - return cuMemberSettleExtList; - } - - @Override - public List batchQueryMemberRetailRangeByAwards(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByAwards(rangeTableName); - } - - @Override - public List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList) { - return baseMapper.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - } - - @Override - public List batchQueryMemberRetailRangeByCounty(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByCounty(rangeTableName); - } - - @Override - public List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county) { - return baseMapper.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, county); - } - @Override public void mergeMemberSecondRetailRangeByRange(String rangeTableName, String secondRangeTableName, Long pkMember) { // 当前网体更新极差秒接表(血缘伞上) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java index 876efb8e..46f1ac88 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java @@ -7,11 +7,9 @@ import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodDetailService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.EExpandCapMethod; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriodDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberSettlePeriodExt; @@ -19,7 +17,6 @@ import com.hzs.common.domain.system.base.BdCountry; import com.hzs.bonus.achieve.mapper.CuMemberSettlePeriodMapper; import com.hzs.bonus.achieve.param.MemberPeriodParam; import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -41,8 +38,6 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java index 18192bd3..2d21daf6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java @@ -3,9 +3,6 @@ package com.hzs.bonus.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -16,15 +13,6 @@ import java.util.List; */ public interface CuMemberMapper extends BaseMapper { - /** - * 查询登录会员以及状态 - * - * @param memberCode 会员编号 - * @param pkMember 会员主键 - * @return - */ - CuMemberExt queryLoginMember(@Param("memberCode") String memberCode, @Param("pkMember") Long pkMember); - /** * 更新会员奖衔根据临时表 */ @@ -48,28 +36,6 @@ public interface CuMemberMapper extends BaseMapper { @Param("period") Integer period, @Param("awardType") Integer awardType); - /** - * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 - */ - int updateCuMemberMinGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 更新会员的等级 - */ - Integer updateCuMemberGrade(@Param("period") Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 更新会员的等级(会员表) - */ - Integer updateCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - /** * 更新会员奖衔根据临时表 */ @@ -90,17 +56,4 @@ public interface CuMemberMapper extends BaseMapper { */ void updateCuMemberRetailRangeInitV5Award(); - /** - * 查询可以分享的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(@Param("pkMember") Long pkMember); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java index d99dca54..6fd77473 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java @@ -3,19 +3,9 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.vertex.BdVertexBonus; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务类 */ public interface IBdVertexBonusService extends IService { - /** - * 查询体系奖金map - * - * @return - */ - Map> queryVertexBonus(); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 1e2341fb..8ccbffd5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -3,9 +3,6 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import java.util.Date; import java.util.List; @@ -15,14 +12,6 @@ import java.util.List; */ public interface ICuMemberService extends IService { - /** - * 根据会员编号获取会员信息(查库) - * - * @param memberCode - * @return - */ - CuMemberExt getMemberByCode(String memberCode); - /** * 更新会员奖衔根据临时表 -- 日结 */ @@ -35,13 +24,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeByList(List cuMemberAwardsList, Integer period); - /** - * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 - */ - void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 * @@ -49,21 +31,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period); - /** - * 根据等级更新会员等级 - */ - void updateCuMemberGradeByPeriod(Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(Date startDate, Date endDate); - - /** - * 更新会员的等级(会员表) - */ - void updateCuMemberGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 */ @@ -79,17 +46,4 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeInitAward(); - /** - * 查询可以获得分红的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(Long pkMember); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java index bf253722..137488c2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java @@ -1,41 +1,15 @@ package com.hzs.bonus.base.service.impl; -import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.base.mapper.BdVertexBonusMapper; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务实现类 */ @Service public class BdVertexBonusServiceImpl extends ServiceImpl implements IBdVertexBonusService { - @Override - public Map> queryVertexBonus() { - HashMap> resultMap = new HashMap<>(); - - List vertexBonusList = this.list(); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (resultMap.containsKey(bdVertexBonus.getPkVertex())) { - resultMap.get(bdVertexBonus.getPkVertex()).add(bdVertexBonus.getBonusItems()); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(bdVertexBonus.getBonusItems()); - resultMap.put(bdVertexBonus.getPkVertex(), tmpList); - } - } - } - - return resultMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index c82fcfcb..e1e193a2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -3,13 +3,9 @@ package com.hzs.bonus.base.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.base.service.*; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.*; import com.hzs.common.domain.member.base.*; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.bonus.base.mapper.CuMemberMapper; -import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; import java.util.*; @@ -20,11 +16,6 @@ import java.util.*; @Service public class CuMemberServiceImpl extends ServiceImpl implements ICuMemberService { - @Override - public CuMemberExt getMemberByCode(String memberCode) { - return baseMapper.queryLoginMember(memberCode, null); - } - @Override public void updateCuMemberRetailRangeByPeriod(Integer period) { baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); @@ -39,32 +30,12 @@ public class CuMemberServiceImpl extends ServiceImpl i baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); } - @Override - public void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberMinGradeByList(cuMemberGradeList, period); - } - @Override public void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period) { baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue()); baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); } - @Override - public void updateCuMemberGradeByPeriod(Integer period) { - baseMapper.updateCuMemberGrade(period); - } - - @Override - public void updateCuMemberLevel(Date startDate, Date endDate) { - baseMapper.updateCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberGradeByList(cuMemberGradeList, period); - } - @Override public void updateBackCuMemberRetailRangeAward(Integer period) { baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue()); @@ -83,13 +54,4 @@ public class CuMemberServiceImpl extends ServiceImpl i baseMapper.updateCuMemberRetailRangeInitV5Award(); } - @Override - public List queryCuMemberShareTotal(Integer pkCountry) { - return baseMapper.queryCuMemberShareTotal(pkCountry); - } - - @Override - public List listVertexBonus(Long pkMember) { - return baseMapper.listVertexBonus(pkMember); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java index 9b5c1e67..93552aa3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java @@ -6,14 +6,12 @@ import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.param.BonusParam; import com.hzs.bonus.bonus.service.ICuMemberBonusService; import com.hzs.bonus.bonus.vo.*; -import com.hzs.common.core.enums.EBonusItems; import com.hzs.common.core.enums.EGrantStatus; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.ext.CuMemberBonusExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import com.hzs.common.security.utils.SecurityUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -33,8 +31,6 @@ public class ApiCuMemberBonusController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; - @Autowired - private ICuMemberService iCuMemberService; /** * 新零售实时奖金:查询会员实时奖金,当日的奖金 @@ -47,9 +43,6 @@ public class ApiCuMemberBonusController extends BaseController { bonusParam.setEndDate(DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentDate())); bonusParam.setGrantStatus(EGrantStatus.SETTLED.getValue()); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List cuMemberBonusList = iCuMemberBonusService.queryMemberSecondBonusVoByCondition(bonusParam); List memberBonusVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { @@ -62,12 +55,6 @@ public class ApiCuMemberBonusController extends BaseController { cuMemberBonus.getRetailRealSubtotal() ); memberBonusVO.setBackPoints(serviceSpend); - - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusVO.setRepurRangeIncome(null); - } - memberBonusVOList.add(memberBonusVO); } }); @@ -83,17 +70,10 @@ public class ApiCuMemberBonusController extends BaseController { List cuMemberBonusList = iCuMemberBonusService.queryMemberBonusVoByCondition(bonusParam); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List firstPurchaseVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { MemberBonusFirstPurchaseVO memberBonusFirstPurchaseVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusFirstPurchaseVO.class, "settleDate"); packageSettleDate(cuMemberBonus, memberBonusFirstPurchaseVO); - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusFirstPurchaseVO.setRepurRangeIncome(null); - } firstPurchaseVOList.add(memberBonusFirstPurchaseVO); }); return getDataTable(firstPurchaseVOList); @@ -180,23 +160,4 @@ public class ApiCuMemberBonusController extends BaseController { return iCuMemberBonusService.queryMemberBonusDetailVoByCondition(bonusParam); } - /** - * 校验是否有复购级差 - * - * @return - */ - private boolean checkRangeIncome() { - List vertexBonusList = iCuMemberService.listVertexBonus(SecurityUtils.getUserId()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (null != bdVertexBonus - && null != bdVertexBonus.getBonusItems() - && EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bdVertexBonus.getBonusItems()) { - return true; - } - } - } - return false; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java deleted file mode 100644 index 76ec1878..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.hzs.bonus.bonus.controller.manage; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; -import com.hzs.bonus.bonus.service.ICuMemberShareBonusService; -import com.hzs.common.core.annotation.AccessPermissions; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 会员奖金-分红奖金配置 前端控制器 - * - * @author hzs - * @since 2023-07-03 - */ -@RestController -@RequestMapping("/manage/bonus") -public class CuMemberShareBonusController extends BaseController { - - private ICuMemberShareBonusService cuMemberShareBonusService; - - @Autowired - public void setCuMemberShareBonusService(ICuMemberShareBonusService cuMemberShareBonusService) { - this.cuMemberShareBonusService = cuMemberShareBonusService; - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @AccessPermissions("BonusConfig") - @PostMapping("/query-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult queryShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null) { - return AjaxResult.error("结算月份不能为空"); - } - return AjaxResult.success(cuMemberShareBonusService.queryCuMemberShareBonus(SecurityUtils.getPkCountry(), cuMemberShareBonusParam.getSettleMonth())); - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @PostMapping("/save-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult saveShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null || CollectionUtil.isEmpty(cuMemberShareBonusParam.getCuMemberShareDetailList())) { - return AjaxResult.error("结算月份不能为空"); - } - cuMemberShareBonusParam.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberShareBonusParam.setPkCreator(SecurityUtils.getUserId()); - cuMemberShareBonusService.saveMemberShareBonus(cuMemberShareBonusParam); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java index 3ce3c4d4..689617ce 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import com.hzs.common.domain.member.ext.CuMemberBonusCoachExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-辅导收益明细表 Mapper 接口 */ public interface CuMemberBonusCoachMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List cuMemberBonusCoachList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java index eff30d4b..cc8d9bab 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import com.hzs.common.domain.member.ext.CuMemberBonusExpandExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-拓展收益明细表 Mapper 接口 */ public interface CuMemberBonusExpandMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(@Param("cuMemberBonusExpandList") List cuMemberBonusExpandList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java index 48caf94f..cbd2db07 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java @@ -20,13 +20,6 @@ public interface CuMemberBonusPushMapper extends BaseMapper { */ List queryMemberBonusPushByBonusItems(BonusParam bonusParam); - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); - /** * 删除会员奖金汇总表 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java index 3e559148..753ed3aa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java @@ -2,16 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import org.apache.ibatis.annotations.Param; /** * 会员奖金-分红奖金配置 Mapper 接口 */ public interface CuMemberShareBonusMapper extends BaseMapper { - /* - * 查询会员分享奖金 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(@Param("pkCountry") Integer pkCountry, @Param("settleMonth") String settleMonth); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java index 3df67329..c7169a1a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-分红奖金配置明细 Mapper 接口 */ public interface CuMemberShareDetailMapper extends BaseMapper { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(@Param("cuMemberShareDetailList") List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java deleted file mode 100644 index f0c90b34..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.List; - -/** - * @description: 分红配置查询参数 - * @author: sui q - * @time: 2023/7/3 15:52 - * @classname: CuMemberShareBonusParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareBonusParam implements Serializable { - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 结算月 - */ - private String settleMonth; - - /** - * 明细 - */ - private List cuMemberShareDetailList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java deleted file mode 100644 index 906d10dc..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @description: 分红配置明细 - * @author: sui q - * @time: 2023/7/3 15:53 - * @classname: CuMemberShareDetailParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareDetailParam implements Serializable { - - /** - * 奖衔 - */ - private Integer pkAwards; - - /** - * 实发金额 - */ - private BigDecimal realShareIncome; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java index 876debdf..fe73fe67 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java @@ -3,25 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务类 */ public interface ICuMemberBonusCoachService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java index 9143331f..c740dff3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java @@ -3,26 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务类 */ public interface ICuMemberBonusExpandService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java index 3998d935..52bcf070 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java @@ -2,22 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; /** * 会员奖金-分红奖金配置 服务类 */ public interface ICuMemberShareBonusService extends IService { - /* - * 保存会员分红奖金及明细 - **/ - void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam); - - /* - * 查询分红配置的参数 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java index c29b99a1..a01619ea 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; - -import java.util.List; -import java.util.Map; /** * 会员奖金-分红奖金配置明细 服务类 */ public interface ICuMemberShareDetailService extends IService { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 47fc5629..512fa1cf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -26,12 +26,6 @@ public abstract class BonusSettleHandle { @Autowired protected ICuMemberTreeService cuMemberTreeService; - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - public ICuMemberSettlePeriodService getCuMemberSettlePeriodService() { - return cuMemberSettlePeriodService; - } /** * 获得奖项主键,验证该国是否有该奖项 @@ -58,23 +52,6 @@ public abstract class BonusSettleHandle { return bonusConfigDTO.getBonusItemsExtMap().get(pkCountry.toString() + bonusItems).getPkId(); } - /** - * 获得 辅导收益的备注 - * - * @param saOrder 订单编号 - * @param cuMemberBonusCoach 培育津贴 - * @param sourceCuMemberRetailExt 提供奖金的人 - * @param targetCuMemberRetailExt 获得奖金的人 - */ - protected void retailCoachRemark(SaOrder saOrder, CuMemberBonusCoach cuMemberBonusCoach, - CuMemberRetailRangeExt sourceCuMemberRetailExt, CuMemberRetailRangeExt targetCuMemberRetailExt) { - String remark = String.format(BonusMsgConstants.RETAIL_COACH, cuMemberBonusCoach.getCurrentGeneration(), saOrder.getOrderCode(), - sourceCuMemberRetailExt.getMemberCode() + sourceCuMemberRetailExt.getMemberName(), - targetCuMemberRetailExt.getMemberCode() + targetCuMemberRetailExt.getMemberName(), - cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue()); - cuMemberBonusCoach.setRemark(remark); - } - /** * 获得 直推级差收益的备注 * @@ -92,40 +69,6 @@ public abstract class BonusSettleHandle { cuMemberBonusRange.setRemark(remark); } - /** - * 获得 福利极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeBenefitRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_RANGE, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * 获得 复购极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeMonthRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_MONTH_REPURCHASE_INCOME, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); - cuMemberBonusRange.setRemark(remark); - } - /** * 获得 平级收益的备注 * @@ -152,7 +95,7 @@ public abstract class BonusSettleHandle { * @param targetMemberRangeExt 获得奖金的人 */ protected void rangeRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { + CuMemberRetailRangeExt targetMemberRangeExt) { String remark = String.format(BonusMsgConstants.RETAIL_REPURCHASE_INCOME, saOrderExt.getOrderCode(), sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 3ffa404d..fe916497 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,24 +1,18 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.detail.service.ICuMemberAwardsService; -import com.hzs.bonus.detail.service.ICuMemberGradeService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.constant.msg.BonusMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; @@ -26,18 +20,13 @@ import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.domain.sale.wares.ext.WaresRangeTmp; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; -import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -54,20 +43,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired - private ICuMemberGradeService iCuMemberGradeService; - @Autowired private ICuMemberService iCuMemberService; @Autowired private IBonusOrderService iBonusOrderService; - @Autowired - private IBdVertexBonusService iBdVertexBonusService; - - @DubboReference - ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; /** * 秒结: - * 实时计算秒结数据(业绩、等级、奖衔、日奖) + * 实时计算秒结数据(业绩、奖衔、日奖) */ List calculateCuMemberRetailRangeBonusBySecond(String settleDate, SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod, @@ -76,9 +58,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + beforePeriod; // 更新极差秒接表,用昨天的结算表(血缘伞上) iCuMemberRetailRangeService.mergeMemberSecondRetailRangeByRange(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); - // 处理会员等级(查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级) - // TODO new 秒结只影响上面,更新等级应该只更新血缘上就可以,不需要全网更新 -- 是否需要修改??? - iCuMemberGradeService.updateCuMemberGradeSecond(secondRangeTableName, currentPeriod); // 按照血缘,查询该会员血缘伞上(昨天日结表累计值 + 今天秒结表新増值) List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); @@ -86,14 +65,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -105,11 +76,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(saOrderExt.getPayTime()); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); - // 计算自消费奖衔 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); @@ -122,16 +88,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、计算等级、奖衔 + cuMemberAwardsList, sourceMemberRangeExt); + // 计算团队业绩、计算奖衔 cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeList, activateMap)); + secondRangeTableName)); // 奖金处理 List cuMemberBonusRangeList = new ArrayList<>(); @@ -142,40 +106,15 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { // 指定盒数商品 // 计算直推级差收益 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); + cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); } } } - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, saOrderExt.getRecCounty()); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, currentPeriod, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = iBonusOrderService.getWaresRange(Collections.singletonList(saOrderExt)); // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, currentPeriod, cuMemberBonusMap)); } - // 回退会员等级 - iCuMemberGradeService.updateCuMemberGrade(secondRangeTableName, saOrderExt.getPkId()); - - if (cuMemberGradeList.size() > 0) { - // 插入会员等级升级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表会员等级 - iCuMemberService.updateCuMemberGradeByList(cuMemberGradeList, currentPeriod); - } if (cuMemberAwardsList.size() > 0) { // 插入会员奖衔升级记录 iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); @@ -191,7 +130,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 撤单秒结:实时计算撤单数据(业绩、等级、奖衔、日奖) + * 撤单秒结:实时计算撤单数据(业绩、奖衔、日奖) */ void calculateCuMemberBackRetailIncome(SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod) { @@ -203,7 +142,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (isSecond) { // 当天撤单 - // 实时网体查询血缘伞上会员,更新秒结表等级、奖衔 + // 实时网体查询血缘伞上会员,更新秒结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue()); // 恢复秒结表奖衔 iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod, EYesNo.YES.getIntValue()); @@ -214,7 +153,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + currentPeriod; List retailOrderList = new ArrayList<>(); retailOrderList.add(saOrderExt); - // 实时网体查询血缘上会员,更新订单支付日结表等级、奖衔 + // 实时网体查询血缘上会员,更新订单支付日结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember(), EYesNo.NO.getIntValue()); // 恢复日结表奖衔 iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod, EYesNo.NO.getIntValue()); @@ -225,20 +164,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 团队升级等级map(key:等级值,value:等级对象) - Map retailTeamGradeMap = new TreeMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retailGradeList = bonusConfigDTO.getRetaiGradeList(); - // 等级 - for (BdGrade bdGrade : retailGradeList) { - if (bdGrade.getBoxTotal().compareTo(BigDecimal.ZERO) > 0) { - retailTeamGradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -265,66 +190,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); } - // 会员等级map - Map cuMemberGradeMap = new HashMap<>(); // 会员奖衔map Map cuMemberAwardsMap = new HashMap<>(); // 会员分红奖衔map Map cuMemberShareAwardsMap = new HashMap<>(); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); - // 计算团队业绩,计算等级、奖衔 + cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); + // 计算团队业绩,计算奖衔 List cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); + secondRangeTableName, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); cuMemberRetailRangeExtList.add(sourceMemberRangeExt); - // 查询期间的等级(来源 cu_member_grade) - List memberGradeList = iCuMemberGradeService.queryCuMemberGrade(cuMemberRetailRangeExtList, currentPeriod); - // 查询最大的手动等级(来源 cu_member_grade) - List cuMemberGradeList1 = iCuMemberGradeService.queryCuMemberGradeByList(currentPeriod, memberRetailRangeExtList); - if (cuMemberGradeList1.size() > 0) { - Map memberGradeMap = new HashMap<>(); - for (CuMemberGrade cuMemberGrade : cuMemberGradeList1) { - cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); - memberGradeMap.put(cuMemberGrade.getPkMember(), cuMemberGrade); - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (memberGradeMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - CuMemberGrade cuMemberGrade = memberGradeMap.get(cuMemberRetailRangeExt.getPkMember()); - if (cuMemberRetailRangeExt.getPkGrade() < cuMemberGrade.getNewLevel()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getNewLevel()); - BdGrade bdGrade = gradeIdMap.get(cuMemberGrade.getNewLevel()); - cuMemberRetailRangeExt.setGradeValue(bdGrade.getGradeValue()); - } - BdGrade bdGrade = gradeIdMap.get(cuMemberRetailRangeExt.getPkGrade()); - if (bdGrade != null && bdGrade.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) { - // 如果是合伙人,奖衔肯定得有,不能置为无 - cuMemberRetailRangeExt.setPkAwards(11); - } - } - } - } - if (memberGradeList.size() > 0) { - List cuMemberGradeList = new ArrayList<>(); - for (CuMemberGrade cuMemberGrade : memberGradeList) { - String key = cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(); - if (!cuMemberGradeMap.containsKey(key)) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberGrade.getPkMember()); - if (cuMemberGrade.getOldLevel() < cuMemberRetailRangeExt.getPkGrade()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getOldLevel()); - } - cuMemberGrade.setNewLevel(cuMemberGrade.getOldLevel()); - cuMemberGradeList.add(cuMemberGrade); - } - } - if (cuMemberGradeList.size() > 0) { - // 删除等级(cu_member_grade) - iCuMemberGradeService.deleteCuMemberGrade(cuMemberGradeList, currentPeriod); - // 批量更新会员等级(更新 cu_member) - iCuMemberService.updateCuMemberMinGradeByList(cuMemberGradeList, currentPeriod); - } - } // 当期的所有奖衔升级记录 List memberAwardsList = iCuMemberAwardsService.queryCuMemberAwards(cuMemberRetailRangeExtList, currentPeriod); if (memberAwardsList.size() > 0) { @@ -366,7 +243,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 处理等级、奖衔 + // 处理奖衔 if (cuMemberAwardsList.size() > 0) { // 删除会员奖衔记录 iCuMemberAwardsService.deleteCuMemberAwards(cuMemberAwardsList, currentPeriod); @@ -384,25 +261,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - private CuMemberGrade getCuMemberGrade(int currentPeriod, CuMemberRetailRangeExt sourceMemberRangeExt, BdGrade bdGrade) { - CuMemberGrade cuMemberGrade = CuMemberGrade.builder() - .pkMember(sourceMemberRangeExt.getPkMember()) - .period(currentPeriod) - .oldLevel(sourceMemberRangeExt.getPkGrade()) - .newLevel(bdGrade.getPkId()) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - .build(); - cuMemberGrade.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberGrade.setPkCountry(sourceMemberRangeExt.getPkSettleCountry()); - return cuMemberGrade; - } - /** * 日结: * 计算新零售团队的奖金,极差、平级、福利、福利分红、区域 */ void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, BonusRecordDetailVO bonusRecordDetailVO, - Integer period, Integer yesterdayPeriod, Boolean isSameMonth, Map> vertexBonusMap) { + Integer period, Integer yesterdayPeriod, Boolean isSameMonth) { // 结算期间日期 Date settleStartDate = DateUtils.parseStringToDate(settleDate); // 结算期间日期后一天 @@ -435,9 +299,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新网体 iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(settleStartDate); - if (retailOrderList.size() > 0) { // 复购订单级差数据map(key:订单ID,value:订单明细+级差) Map> rangeOrderMap = new HashMap<>(); @@ -445,25 +306,11 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeOrderMap = iBonusOrderService.getWaresRange(repurchaseOrderList); } - Map memberLevelMap = new HashMap<>(); - List memberLevelList = iCuMemberGradeService.calculateCuMemberRetailGradeInit(period, settleStartDate, settleEndDate, rangeTableName); - memberLevelList.forEach(cuMemberLevel -> memberLevelMap.put(cuMemberLevel.getPkOrder(), cuMemberLevel)); - // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -477,15 +324,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByCounty(rangeTableName); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); // 平级收益 + 复购级差收益 @@ -513,12 +351,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); - // 计算自己等级、奖衔等 + // 计算自己奖衔等 calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、计算等级、奖衔 + null, cuMemberAwardsList, sourceMemberRangeExt); + // 计算团队业绩、计算奖衔 cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, - retailAwardsMap, null, cuMemberGradeList, activateMap)); + retailAwardsMap, null)); // 计算奖金 直推级差 + 平级收益 if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { @@ -526,34 +364,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { // 盒数商品 计算 直推级差 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); + cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); } } - - // 订单存在升级记录 - if (memberLevelMap.containsKey(saOrderExt.getPkId())) { - CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId()); - if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) { - BdGrade bdGrade = gradeIdMap.get(cuMemberLevel.getNewLevel()); - if (bdGrade.getGradeValue() > sourceMemberRangeExt.getGradeValue()) { - sourceMemberRangeExt.setPkGrade(bdGrade.getPkId()); - sourceMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - sourceMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } - } - } - } - - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, period, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); } if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, period, cuMemberBonusMap)); } } @@ -577,25 +394,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新会员表奖衔数据 iCuMemberService.updateCuMemberRetailRangeByPeriod(period); } - if (cuMemberGradeList.size() > 0) { - // 批量插入会员等级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表(cu_member)等级数据(来源 cu_member_grade) - iCuMemberService.updateCuMemberGradeByPeriod(period); - // 更新会员表(cu_member)等级数据(来源 cu_member_level) - iCuMemberService.updateCuMemberLevel(settleStartDate, settleEndDate); - } // 更新网体 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); } } /** - * 计算团队等级、奖衔 -- 秒结、日结 + * 计算团队奖衔 -- 秒结、日结 */ public List calculateRetailRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailAwardsMap, String secondRangeTableName, - List cuMemberGradeList, Map activateMap) { + Map retailAwardsMap, String secondRangeTableName) { // 会员奖衔升级列表 List cuMemberAwardsList = new ArrayList<>(); // 订单会员 @@ -606,13 +414,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); BigDecimal orderAmount = saOrderExt.getOrderAmount(); while (null != targetMemberRangeExt) { - // 手动激活时间 - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve)); targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve)); @@ -628,9 +429,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 计算等级 + // 计算 calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberGradeList, cuMemberAwardsList, targetMemberRangeExt, activateMap); + secondRangeTableName, cuMemberAwardsList, targetMemberRangeExt); } targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } @@ -638,37 +439,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 计算等级、奖衔 -- 日结、秒结 + * 计算奖衔 -- 日结、秒结 */ private void calculateGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, - String secondRangeTableName, List cuMemberGradeList, List cuMemberAwardsList, - CuMemberRetailRangeExt targetMemberRangeExt, Map activateMap) { - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - - if (null != secondRangeTableName) { - if (targetMemberRangeExt.getPkMember().equals(saOrderExt.getPkMember())) { - // new 兼容购买等级多送2级的问题,秒结处理V4 V5方式不一样,会出现秒结等级和实际等级不匹配 - CuMemberRetailRangeExt memberRetailLevel = iCuMemberGradeService.getMemberLevel(saOrderExt.getPkMember(), saOrderExt.getPkId()); - if (null != memberRetailLevel) { - if (memberRetailLevel.getGradeValue() > targetMemberRangeExt.getGradeValue()) { - targetMemberRangeExt.setPkGrade(memberRetailLevel.getPkGrade()); - targetMemberRangeExt.setGradeValue(memberRetailLevel.getGradeValue()); - } - } - } - } - + String secondRangeTableName, List cuMemberAwardsList, + CuMemberRetailRangeExt targetMemberRangeExt) { // 计算当月奖衔 while (true) { // 当月奖衔值 + 5,获取下一个奖衔值 int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断: 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 @@ -770,7 +552,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { */ public List calculateRetailBackRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, String secondRangeTableName, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, boolean isSecond) { List cuMemberRetailRangeExtList = new ArrayList<>(); // 订单会员 @@ -802,12 +584,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 计算等级 + // 计算 calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); + cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); cuMemberRetailRangeExtList.add(targetMemberRangeExt); } - // 计算等级 + // 计算 targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } return cuMemberRetailRangeExtList; @@ -815,13 +597,13 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { private void calculateBackGrade(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, String secondRangeTableName, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, CuMemberRetailRangeExt targetMemberRangeExt) { // 计算奖衔(荣誉级别) while (true) { int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩 @@ -918,39 +700,19 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { * 计算直推级差收益,根据直推级差收益计算平级收益 */ List calculateRetailRangeBonus(Map memberRangeExtMap, Map cuMemberBonusMap, - Map gradeMap, BonusConfigDTO bonusConfigDTO, Integer period, + BonusConfigDTO bonusConfigDTO, Integer period, SaOrderWaresExt saOrderItems, SaOrderExt saOrderExt) { // 直推级差返回数据 List memberBonusRangeList = new ArrayList<>(); - // 用等级计算,按照一级级算 // 订单下单人自己 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); // 推荐人 long pkParent = sourceMemberRangeExt.getPkParent(); -// // 商品价格 -// BigDecimal beginBuyPrice = saOrderItems.getWaresPrice(); -// BigDecimal comBuyPrice = saOrderItems.getWaresPrice(); -// -// // 开始计算等级值 -// int beginGradeValue = sourceMemberRangeExt.getGradeValue(); -// // 直推级差收益 -// BigDecimal calBonusIncome = BigDecimal.ZERO; - // 商品最终价格(总价,带数量的价格) BigDecimal waresPrice = saOrderItems.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - // 前一个会员等级 - int beforeGradeValue = 0; - // 前一个会员等级的平级收益人数 - int beforeSameAlgebra = 0; - // 前一个会员等级的平级收益 - BigDecimal beforeSameBonus = BigDecimal.ZERO; // 计算直推级差 while (true) { // 推荐人 @@ -964,85 +726,20 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 + // 停算收益、非正常会员、未激活、停止收益,直接跳过 continue; } - // 当前会员等级值 - int calGradeValue = targetMemberRangeExt.getGradeValue(); - // 当前会员等级 - BdGrade bdGrade = gradeMap.get(calGradeValue); - // 直推级差税前收益 BigDecimal rangeBonusIncome = null; // 平级税前收益 BigDecimal sameBonusIncome = null; - if (beforeGradeValue == 0) { - // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // VIP,拿 1 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice); - } else if (EGrade.YOU_KE.getValue() == calGradeValue) { - // SVIP,拿 2 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2")); - } else if (EGrade.MAKER.getValue() == calGradeValue) { - // 卓越,拿 3 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3")); - } else if (EGrade.VIP.getValue() == calGradeValue) { - // 首席,拿 4 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4")); - } else if (EGrade.S_VIP.getValue() == calGradeValue) { - // 合伙人,拿 5 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5")); - } - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - } else if (calGradeValue == beforeGradeValue) { - // 当前会员等级 = 前一个会员等级 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // V1 没有平级收益 - continue; - } - if (beforeSameAlgebra >= bdGrade.getAlgebra()) { - // 平级收益已经满10代,不继续处理平级收益 - if (EGrade.S_VIP.getValue() == beforeGradeValue) { - // 平级处理等级为最高级V5,则结束处理 - break; - } - continue; - } - // 平级收益(商品价格 * 千分之五) -- 6位小数,四舍五入 - sameBonusIncome = waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig); - // 平级收益累计 - beforeSameBonus = beforeSameBonus.add(sameBonusIncome); - // 平级等级代数等级 - beforeSameAlgebra += 1; - } else if (calGradeValue > beforeGradeValue) { - // 当前会员等级 > 前一个会员等级 - int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10; - - // 新等级的直推级差收益 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal)); - // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益 - rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus); - - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - // 平级收益记录从新开始计算 - beforeSameAlgebra = 0; - beforeSameBonus = BigDecimal.ZERO; - } else { - // 当前会员等级 < 前一个会员等级,直接跳过 - continue; - } - if (null != rangeBonusIncome) { // 处理直推级差收益 CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.DIRECT_INCOME.getValue()); CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); cuMemberBonusRange.setCalValue(BigDecimal.ZERO); cuMemberBonusRange.setCalAchieve(waresPrice); @@ -1062,7 +759,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 处理平级收益 CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.SAME_LEVEL_INCOME.getValue()); CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); oriMemberBonusRange.setCalValue(RetailConstants.SAME_RATIO); oriMemberBonusRange.setCalAchieve(waresPrice); @@ -1078,733 +775,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } memberBonusRangeList.add(oriMemberBonusRange); } - -// // 如果价格是209,代表是第一单激活,只有平级收益,只有V5有平级收益 -// if (beginBuyPrice.equals(BigDecimal.valueOf(209))) { -// calGradeValue = EGrade.S_VIP.getValue(); -// if (beginGradeValue < EGrade.S_VIP.getValue()) { -// beginGradeValue = EGrade.S_VIP.getValue(); -// } -// } -// BdGrade bdGrade = gradeMap.get(calGradeValue); -// BigDecimal buyPrice = bdGrade.getBuyPrice(); -// boolean isRange = Boolean.FALSE; -// // 有极差或者有平级 -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, buyPrice)) { -// // 计算极差 -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); -// CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// cuMemberBonusRange.setCalValue(BigDecimal.ZERO); -// cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(ComputeUtil.computeSubtract(beginBuyPrice, buyPrice), calBonusIncome), saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); -// } -// memberBonusRangeList.add(cuMemberBonusRange); -// -// beginBuyPrice = buyPrice; -// comBuyPrice = buyPrice; -// beginGradeValue = calGradeValue; -// sourceMemberRangeExt = targetMemberRangeExt; -// calBonusIncome = BigDecimal.ZERO; -// } else { -// isRange = Boolean.TRUE; -// pkParent = targetMemberRangeExt.getPkMember(); -// } -// if (saOrderExt.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// continue; -// } -// if (bdGrade.getAlgebra() > 0) { -// Long lastPkParent = pkParent; -// for (int j = 0; j < bdGrade.getAlgebra(); j++) { -// targetMemberRangeExt = memberRangeExtMap.get(lastPkParent); -// if (targetMemberRangeExt == null) { -// if (memberRangeExtMap.get(pkParent) == null) { -// break; -// } -// pkParent = memberRangeExtMap.get(pkParent).getPkParent(); -// break; -// } -// calGradeValue = targetMemberRangeExt.getGradeValue(); -// BigDecimal sameBuyPrice = gradeMap.get(calGradeValue).getBuyPrice(); -// // 有平级 -// if (ComputeUtil.compareGreaterThan(sameBuyPrice, comBuyPrice)) { -// lastPkParent = targetMemberRangeExt.getPkParent(); -// pkParent = targetMemberRangeExt.getPkParent(); -// j--; -// continue; -// } -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, sameBuyPrice)) { -// pkParent = lastPkParent; -// break; -// } -// lastPkParent = targetMemberRangeExt.getPkParent(); -// if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || -// ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() || -// targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() || -// EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { -// j--; -// continue; -// } -// BigDecimal bonusIncome = BigDecimal.ZERO; -// if (j == 0) { -// bonusIncome = bdGrade.getFirstAlgebra(); -// } else if (j == 1) { -// bonusIncome = bdGrade.getSecondAlgebra(); -// } else if (j == 2) { -// bonusIncome = bdGrade.getThirdAlgebra(); -// } -// if (ComputeUtil.compareEqual(beginBuyPrice, sameBuyPrice)) { -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); -// CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// oriMemberBonusRange.setCalValue(BigDecimal.valueOf(10)); -// oriMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(bonusIncome, saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// oriMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// oriRetailRangeRemark(saOrderExt, oriMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, oriMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == oriMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, oriMemberBonusRange); -// } -// memberBonusRangeList.add(oriMemberBonusRange); -// calBonusIncome = ComputeUtil.computeAdd(calBonusIncome, bonusIncome); -// pkParent = lastPkParent; -// } else { -// j--; -// } -// if (j == bdGrade.getAlgebra() - 1) { -// beginGradeValue += 1; -// comBuyPrice = ComputeUtil.computeSubtract(comBuyPrice, BigDecimal.ONE); -// break; -// } -// } -// } else { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// } -// if (beginGradeValue > EGrade.S_VIP.getValue()) { -// break; -// } } return memberBonusRangeList; } - /** - * 计算区域奖 - * - * @param countyRangeExtMap - * @param saOrder - * @param bonusConfigDTO - * @param period - * @param memberRangeExtMap - * @param cuMemberBonusMap - * @return - */ - CuMemberBonusDetail calculateRetailAreaBonus(Map countyRangeExtMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map memberRangeExtMap, - Map cuMemberBonusMap, SaOrderExt saOrder) { - // 重消订单没有区域分红 - if (saOrder.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { - return null; - } -// // 区域分红根据商品盒数来,如果没有盒数,直接返回为空 -// if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) == 0) { -// return null; -// } - - CuMemberRetailRangeExt sourceRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 获取对应区域会员 - CuMemberRetailRangeExt cuMemberRetailRangeExt = countyRangeExtMap.get(sourceRetailRangeExt.getRegionVertexPkId() + "_" + saOrder.getRecCounty()); - if (null == cuMemberRetailRangeExt) { - return null; - } - // 获取区域会员结算数据 - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - - // 非正常用户 或者 停止收益 或 未激活,不能获取区域收益 - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || cuMemberRetailRangeExt.getEnableStatus() == EYesNo.NO.getIntValue()) { - return null; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_AREA_INCOME.getValue())) { - return null; - } - // 没有盒数商品,直接返回空 - if (CollectionUtil.isEmpty(saOrder.getOrderWaresExtList())) { - return null; - } - - // 处理区域收益 -- 计算比例为 0.5% - BigDecimal benefitIncome = BigDecimal.ZERO; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 注册、升级订单, 区域收益 = 商品价格 * 0.5% * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - // 商品最终价格 - BigDecimal waresPrice = saOrderWaresExt.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderWaresExt.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - - benefitIncome = benefitIncome.add(waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单, 区域收益 = 复购区域分红 * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - if (EDelFlag.UN_DELETE.getValue() == saOrderWaresExt.getDelFlag()) { - if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) { - // 按比值处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(saOrderWaresExt.getWaresQuantity())); - } else { - // 按比率处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getWaresPrice().multiply(saOrderWaresExt.getAreaIncome()).divide(new BigDecimal("100"), 6, BigDecimal.ROUND_HALF_UP)); - } - } - } - } - - CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome, - cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME); - // 计算业绩以盒数做为基础 - cuMemberBonusDetail.setCalAchieve(saOrder.getBoxNum()); - cuMemberBonusDetail.setPkOrder(saOrder.getPkId()); - String remark = String.format(BonusMsgConstants.RETAIL_AREA_INCOME, saOrder.getOrderCode(), - memberRangeExtMap.get(saOrder.getPkMember()).getMemberCode() + memberRangeExtMap.get(saOrder.getPkMember()).getMemberName(), - cuMemberRetailRangeExt.getMemberCode() + cuMemberRetailRangeExt.getMemberName(), - cuMemberBonusDetail.getPretaxIncome(), cuMemberRetailRangeExt.getCountryName()); - cuMemberBonusDetail.setRemark(remark); - return cuMemberBonusDetail; - } - - /** - * 团队福利、福利分红等奖金 -- 月奖 - * - * @param settleDateStr 结算日期 - */ - void calculateRetailShareBonus(String settleDateStr, BonusConfigDTO bonusConfigDTO, - Integer period, BonusRecordDetailVO bonusRecordDetailVO, Map cuMemberBonusMap) { - // 结算日期 - Date settleDate = DateUtils.parseStringToDate(settleDateStr); - // 上月最后一天 - String beforeMonthLastDate = DateUtils.beforeMonthLastDateStr(settleDate); - // 上月最后一天期数 - CuMemberSettlePeriod beforeMonthLast = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(beforeMonthLastDate); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE; - // 如果上月最后一期有值则使用,没有值则使用昨天期数 - if (ObjectUtil.isNotEmpty(beforeMonthLast)) { - rangeTableName += beforeMonthLast.getPkId(); - } else { - rangeTableName += period; - } - - // 查询上月订单 - // 结算月第一天(上月第一天) - Date currentMonthFirstDate = DateUtils.beforeMonthFirstDate(settleDate); - // 结算月下月第一天(本月第一天) - Date nextMonthFirstDate = DateUtils.currentMonthFirstDate(settleDate); - - List orderType = new ArrayList<>(); - orderType.add(EOrderType.RETAIL_REGISTER.getValue()); - orderType.add(EOrderType.RETAIL_REPURCHASE.getValue()); - - // 月订单列表 - List totalMonthOrderList = new ArrayList<>(); - // 级差收益(福利级差、复购级差) - List memberBonusRangeList = new ArrayList<>(); - // 培训津贴 - List memberBonusCoachList = new ArrayList<>(); - // 月度分红收益 - List memberBonusDetailList = new ArrayList<>(); - // 当前年月 - String month = DateUtils.getMonth(settleDateStr); - - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,只查昨天订单 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleDate); - log.info("测试环境,月结日期: {}", endDate); - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(settleDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - // 测试环境奖衔取当前结算期 - rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - log.info("测试环境,月结期间: {}", rangeTableName); - } else { - // 非测试环境 - while (!DateUtils.compareDateEqual(currentMonthFirstDate, nextMonthFirstDate)) { - // 从上月第一天开始,每天查一次订单,查到本月第一天停止 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, currentMonthFirstDate); - // 查询指定时间范围内订单 - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(currentMonthFirstDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - currentMonthFirstDate = endDate; - } - } - - if (totalMonthOrderList.size() > 0) { - // 会员ID集合 - Set pkMemberSet = new HashSet<>(); - totalMonthOrderList.forEach(saOrder -> pkMemberSet.add(saOrder.getPkMember())); - // 查询会员血缘伞上数据 - List cuMemberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByMemberPk(rangeTableName, pkMemberSet); - // 会员结算map(key:会员ID, value:会员结算数据) - Map memberRangeExtMap = new HashMap<>(); - cuMemberRetailRangeExtList.forEach(cuMemberRetailRangeExt -> - memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt)); - - // 按照系统类型将订单区分 -- 目前只有一个系统类型 - // key:会员体系,value:会员订单列表 - Map> orderMap = new HashMap<>(); - for (SaOrder saOrder : totalMonthOrderList) { - if (memberRangeExtMap.containsKey(saOrder.getPkMember())) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - if (orderMap.containsKey(cuMemberRetailRangeExt.getSystemType())) { - orderMap.get(cuMemberRetailRangeExt.getSystemType()).add(saOrder); - } else { - List orderList = new ArrayList<>(); - orderList.add(saOrder); - orderMap.put(cuMemberRetailRangeExt.getSystemType(), orderList); - } - } - } - - // 当月总pv,用于计算月度分红(福利平均、福利加权) - for (Integer systemType : orderMap.keySet()) { - List saOrders = orderMap.get(systemType); - // 月所有订单业绩(注册、升级、复购) - BigDecimal totalMonthConsumePv = BigDecimal.ZERO; - // 订单对应map - Map saOrderMap = new HashMap<>(); - - // new 两个月奖 - // 月度级差:注册、升级订单,从自己开始往上算,最多拨出10代(紧缩) - // 复购级差:复购订单,从自己开始往上算,最多拨出10代(紧缩) - for (SaOrder saOrder : saOrders) { - // 累计订单业绩 - totalMonthConsumePv = ComputeUtil.computeAdd(totalMonthConsumePv, saOrder.getOrderAchieve()); - // 封装订单map - saOrderMap.put(saOrder.getPkId(), saOrder); - - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 注册、升级订单,计算福利级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getRangeRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getRangeRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) - && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 福利极差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeBenefitRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailBenefitRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单,计算复购级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getMonthRepurchaseRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getMonthRepurchaseRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 复购级差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeMonthRepurchaseRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailMonthRepurchaseIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailMonthRepurchaseIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } - } - - // 培育津贴 - if (CollectionUtil.isNotEmpty(memberBonusRangeList)) { - for (CuMemberBonusRange cuMemberBonusRange : memberBonusRangeList) { - // 第一代开始 - int i = MagicNumberConstants.BLOOD_GENERATION_START; - // 推荐人 - Long pkMember = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()).getPkParent(); - // 提供奖金会员 - CuMemberRetailRangeExt sourceMemberRetailExt = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()); - // 级差所产生的培育津贴列表 - List rangeBonusCoachList = new ArrayList<>(); - // 最多发十代 - while (i <= MagicNumberConstants.BLOOD_GENERATION_END) { - // 当前需要拿奖金的会员 - CuMemberRetailRangeExt targetMemberRetailExt = memberRangeExtMap.get(pkMember); - if (null == targetMemberRetailExt) { - break; - } - pkMember = targetMemberRetailExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRetailExt.getCategory() - || targetMemberRetailExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRetailExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - - if (validatePkBonusItems(bonusConfigDTO, targetMemberRetailExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) { - // 校验当前国家是否有该奖项 - continue; - } - - // 奖金订单 - SaOrder saOrder = saOrderMap.get(cuMemberBonusRange.getPkOrder()); - if (null == saOrder) { - log.warn("培育津贴因订单为空跳过, cuMemberBonusRange: {}", cuMemberBonusRange); - continue; - } - - // 获取奖衔能拿多少代领导奖的奖衔值 - Integer awardsValue = targetMemberRetailExt.getCoachAlgebra(); - - // 判断是否有奖金 - if (awardsValue >= i) { - // 培育津贴比例 - BigDecimal awardCalRadio = targetMemberRetailExt.getCoachRatio(); - // 生成培育津贴明细 - CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusRange, i, targetMemberRetailExt, awardCalRadio); - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRetailExt.getPkMember(), - targetMemberRetailExt.getIncomeStatus(), targetMemberRetailExt.getPkSettleCountry(), targetMemberRetailExt.getPkRate()); - - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusCoach, saOrder.getOrderAmount(), BigDecimal.ONE); - retailCoachRemark(saOrder, cuMemberBonusCoach, sourceMemberRetailExt, targetMemberRetailExt); - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus()) { - cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach); - } - rangeBonusCoachList.add(cuMemberBonusCoach); - - // 这一代领导奖计算完,计算代数加1 - i++; - } - } - - if (rangeBonusCoachList.size() > 0) { - // 共多少代 - --i; - for (CuMemberBonusCoach cuMemberBonusCoach : rangeBonusCoachList) { - cuMemberBonusCoach.setCoachGeneration(i); - cuMemberBonusCoach.setRemark(cuMemberBonusCoach.getRemark().replace("#", cuMemberBonusCoach.getCoachGeneration().toString())); - memberBonusCoachList.add(cuMemberBonusCoach); - } - } - } - } - - // 查询 v5 等级 且 分红奖衔 >= S4 - List memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName); - if (memberRetailRangeExtList.size() > 0) { - // 查询月度分红会员的直推 - List retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - // 推荐会员列表(key:推荐人,value:推荐会员列表) - Map> parentMemberRangeExtMap = new HashMap<>(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) { - parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt); - } else { - List cuMemberRangeExtList = new ArrayList<>(); - cuMemberRangeExtList.add(cuMemberRetailRangeExt); - parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList); - } - } - // 奖衔分红分类 - // 4 5 6 级奖衔会员 - List firstAwardsRetailRangeList = new ArrayList<>(); - // 4 5 6 级奖衔累计业绩 - BigDecimal firstConsumePv = BigDecimal.ZERO; - // 4 5 6 月度分红平均 比例 - BigDecimal benefitAvgRatio = BigDecimal.ZERO; - // 4 5 6 月度分红加权 比例 - BigDecimal benefitShareRatio = BigDecimal.ZERO; - - // 7 8 9 级奖衔会员 - List secondAwardsRetailRangeList = new ArrayList<>(); - // 7 8 9 级奖衔累计业绩 - BigDecimal secondConsumePv = BigDecimal.ZERO; - // 7 8 9 月度分红平均 比例 - BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO; - // 7 8 9 月度分红加权 比例 - BigDecimal secondBenefitShareRatio = BigDecimal.ZERO; - - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - // 获取会员的推荐数据 - List rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - // 计算小区(本人月消费默认为大区) - BigDecimal bigConsumePv = cuMemberRetailRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) { - // 本人消费 + 团队消费 - BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) { - bigConsumePv = monthConsumePv; - } - } - // 小区业绩 = 本人月团队 + 本人月消费 - 大区业绩 - cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv().add(cuMemberRetailRangeExt.getMonthConsumePv()), bigConsumePv)); - } else { - cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO); - } - if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() - && cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) { - // 奖衔 4 5 6 级数据处理 - firstAwardsRetailRangeList.add(cuMemberRetailRangeExt); - benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv); - } else { - // 奖衔 7 8 9 级数据处理 - secondAwardsRetailRangeList.add(cuMemberRetailRangeExt); - secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv); - } - } - if (firstAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - if (secondAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - } - } - } - if (memberBonusDetailList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusDetailList() == null) { - bonusRecordDetailVO.setCuMemberBonusDetailList(memberBonusDetailList); - } else { - bonusRecordDetailVO.getCuMemberBonusDetailList().addAll(memberBonusDetailList); - } - } - if (memberBonusCoachList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusCoachList() == null) { - bonusRecordDetailVO.setCuMemberBonusCoachList(memberBonusCoachList); - } else { - bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(memberBonusCoachList); - } - } - if (memberBonusRangeList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusRangeList() == null) { - bonusRecordDetailVO.setCuMemberBonusRangeList(memberBonusRangeList); - } else { - bonusRecordDetailVO.getCuMemberBonusRangeList().addAll(memberBonusRangeList); - } - } - } - - private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, String month, - BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) { - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(), - cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate()); - - SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build(); - CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus); - - // 计算比例 - cuMemberBonusDetail.setCalValue(benefitAvgRatio); - cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome); - cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), bonusItemsValue)); - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusDetail, BigDecimal.ZERO, BigDecimal.ONE); - if (bonusItemsValue != EBonusItems.RETAIL_AREA_INCOME.getValue()) { - String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month); - cuMemberBonusDetail.setRemark(remark); - } - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { - if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) { - cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else if (bonusItemsValue == EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue()) { - cuMemberBonus.setRetailBenefitAvgIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitAvgIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else { - cuMemberBonus.setRetailBenefitIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitIncome(), cuMemberBonusDetail.getPretaxIncome())); - } - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); - } - return cuMemberBonusDetail; - } - - - protected CuMemberBonusCoach getCuMemberBonusCoach(BonusConfigDTO bonusConfigDTO, CuMemberBonusRange cuMemberBonusRange, - int i, CuMemberRetailRangeExt targetMemberRangeExt, BigDecimal awardCalRadio) { - CuMemberBonusCoach cuMemberBonusCoach = CuMemberBonusCoach.builder() - .pkBonus(targetMemberRangeExt.getPkMember()) - .pkOrder(cuMemberBonusRange.getPkOrder()) - .pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) - .incomeStatus(targetMemberRangeExt.getIncomeStatus()) - .calType(ECalType.RATIO.getValue()) - .calAchieve(cuMemberBonusRange.getCalAchieve()) - .currentGeneration(i) - // 计算比例 - .calValue(awardCalRadio) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .pretaxIncome(ComputeUtil.computeBonusMultiply(cuMemberBonusRange.getPretaxIncome(), awardCalRadio)) - .coachNoCapping(BigDecimal.ZERO) - .coachCapping(BigDecimal.ZERO) - .coachNormalHalf(BigDecimal.ZERO) - .coachNormalReal(BigDecimal.ZERO) - .build(); - cuMemberBonusCoach.setPkCountry(targetMemberRangeExt.getPkSettleCountry()); - cuMemberBonusCoach.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusCoach; - } - private CuMemberBonusRange getCuMemberRetailBonusRange(SaOrder saOrderExt, CuMemberRetailRangeExt targetMemberRangeExt, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { CuMemberBonusRange cuMemberBonusRange = CuMemberBonusRange.builder() @@ -1845,155 +819,5 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return cuMemberAwards; } - /** - * 奖金明细 - * - * @param saOrderExt 订单 - * @param cuMemberBonus 奖金主表 - */ - private CuMemberBonusDetail getCuMemberBonusDetail(SaOrder saOrderExt, Integer incomeStatus, Integer pkCountry, CuMemberBonus cuMemberBonus) { - CuMemberBonusDetail cuMemberBonusDetail = CuMemberBonusDetail.builder() - .pkOrder(saOrderExt.getPkId()) - .calType(ECalType.RATIO.getValue()) - .incomeStatus(incomeStatus) - .calAchieve(saOrderExt.getOrderAchieve()) - .pkBonus(cuMemberBonus.getPkId()) - .pretaxIncome(BigDecimal.ZERO) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusDetail.setPkCountry(pkCountry); - cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusDetail; - } - - /** - * 获取手动激活map - * - * @param settleStartDate - * @return - */ - private Map getActivateMap(Date settleStartDate) { - // 当期的手动激活的记录列表 - List activateList = iCuMemberServiceLogServiceApi.listActivateLog(settleStartDate).getData(); - return activateList.stream() - .collect(Collectors.groupingBy( - CuMemberServiceLog::getPkMember, - Collectors.collectingAndThen( - Collectors.minBy(Comparator.comparing(CuMemberServiceLog::getCreationTime)), - optional -> optional.get().getCreationTime() - ) - )); - } - - /** - * 处理复购级差 - */ - private List calculateRepurchaseRangeBonus(SaOrderExt saOrderExt, Map memberRangeExtMap, - Map> vertexBonusMap, Map> rangeOrderMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { - // 直推级差返回数据 - List memberBonusRangeList = new ArrayList<>(); - // 订单会员 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - - List vertexBonusList = vertexBonusMap.get(sourceMemberRangeExt.getPkVertex()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - // 存在体系奖项 - for (Integer bonusItems : vertexBonusList) { - if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItems) { - // 复购级差收益(key:会员ID,value:复购级差收益) - Map bonusIncomeMap = new HashMap<>(); - - List saOrderItemsExtList = rangeOrderMap.get(saOrderExt.getPkId()); - for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) { - // 级别值比当前等级高的级差数据列表 - Map itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream() - .collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice)); - - // 临时价格(跟着每一次变动) - BigDecimal tmpPrice = saOrderItemsExt.getPrice(); - // 推荐人 - long pkParent = sourceMemberRangeExt.getPkParent(); - // 计算级差 - while (true) { - // 推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - // 上一级推荐人 - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 - continue; - } - // 当前会员等级值 - Integer calGradeValue = EAwards.getGradeValueByValue(targetMemberRangeExt.getGradeValue()); - // 当前会员的级差价格 - BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue); - if (targetRangePrice.compareTo(tmpPrice) < 0) { - // 当前级差价格比上一次的低 - // 差价就是级差收益 - BigDecimal bonusIncome; - if (bonusIncomeMap.containsKey(targetMemberRangeExt.getPkMember())) { - bonusIncome = bonusIncomeMap.get(targetMemberRangeExt.getPkMember()).add(tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity()))); - } else { - bonusIncome = tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); - } - - bonusIncomeMap.put(targetMemberRangeExt.getPkMember(), bonusIncome); - // 临时价格更新 - tmpPrice = targetRangePrice; - } - - // 最高等级则退出 - if (calGradeValue == EGrade.S_VIP.getValue()) { - break; - } - } - } - - if (bonusIncomeMap.size() > 0) { - for (Long key : bonusIncomeMap.keySet()) { - // 复购级差收益 - BigDecimal rangeBonusIncome = bonusIncomeMap.get(key); - if (rangeBonusIncome.compareTo(BigDecimal.ZERO) > 0) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(key); - // 处理复购级差收益 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setCalAchieve(saOrderExt.getOrderAmount()); - cuMemberBonusRange.setPretaxIncome(rangeBonusIncome); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrder(saOrderExt.getPkId()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - } - } - } - } - } - } - return memberBonusRangeList; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index d30461d2..e9d42c35 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -2,12 +2,9 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; -import com.hzs.bonus.detail.service.ICuRegionAssessService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; @@ -38,8 +35,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private IBonusOrderService iBonusOrderService; @Autowired - private ICuRegionAssessService cuRegionAssessService; - @Autowired private ICuMemberSettlePeriodService cuMemberSettlePeriodService; @Autowired private BonusSettleRangeHandle bonusSettleRangeHandle; @@ -48,15 +43,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private ICuMemberBonusPushService cuMemberBonusPushService; @Autowired - private ICuMemberBonusExpandService cuMemberBonusExpandService; - @Autowired - private ICuMemberBonusCoachService cuMemberBonusCoachService; - @Autowired - private ICuMemberBonusDetailService cuMemberBonusDetailService; - @Autowired private ICuMemberBonusRangeService cuMemberBonusRangeService; @Autowired - private IBdVertexBonusService iBdVertexBonusService; + private ICuMemberBonusDetailService cuMemberBonusDetailService; /** @@ -95,34 +84,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { BonusRecordDetailVO recordDetailVO = new BonusRecordDetailVO(); // 今天和昨天是否同月 Boolean isSameMonth = DateUtils.getMonth(settleDate).equals(DateUtils.getMonth(yesterday)); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); // 计算新零售团队奖金 bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, recordDetailVO, - period, yesterdayPeriod, isSameMonth, vertexBonusMap); + period, yesterdayPeriod, isSameMonth); - // new 每月1号,需要计算4个月奖 - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,每天都执行 - // 计算新零售团队福利、福利分红等奖金 - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } else { - // 非测试环境 - if (settleDate.endsWith("01")) { - // 计算新零售团队福利、福利分红等奖金 - log.info("正式处理:{}", settleDate); - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } - } - - Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); - String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate); - if (afterDate.endsWith("01")) { - // 计算完月奖,计算考核(区域6个月要达到蓝宝以上) - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - } // 保存当日计算的奖金 insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO); } catch (Exception e) { @@ -197,8 +163,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { */ void insertCuMemberBonus(String settleDate, Integer period, Map cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO) { cuMemberBonusPushService.deleteCuMemberBonusPush(period); - cuMemberBonusExpandService.deleteCuMemberBonusExpand(period); - cuMemberBonusCoachService.deleteCuMemberBonusCoach(period); cuMemberBonusDetailService.deleteCuMemberBonusDetail(period); cuMemberBonusRangeService.deleteCuMemberBonusRange(period); cuMemberBonusService.deleteCuMemberBonus(period); @@ -206,14 +170,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService { return; } List batchMemberBonusPushList = new ArrayList<>(); - List batchMemberBonusExpandList = new ArrayList<>(); - List batchMemberBonusCoachList = new ArrayList<>(); List batchMemberBonusDetailList = new ArrayList<>(); List batchMemberBonusRangeList = new ArrayList<>(); List cuMemberBonusList = setCuMemberBonusSeq(settleDate, cuMemberBonusMap); List cuMemberBonusPushList = bonusRecordDetailVO.getCuMemberBonusPushList(); - List cuMemberBonusExpandList = bonusRecordDetailVO.getCuMemberBonusExpandList(); - List cuMemberBonusCoachList = bonusRecordDetailVO.getCuMemberBonusCoachList(); List cuMemberBonusDetailList = bonusRecordDetailVO.getCuMemberBonusDetailList(); List cuMemberBonusRangeList = bonusRecordDetailVO.getCuMemberBonusRangeList(); if (cuMemberBonusPushList != null && cuMemberBonusPushList.size() > 0) { @@ -221,16 +181,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusPush.setPkBonus(cuMemberBonusMap.get(cuMemberBonusPush.getPkBonus()).getPkId())); batchMemberBonusPushList.addAll(cuMemberBonusPushList); } - if (cuMemberBonusExpandList != null && cuMemberBonusExpandList.size() > 0) { - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> - cuMemberBonusExpand.setPkBonus(cuMemberBonusMap.get(cuMemberBonusExpand.getPkBonus()).getPkId())); - batchMemberBonusExpandList.addAll(cuMemberBonusExpandList); - } - if (cuMemberBonusCoachList != null && cuMemberBonusCoachList.size() > 0) { - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> - cuMemberBonusCoach.setPkBonus(cuMemberBonusMap.get(cuMemberBonusCoach.getPkBonus()).getPkId())); - batchMemberBonusCoachList.addAll(cuMemberBonusCoachList); - } if (cuMemberBonusDetailList != null && cuMemberBonusDetailList.size() > 0) { cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); @@ -245,8 +195,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(period); cuMemberBonusPushService.batchInsertCuMemberBonusPush(batchMemberBonusPushList, memberIdSet); - cuMemberBonusExpandService.batchInsertCuMemberBonusExpand(batchMemberBonusExpandList, memberIdSet); - cuMemberBonusCoachService.batchInsertCuMemberBonusCoach(batchMemberBonusCoachList, memberIdSet); cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(batchMemberBonusDetailList, memberIdSet); cuMemberBonusRangeService.batchInsertCuMemberBonusRange(batchMemberBonusRangeList, memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java index 6d8fc67c..97979af2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java @@ -1,47 +1,15 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusCoachService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; import com.hzs.bonus.bonus.mapper.CuMemberBonusCoachMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务实现类 */ @Service public class CuMemberBonusCoachServiceImpl extends ServiceImpl implements ICuMemberBonusCoachService { - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - public void deleteCuMemberBonusCoach(Integer period) { - baseMapper.deleteCuMemberBonusCoach(period); - } - - @Override - public void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet) { - if (cuMemberBonusCoachList.size() == 0) { - return; - } - List cuMemberBonusCoaches = new ArrayList<>(); - for (CuMemberBonusCoach cuMemberBonusCoach : cuMemberBonusCoachList) { - if (memberIdSet.contains(cuMemberBonusCoach.getPkBonus())) { - cuMemberBonusCoaches.add(cuMemberBonusCoach); - } - } - if (cuMemberBonusCoaches.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusCoaches); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusCoach(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java index a7f3669b..99fa29e6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java @@ -1,53 +1,17 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusExpandService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; import com.hzs.bonus.bonus.mapper.CuMemberBonusExpandMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务实现类 */ @Service public class CuMemberBonusExpandServiceImpl extends ServiceImpl implements ICuMemberBonusExpandService { - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } - - @Override - public void deleteCuMemberBonusExpand(Integer period) { - baseMapper.deleteCuMemberBonusExpand(period); - } - - @Override - public void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet) { - if (cuMemberBonusExpandList.size() == 0) { - return; - } - List memberBonusExpands = new ArrayList<>(); - for (CuMemberBonusExpand cuMemberBonusExpand : cuMemberBonusExpandList) { - if (memberIdSet.contains(cuMemberBonusExpand.getPkBonus())) { - memberBonusExpands.add(cuMemberBonusExpand); - } - } - if (memberBonusExpands.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(memberBonusExpands); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusExpand(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 72212199..5c5d7b8b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -49,8 +49,6 @@ import java.util.stream.Collectors; @Slf4j public class CuMemberBonusServiceImpl extends ServiceImpl implements ICuMemberBonusService { - @DubboReference - ISystemConfigServiceApi iSystemConfigServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @DubboReference @@ -64,10 +62,6 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryMemberBonusVoByCondition(BonusParam bonusParam) { -// String value = iSystemConfigServiceApi.getBonusSystemConfig(bonusParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// // 周结的话不能查询当前周的数据,只能查询上周的数据 -// bonusParam.setEndDate(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(bonusParam.getEndDate()))); -// } return handleMemberBonusPurchase(getCuMemberBonusExtList(bonusParam), bonusParam); } private List handleMemberBonusPurchase(List cuMemberBonusExtList, BonusParam bonusParam) { -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// Collections.reverse(cuMemberBonusExtList); -// return cuMemberBonusExtList; -// } - List memberBonusExtList = new ArrayList<>(); Map cuMemberBonusExtMap = new HashMap<>(); cuMemberBonusExtList.forEach(cuMemberBonusExt -> cuMemberBonusExtMap.put(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonusExt.getSettleDate()), cuMemberBonusExt)); @@ -334,29 +318,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusExpand.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusExpand.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.COACHING_INCOME.getValue() == bonusItemsValue) { - // 辅导收益 - // 拓展收益、复购拓展收益 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusCoach.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusCoach.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue) { + } else if (EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue) { // 复购极差 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItems(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); @@ -422,36 +384,9 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusPushList = cuMemberBonusPushMapper.queryMemberBonusPushByBonusItemsFoServer(bonusParam); - dataTable = getDataTable(cuMemberBonusPushList); - cuMemberBonusPushList.forEach(cuMemberBonusPush -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusPush, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.EXPANSION_INCOME.getValue() == bonusItemsValue - || EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue() == bonusItemsValue) { - // 拓展收益、复购拓展收益 - List cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.RETAIL_COACHING_INCOME.getValue() == bonusItemsValue) { - // 培育津贴 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue() == bonusItemsValue) { + } else if (EBonusItems.DIRECT_INCOME.getValue() == bonusItemsValue + || EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue + || EBonusItems.SAME_LEVEL_INCOME.getValue() == bonusItemsValue) { // 直推收益、平级收益、福利级差、复购级差 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); @@ -590,10 +525,9 @@ public class CuMemberBonusServiceImpl extends ServiceImpl implements ICuMemberShareBonusService { - @DubboReference - ISaOrderServiceApi saOrderServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - - private ICuMemberShareDetailService cuMemberShareDetailService; - - private ICuMemberService cuMemberService; - - private ICuMemberAssessService cuMemberAssessService; - - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - - @Autowired - public void setCuMemberShareDetailService(ICuMemberShareDetailService cuMemberShareDetailService) { - this.cuMemberShareDetailService = cuMemberShareDetailService; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam) { - CuMemberShareBonusExt cuMemberShareBonusExt = queryCuMemberShareBonus(cuMemberShareBonusParam.getPkCountry(), cuMemberShareBonusParam.getSettleMonth()); - CuMemberShareBonus cuMemberShareBonus = BeanUtil.copyProperties(cuMemberShareBonusExt, CuMemberShareBonus.class); - if (cuMemberShareBonus.getPkId() == null) { - cuMemberShareBonus.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareBonus.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - CuMemberSettlePeriod cuMemberSettlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(cuMemberShareBonusExt.getSettleMonth() + "-01"); - cuMemberShareBonus.setPeriod(cuMemberSettlePeriod.getPkId()); - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(cuMemberShareBonusParam.getPkCountry()).getData(); - cuMemberShareBonus.setPkRate(currencyDTO.getPkId()); - baseMapper.insert(cuMemberShareBonus); - } else { - cuMemberShareBonus.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareBonus.setModifiedTime(DateUtils.currentDateTime()); - baseMapper.updateById(cuMemberShareBonus); - } - if (CollectionUtil.isNotEmpty(cuMemberShareBonusExt.getCuMemberShareDetailList())) { - Map cuMemberShareDetailParamMap = new HashMap<>(); - cuMemberShareBonusParam.getCuMemberShareDetailList().forEach(cuMemberShareDetailParam -> - cuMemberShareDetailParamMap.put(cuMemberShareDetailParam.getPkAwards(), cuMemberShareDetailParam)); - Date currentDateTime = DateUtils.currentDateTime(); - for (CuMemberShareDetailExt cuMemberShareDetail : cuMemberShareBonusExt.getCuMemberShareDetailList()) { - if (cuMemberShareDetailParamMap.containsKey(cuMemberShareDetail.getPkAwards())) { - CuMemberShareDetailParam cuMemberShareDetailParam = cuMemberShareDetailParamMap.get(cuMemberShareDetail.getPkAwards()); - cuMemberShareDetail.setRealShareIncome(cuMemberShareDetailParam.getRealShareIncome()); - cuMemberShareDetail.setRealShareSubtotal(ComputeUtil.computeMultiply(cuMemberShareDetailParam.getRealShareIncome(), cuMemberShareDetail.getReachTotal())); - } - if (cuMemberShareDetail.getPkId() == null) { - cuMemberShareDetail.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareDetail.setPkShareBonus(cuMemberShareBonus.getPkId()); - cuMemberShareDetail.setCreationTime(currentDateTime); - cuMemberShareDetail.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - } else { - cuMemberShareDetail.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareDetail.setModifiedTime(DateUtils.currentDateTime()); - } - } - cuMemberShareDetailService.saveMemberShareBonus(cuMemberShareBonusExt.getCuMemberShareDetailList()); - } - } - - @Override - public CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth) { - CuMemberShareBonusExt cuMemberShareBonusExt = baseMapper.queryCuMemberShareBonus(pkCountry, settleMonth); - if (cuMemberShareBonusExt == null) { - cuMemberShareBonusExt = new CuMemberShareBonusExt(); - cuMemberShareBonusExt.setSettleMonth(settleMonth); - Date endDate = DateUtils.parseDate(settleMonth + "-01"); - Date startDate = DateUtils.beforeMonthFirstDate(endDate); - SaOrder saOrder = saOrderServiceApi.queryOrderTotalAchieveByTime(startDate, endDate).getData(); - BigDecimal shareRatio = BigDecimal.ZERO; - List bdAwardsList = awardsServiceApi.queryAwards(pkCountry).getData(); - List cuMemberShareDetailList = new ArrayList<>(); - // 查询奖衔 晋升人数 - List cuMemberList = cuMemberService.queryCuMemberShareTotal(pkCountry); - Map cuMemberMap = new HashMap<>(); - cuMemberList.forEach(cuMember -> - cuMemberMap.put(cuMember.getPkAwards(), cuMember.getShareStatus())); - List cuMemberAssessList = cuMemberAssessService.queryCuMemberAssTotal(settleMonth + "-01", pkCountry); - Map cuMemberAssMap = new HashMap<>(); - cuMemberAssessList.forEach(cuMemberAssess -> - cuMemberAssMap.put(cuMemberAssess.getPkAwards(), cuMemberAssess.getAssessStatus())); - // 查询奖衔 达标人数 - for (BdAwards bdAwards : bdAwardsList) { - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()) { - continue; - } - shareRatio = ComputeUtil.computeAdd(shareRatio, bdAwards.getAbonusRatio()); - CuMemberShareDetailExt cuMemberShareDetail = new CuMemberShareDetailExt(); - cuMemberShareDetail.setPkAwards(bdAwards.getPkId()); - cuMemberShareDetail.setPkAwardsVal(bdAwards.getAwardsName()); - cuMemberShareDetail.setPromoteTotal(0); - cuMemberShareDetail.setReachTotal(0); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareSubtotal(BigDecimal.ZERO); - if (cuMemberMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setPromoteTotal(cuMemberMap.get(bdAwards.getPkId())); - } - if (cuMemberAssMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setReachTotal(cuMemberAssMap.get(bdAwards.getPkId())); - } - cuMemberShareDetailList.add(cuMemberShareDetail); - } - cuMemberShareBonusExt.setExpectShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - cuMemberShareBonusExt.setRealShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - // 处理预发金额 预发合计 - for (CuMemberShareDetail cuMemberShareDetail : cuMemberShareDetailList) { - int count = bdAwardsList.size(); - if (count > 0) { - cuMemberShareDetail.setExpectShareSubtotal(ComputeUtil.computeDivide(cuMemberShareBonusExt.getExpectShareTotal(), BigDecimal.valueOf(count))); - cuMemberShareDetail.setExpectShareIncome(ComputeUtil.computeDivide(cuMemberShareDetail.getExpectShareSubtotal(), BigDecimal.valueOf(cuMemberShareDetail.getPromoteTotal()))); - } else { - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - } - } - cuMemberShareBonusExt.setCuMemberShareDetailList(cuMemberShareDetailList); - } - return cuMemberShareBonusExt; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java index 11371e81..df13a9be 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java @@ -3,21 +3,13 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberShareDetailService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; import com.hzs.bonus.bonus.mapper.CuMemberShareDetailMapper; import org.springframework.stereotype.Service; -import java.util.List; - /** * 会员奖金-分红奖金配置明细 服务实现类 */ @Service public class CuMemberShareDetailServiceImpl extends ServiceImpl implements ICuMemberShareDetailService { - @Override - public void saveMemberShareBonus(List cuMemberShareDetailList) { - baseMapper.saveMemberShareBonus(cuMemberShareDetailList); - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java index d114e4f9..ff67bca9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java @@ -22,16 +22,6 @@ public class BonusRecordDetailVO implements Serializable { */ private List cuMemberBonusPushList; - /** - * - */ - private List cuMemberBonusExpandList; - - /** - * 新零售 - 培育津贴 - */ - private List cuMemberBonusCoachList; - /** * 新零售 - 区域分红、月度分红 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java deleted file mode 100644 index 6646c098..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.controller.api; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.ArrayList; -import java.util.List; - -/** - * @description: 考核会员端 - * @author: sui q - * @time: 2025/1/16 11:12 - * @classname: ApiCuRegionAssessController - * @package_name: com.hzs.bonus.detail.controller.api - * version 1.0.0 - */ -@RestController -@RequestMapping("/api/region") -public class ApiCuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 查询会员昨天奖金的值 - */ - @GetMapping("/query") - public TableDataInfo listRegionAssess(){ - CuRegionAssessParam cuRegionAssessParam = new CuRegionAssessParam(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - cuRegionAssessParam.setPkMember(SecurityUtils.getUserId()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - return getDataTable(regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList)); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java deleted file mode 100644 index 7f5f2bc5..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.enums.EOperationMethod; -import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * @Description: - * @Author: sui q - * @Time: 2022/11/8 13:50 - * @Classname: CuMemberAssessController - * @PackageName: com.hzs.member.detail.controller.manage - */ -@RestController -@RequestMapping("/manage/assess") -public class CuMemberAssessController extends BaseController { - - private ICuMemberAssessService cuMemberAssessService; - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - /** - * 考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult calculationCuMemberAssess(String settleDate) { - cuMemberAssessService.calculationCuMemberAssess(DateUtils.parseStringToDate(settleDate)); - return AjaxResult.success(); - } - - /** - * 重算考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/retry-examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult retryCalculationCuMemberAssess(String settleDate) { - cuMemberAssessService.retryCalculationAssess(DateUtils.currentMonthFirstDate(DateUtils.parseStringToDate(settleDate)), Boolean.FALSE); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java deleted file mode 100644 index 0e4d13f9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessExcelVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.List; - -/** - * 新零售会员区域考核 前端控制器 - */ -@RestController -@RequestMapping("/manage/region") -public class CuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService cuRegionAssessService; - - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 考核 - * 考核默认考核当月 - * - * @return AjaxResult - */ - @GetMapping("/examine") - public AjaxResult calculationCuRegionAssess(String settleDate) { - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - return AjaxResult.success(); - } - - /** - * 查询会员昨天奖金的值 - */ - @PostMapping("/query") - public TableDataInfo listRegionAssess(@RequestBody CuRegionAssessParam cuRegionAssessParam) { - startPage(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList); - TableDataInfo dataTable = getDataTable(cuRegionAssessExtList); - dataTable.setRows(cuRegionAssessVoList); - return dataTable; - } - - /** - * 分页查询会员某个时间段内的奖金汇总 - */ - @PostMapping("/export") - public void exportRegionAssess(HttpServletResponse response, CuRegionAssessParam cuRegionAssessParam) { - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessExcelVO regionAssessExcelVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessExcelVO.class); - regionAssessExcelVO.setAssessDate(cuRegionAssessDetail.getAssessDate()); - regionAssessExcelVO.setTeamMonthPv(cuRegionAssessDetail.getTeamMonthPv()); - regionAssessExcelVO.setSmallAreaPv(cuRegionAssessDetail.getSmallAreaPv()); - regionAssessExcelVO.setAssessStatus(cuRegionAssessDetail.getAssessStatus()); - cuRegionAssessVoList.add(regionAssessExcelVO); - } - } - ExcelUtil util = new ExcelUtil<>(CuRegionAssessExcelVO.class); - util.exportExcel(response, cuRegionAssessVoList, "区域考核导出"); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java index 75b4ae6e..062cb5e0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java @@ -2,68 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface CuMemberAssessDetailMapper extends BaseMapper { - - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param cuMemberList 需要重新考核的会员 - * @param assessType 类型 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("cuMemberList") List cuMemberList, @Param("assessType") Integer assessType); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - Integer updateCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 批量删除会员考核明细 - * @param revokeDetailList 退单的明细数据 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/9 15:37 - */ - Integer updateCuMemberAssessDetailByRevoke(@Param("revokeDetailList") List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index 90baae05..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java index e483d22f..64ce9346 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java @@ -2,125 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssess; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员信息-会员考核记录 Mapper 接口 */ public interface CuMemberAssessMapper extends BaseMapper { - - /* - * 清空表数据 - **/ - void deleteCuMemberAssessByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberRangeAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 更新会员复购考核业绩 - * - * @param tableName 结算表 - * @param beforeTableName 上个月的表 - * @param sourcePeriod 来源结算期 - * @param period 结算结算期间 - * @param assessType 考核类型 0=复购考核 1=分红考核 - */ - Integer updateAssessPeriodBeginByBeforeMonth(@Param("beforeTableName") String beforeTableName, @Param("tableName") String tableName, - @Param("sourcePeriod") Integer sourcePeriod, - @Param("period") Integer period, @Param("assessType") Integer assessType); - - /** - * 更新会员复购考核、分红考核 当月结余,根据上月复购订单 - * - * @param tableName 表名 - * @param period 期间 - * @param assessType 考核类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param orderTypeList 订单类型 - */ - Integer updateAssessPeriodAddBySaOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("assessType") Integer assessType, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("orderTypeList") List orderTypeList); - - /** - * 更新免考通过的考核表 - * 更新会员考核表,根据免考的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodExemptBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员 - * - * @param tableName 需要更新的会员考核表名 - * @param settleTableName 每日结算表 - * @param period 期间 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateAssessCuMemberToRepExempt(@Param("tableName") String tableName, @Param("settleTableName") String settleTableName, - @Param("period") Integer period, @Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - */ - Integer updateAllCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName); - - /** - * 更新考核通过的考核表 - * 更新会员考核表,根据使用值的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodCheckBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(@Param("settleTable") String settleTable, @Param("period") Integer period, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java deleted file mode 100644 index dcf20b69..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 Mapper 接口 - */ -public interface CuMemberGradeMapper extends BaseMapper { - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(@Param("secondRangeTableName") String secondRangeTableName, @Param("period") Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(@Param("period") Integer period, @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询会员等级 - */ - List queryCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 回退会员等级 - */ - void updateCuMemberGradeLevel(@Param("rangeTableName") String rangeTableName, @Param("pkOrder") Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(@Param("pkMember") Long pkMember, @Param("pkOrder") Long pkOrder); - - /** - * 删除等级 - */ - void deleteCuMemberGrade(@Param("period") Integer period); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(@Param("cuMemberRetailRangeExtList") List cuMemberRetailRangeExtList, - @Param("period") Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java deleted file mode 100644 index 25efdea9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 Mapper 接口 - */ -public interface CuRegionAssessDetailMapper extends BaseMapper { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量生成考核明细seq - * - * @param rowNum - * @return - */ - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(@Param("cuRegionAssessDetailList") List cuRegionAssessDetailList); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailTeamPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailSmallAreaPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 初始化考核,先置为考核失败 - **/ - void updateCuRegionAssessDetailInit(@Param("assessDate") Date assessDate); - - /* - * 根据月后业绩考核,汇总满足30w,小区10w - **/ - void updateCuRegionAssessDetailByPv(@Param("assessDate") Date assessDate); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java deleted file mode 100644 index 7c407304..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 Mapper 接口 - */ -public interface CuRegionAssessMapper extends BaseMapper { - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(@Param("regionAssessParam") CuRegionAssessParam regionAssessParam); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 考核开始日期 - **/ - void updateAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - */ - List batchQueryCuRegionAssessSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssess(@Param("cuRegionAssessList") List cuRegionAssessList); - - /* - * 更新达标次数 - **/ - void mergeCuRegionAssess(@Param("assessDate") Date assessDate); - - /* - * 查询待考核的区域 - **/ - List queryCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java index 4195becb..10fb5eb0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java @@ -2,63 +2,10 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface ICuMemberAssessDetailService extends IService { - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param newCuMemberSettleExtList 会员列表 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - void updateCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /** - * 删除可能会发生变动的会员的考核明细 - * @param revokeDetailList 变动的记录 - * @Author: sui q - * @Date: 2022/11/9 15:31 - */ - void deleteCuMemberAssessDetailByList(List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index 630b0400..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java index b85bb819..ed209323 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java @@ -3,28 +3,9 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssess; -import java.util.Date; -import java.util.List; - /** * 会员信息-会员考核记录 服务类 */ public interface ICuMemberAssessService extends IService { - /** - * 复购考核每月第一考核调用此方法 - */ - void calculationCuMemberAssess(Date currentDate); - - /** - * 重算考核 奖金用、每天的重算复购考核用(复购考核、分红考核),只重算免考的 - * - * @param currentDate 哪一天进行重新复购考核,拿昨天的值跟现在的值对比 - */ - void retryCalculationAssess(Date currentDate, Boolean flag); - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(String startDate, Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java deleted file mode 100644 index 42165197..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务类 - */ -public interface ICuMemberGradeService extends IService { - - /** - * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天 - * - * @param period 结算期间 - * @param rangeTableName 结算表 - */ - List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(String secondRangeTableName, Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList); - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(String rangeTableName, Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder); - - /** - * 插入会员等级升级记录 - */ - void insertCuMemberGrade(List cuMemberGradeList); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGrade(List cuMemberGradeList, Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java deleted file mode 100644 index f0e47195..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务类 - */ -public interface ICuRegionAssessDetailService extends IService { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate); - - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList); - - /* - * 根据上月数据考核区域 - **/ - void assessCuRegionAssessDetail(String rangeTableName, Date assessDate); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java deleted file mode 100644 index 44be6d2d..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 服务类 - */ -public interface ICuRegionAssessService extends IService { - - /* - * 每月考核区域是否达标 - **/ - void assessRegionByEveryMonth(String settleDate, String rangeTableName); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam); - - List getCuRegionAssessVoS(List cuRegionAssessExtList); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java index 98b07785..d0813914 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java @@ -1,79 +1,14 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAssessmentType; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.bonus.detail.mapper.CuMemberAssessDetailMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - /** - *

* 考核业绩变化明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 */ @Service public class CuMemberAssessDetailServiceImpl extends ServiceImpl implements ICuMemberAssessDetailService { - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - - @Override - public void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.deleteCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate) { - baseMapper.insertCuMemberAssesDetailByOrder(tableName, period, startDate, endDate); - } - - @Override - public void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList) { - List purchaseMemberList = new ArrayList<>(); - List shareMemberList = new ArrayList<>(); - newCuMemberSettleExtList.forEach(cuMemberSettleExt -> { - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == cuMemberSettleExt.getAssessType()) { - purchaseMemberList.add(cuMemberSettleExt); - } else { - shareMemberList.add(cuMemberSettleExt); - } - }); - if (purchaseMemberList.size() > 0) { - List> purchaseHandleCutList = cuMemberBonusSettle.handleCutList(purchaseMemberList); - purchaseHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.REPURCHASE_ASSESS.getValue()) ); - } - if (shareMemberList.size() > 0) { - List> shareHandleCutList = cuMemberBonusSettle.handleCutList(shareMemberList); - shareHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.SHARE_ASSESS.getValue())); - } - } - - @Override - public void updateCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.updateCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void deleteCuMemberAssessDetailByList(List revokeDetailList) { - List> handleCutList = cuMemberBonusSettle.handleCutList(revokeDetailList, - MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - baseMapper.updateCuMemberAssessDetailByRevoke(list); - }); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index 55d7de87..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.service.ICuMemberAssessExemptService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.bonus.detail.mapper.CuMemberAssessExemptMapper; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java index a3821b57..978e073b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java @@ -1,21 +1,10 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.bonus.detail.mapper.CuMemberAssessMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; /** * 会员信息-会员考核记录 服务实现类 @@ -23,161 +12,4 @@ import java.util.*; @Service public class CuMemberAssessServiceImpl extends ServiceImpl implements ICuMemberAssessService { - @Autowired - private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; - @Autowired - private ICuMemberAssessDetailService iCuMemberAssessDetailService; - - /** - * 复购考核每月第一次考核调用此方法 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void calculationCuMemberAssess(Date currentDate) { - // 查询当前时间的第一天跟最后一天 - // 需要验证考核国家是否有复购考核 分红考核 - // 考核日期不能跨越考核,只能当月考核,当月考核上月 - if (DateUtils.currentDay(currentDate) == 1) { - String currentMonthFirstDate = DateUtils.currentMonthFirstDateStr(currentDate); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - String currentTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(currentMonthFirstDate); - // 清空数据 根据期数清空cu_member_assess cu_member_assess_detail表数据 - initCurrentAssess(currentDate, currentTableName, currentPeriod); - // 初始化复购考核的上月结余 - initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.REPURCHASE_ASSESS.getValue()); - // 初始化分红考核的上月结余 -// initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.SHARE_ASSESS.getValue()); - // 更新当月结余 结余会同时更新复购跟分红,只需要更新一次 - // 1 有免考状态的 本月使用是 0,考核状态是免考通过,免考将所有的值更改一下期末 期末= 期初+本月 - // 注意 不修改考核状态为通过的值,可能存在之前考核通过,又手动免考的人 - baseMapper.updateAssessPeriodExemptBalanceByUsed(currentTableName, currentPeriod); - // 2 需要扣除通过的,需要记录流水 - // 记录流水,新增或修改 - iCuMemberAssessDetailService.updateCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.updateAssessPeriodCheckBalanceByUsed(currentTableName, currentPeriod); - } - } - - /** - * 奖金计算时重算考核 (复购考核、分红考核),只重算免考的、撤单的 - * - * @param currentDate 考核时间 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void retryCalculationAssess(Date currentDate, Boolean flag) { -// String beforeDateStr = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, currentDate); -// Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDateStr).getPkId(); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)).getPkId(); -// String beforeTableName = TableNameConstants.CU_MEMBER_SETTLE + beforePeriod; -//// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 -// String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); -// String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); -// Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); -// // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); -// // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; -// // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, -// // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -//// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 -// // 所有的海粉会员设置复购考核失败,存在任意订单的海粉会员复购考核成功 -// // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); -// baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); -// // 奖金重算时更新结算表,flag=true代表奖金重算时,重算考核需要更新网体 flag=false 代表重算考核 - if (flag) { - // 2024-09-09 所有人全部免考通过,之后的当月免考通过 - if (DateUtils.compareDateBefore(currentDate, DateUtils.parseStringToDate("2024-10-01"))) { - baseMapper.updateAllCuMemberSettleToRepExempt(settleTableName); - } else { - baseMapper.updateCuMemberSettleToRepExempt(settleTableName, startDate, endDate, startPeriod, endPeriod); - } - } - } - - private void initCurrentAssess(Date currentDate, String currentTableName, Integer currentPeriod) { - // 获取上月最后一天 - String beforeLastDate = DateUtils.beforeMonthLastDateStr(currentDate); - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeLastDate); - int period = cuMemberSettlePeriod.getPkId(); - String sourceTable = TableNameConstants.CU_MEMBER_SETTLE + period; - String rangeSourceTable = TableNameConstants.CU_MEMBER_RANGE + period; - // 清空子表、主表数据 - iCuMemberAssessDetailService.deleteCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.deleteCuMemberAssessByPeriod(currentTableName, currentPeriod); - // 初始化复购考核 - String month = DateUtils.getMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)); - // 结算日期后一天 - baseMapper.insertRepCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - baseMapper.insertRepCuMemberRangeAssess(currentTableName, rangeSourceTable, currentPeriod, month); - // 初始化分红考核 -// baseMapper.insertShareCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - -// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 - String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); - String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); - Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); - // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); - // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; - if (DateUtils.currentDay(DateUtils.currentDate()) == 1) { - String currentMonthFirstDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS, currentDate)); - Integer yesterdayPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + yesterdayPeriod; - } - // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, - // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 - // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); - baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); - - // 初始化订单数据,将当月新增加入数据库 - // 上月第一天,上月最后一天 - Date beforeFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - Date currentFirstDate = DateUtils.currentMonthFirstDate(currentDate); - iCuMemberAssessDetailService.insertCuMemberAssesDetailByOrder(currentTableName, currentPeriod, beforeFirstDate, currentFirstDate); - } - - /** - * 初始化期初数据,将上月结余作为本月期初,更新当月新增 - * - * @param currentDate 结算日期 - * @param currentTableName 当前月结算表 - * @param currentPeriod 当前结算期间 - * @param assessmentType 考核类型 0=复购考核 1=分红考核 - */ - private void initCurrentAssessByBeforeMonth(Date currentDate, String currentTableName, Integer currentPeriod, Integer assessmentType) { - List orderTypeList = new ArrayList<>(); - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == assessmentType) { - orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); - orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - } - // 更新考核值,期初是上月考核表的当月剩余业绩 - // 获取结算日月初第一天,获取期间 - // 获取结算日上月最后一天,获取期间 - Date beforeMonthFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - String beforeMonthFirstDateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeMonthFirstDate); - Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeMonthFirstDateStr).getPkId(); - String beforeTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(beforeMonthFirstDateStr); - Date currentMonthFirstDate = DateUtils.currentMonthFirstDate(currentDate); - // 初始化复购考核的上月结余 // 更新当月结余 - baseMapper.updateAssessPeriodBeginByBeforeMonth(beforeTableName, currentTableName, beforePeriod, currentPeriod, assessmentType); - // 更新当月新增 - baseMapper.updateAssessPeriodAddBySaOrder(currentTableName, currentPeriod, assessmentType, - beforeMonthFirstDate, currentMonthFirstDate, orderTypeList); - } - - @Override - public List queryCuMemberAssTotal(String startDate, Integer pkCountry) { - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(startDate).getPkId(); - String tableTable = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(startDate); - return baseMapper.queryCuMemberAssTotal(tableTable, period, pkCountry); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java deleted file mode 100644 index 34cfd152..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuMemberGradeMapper; -import com.hzs.bonus.detail.service.ICuMemberGradeService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务实现类 - */ -@Service -public class CuMemberGradeServiceImpl extends ServiceImpl implements ICuMemberGradeService { - - @Override - public List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName) { - // 更新奖衔,回退等级 - baseMapper.deleteCuMemberGrade(period); - baseMapper.updateCuMemberGrade(rangeTableName, period); - return baseMapper.queryCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeSecond(String secondRangeTableName, Integer period) { - baseMapper.updateCuMemberGradeSecond(secondRangeTableName, period); - } - - @Override - public List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList) { - return baseMapper.queryCuMemberGradeByList(period, memberRetailRangeExtList); - } - - @Override - public void updateCuMemberGrade(String rangeTableName, Long pkOrder) { - baseMapper.updateCuMemberGradeLevel(rangeTableName, pkOrder); - } - - @Override - public CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder) { - return baseMapper.getMemberLevel(pkMember, pkOrder); - } - - @Override - public void insertCuMemberGrade(List cuMemberGradeList) { - saveBatch(cuMemberGradeList); - } - - @Override - public void deleteCuMemberGrade(List cuMemberGradeList, Integer period) { - baseMapper.deleteCuMemberGradeByList(cuMemberGradeList, period); - } - - @Override - public List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period) { - return baseMapper.queryCuMemberGrade(cuMemberRetailRangeExtList, period); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java deleted file mode 100644 index 89306255..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuRegionAssessDetailMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务实现类 - */ -@Service -public class CuRegionAssessDetailServiceImpl extends ServiceImpl implements ICuRegionAssessDetailService { - - @Override - public void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod) { - baseMapper.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - } - - @Override - public void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate) { - baseMapper.updateAssessRegionDetailByDate(assessStartDate, assessEndDate); - } - - @Override - public List batchQueryCuRegionAssessDetailSeq(Integer rowNum) { - return baseMapper.batchQueryCuRegionAssessDetailSeq(rowNum); - } - - @Override - public void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList) { - baseMapper.batchInsertCuRegionAssessDetail(cuRegionAssessDetailList); - } - - @Override - public void assessCuRegionAssessDetail(String rangeTableName, Date assessDate) { - // 处理考核明细的汇总值 - baseMapper.mergeCuRegionAssessDetailTeamPv(rangeTableName, assessDate); - // 处理考核明细的小区 - baseMapper.mergeCuRegionAssessDetailSmallAreaPv(rangeTableName, assessDate); - // 所有考核先变为考核失败 - baseMapper.updateCuRegionAssessDetailInit(assessDate); - // 验证汇总业绩和小区业绩是否满足条件,汇总业绩满足30000,小区满足100000,变更为考核通过 - baseMapper.updateCuRegionAssessDetailByPv(assessDate); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java deleted file mode 100644 index 14885c12..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ /dev/null @@ -1,245 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; -import com.hzs.bonus.detail.mapper.CuRegionAssessMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import com.hzs.retail.member.IMemberRetailApi; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; - -/** - * 新零售会员区域考核 服务实现类 - */ -@Slf4j -@Service -public class CuRegionAssessServiceImpl extends ServiceImpl implements ICuRegionAssessService { - - @DubboReference - IMemberRetailApi iMemberRetailApi; - - @Autowired - private ICuRegionAssessDetailService iCuRegionAssessDetailService; - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - @Transactional(rollbackFor = Exception.class) - public void assessRegionByEveryMonth(String settleDate, String rangeTableName) { - // 每月1号进行考核,结算上月最后一期的时候进行区域达标考核 - Date assDate = DateUtils.parseStringToDate(settleDate); - Date assessDate = DateUtils.afterDate(1, ChronoUnit.DAYS, assDate); - - log.info("assDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assDate)); - log.info("assessDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assessDate)); - - if (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, assessDate).endsWith("01")) { - // 当月第一天 - Date startDate = DateUtils.currentMonthFirstDate(assDate); - - log.info("startDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, startDate)); - - // 清空 1 号到 今天 的考核数据 - iCuRegionAssessDetailService.updateAssessRegionDetailByDate(startDate, assessDate); - baseMapper.updateAssessRegionByDate(startDate, assessDate); - deleteAssessRegionByDate(assessDate, 1); - - // 生成6期待考核数据,查询上月的区域,第一次考核的时候,明细生成6期 - // 查询目前有效的区域配置 - List memberRetailRegionList = baseMapper.queryCuMemberRetailRegion(startDate, assessDate); - if (memberRetailRegionList.size() > 0) { - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) { - - if (null != cuMemberRetailRegion.getEffectiveEndDate()) { - // 设置过生效结束时间 - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(1, cuMemberRetailRegion.getEffectiveEndDate()))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - while (assessDate.compareTo(cuRegionAssess.getAssessEndDate()) <= 0) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(assessDate) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - - assessDate = DateUtils.afterMonthDate(1, assessDate); - } - } else { - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, assessDate)) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - } - - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate); - baseMapper.mergeCuRegionAssess(assessDate); - - // 取消区域列表 - List cancelRegionList = new ArrayList<>(); - // 开始考核,将 上月最后一天,奖衔、业绩同步到考核表中 - // 查询主表考核结束日期=考核日期的,这部分需要生成下6期,最后一期结算完,验证是否达标,达标后继续生成下一期,不达标取消区域 - // 查询考核结束日期次数不达标的区域,进行区域取消处理 - List cuRegionAssessList = queryCuRegionAssessByEndDate(assessDate); - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuRegionAssess cuRegionAssess : cuRegionAssessList) { - if (cuRegionAssess.getReachNum() < 3) { - cancelRegionList.add(cuRegionAssess.getPkRegion()); - continue; - } - Date nextAssessDate = DateUtils.afterMonthDate(1, assessDate); - deleteAssessRegionByDate(nextAssessDate, 2); - CuRegionAssess cuRegionAssess1 = CuRegionAssess.builder() - .pkMember(cuRegionAssess.getPkMember()) - .pkRegion(cuRegionAssess.getPkRegion()) - .assessPeriod(cuRegionAssess.getAssessPeriod() + 1) - .assessStartDate(DateUtils.currentMonthFirstDate(nextAssessDate)) - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, nextAssessDate))) - .source(cuRegionAssess.getSource()) - .build(); - cuRegionAssess1.setPkCountry(cuRegionAssess.getPkCountry()); - cuRegionAssess1.setPkCreator(MagicNumberConstants.PK_ADMIN); - regionAssessMap.put(cuRegionAssess1.getPkMember(), cuRegionAssess1); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, cuRegionAssess1.getAssessStartDate())) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuRegionAssess.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - // 查询到期日期的区域,验证近6个月的达标次数,不达标取消 -// validateHandAreaAssess(assessDate, startDate, cancelRegionList); - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - } - - private void saveCuRegionAssess(Map regionAssessMap, List regionAssessDetailList) { - List longs = baseMapper.batchQueryCuRegionAssessSeq(regionAssessMap.size()); - int i = 0; - List cuRegionAssessList = new ArrayList<>(); - for (Long pkMember : regionAssessMap.keySet()) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(pkMember); - cuRegionAssess.setPkId(longs.get(i)); - cuRegionAssessList.add(cuRegionAssess); - i++; - } - for (CuRegionAssessDetail cuRegionAssessDetail : regionAssessDetailList) { - if (regionAssessMap.containsKey(cuRegionAssessDetail.getPkRegionAssess())) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(cuRegionAssessDetail.getPkRegionAssess()); - cuRegionAssessDetail.setPkRegionAssess(cuRegionAssess.getPkId()); - } - } - // 主表 - List> lists = cuMemberBonusSettle.handleCutList(cuRegionAssessList); - lists.forEach(list -> baseMapper.batchInsertCuRegionAssess(list)); - - List idList = iCuRegionAssessDetailService.batchQueryCuRegionAssessDetailSeq(regionAssessDetailList.size()); - for (int j = 0; j < regionAssessDetailList.size(); j++) { - regionAssessDetailList.get(j).setPkId(idList.get(j)); - } - // 明细表 - List> detailList = cuMemberBonusSettle.handleCutList(regionAssessDetailList); - detailList.forEach(detail -> iCuRegionAssessDetailService.batchInsertCuRegionAssessDetail(detail)); - } - - List queryCuRegionAssessByEndDate(Date settleDate) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuRegionAssess::getAssessEndDate, settleDate); - return baseMapper.selectList(queryWrapper); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod) { - // 7天内重算 - iCuRegionAssessDetailService.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - baseMapper.deleteAssessRegionByDate(assessStartDate, assessPeriod); - } - - @Override - public List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam) { - regionAssessParam.setAssessDate(DateUtils.currentMonthFirstDate()); - return baseMapper.queryRegionAssessByCondition(regionAssessParam); - } - - @Override - public List getCuRegionAssessVoS(List cuRegionAssessExtList) { - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - CuRegionAssessVO cuRegionAssessVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessVO.class); - List regionAssessDetailVoList = new ArrayList<>(); - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessDetailVO cuRegionAssessDetailVO = BeanUtil.copyProperties(cuRegionAssessDetail, CuRegionAssessDetailVO.class); - regionAssessDetailVoList.add(cuRegionAssessDetailVO); - } - cuRegionAssessVO.setRegionAssessDetailVoList(regionAssessDetailVoList); - cuRegionAssessVoList.add(cuRegionAssessVO); - } - return cuRegionAssessVoList; - } -} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index bda1f3cd..ca9ccfcb 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -237,22 +237,6 @@
- - merge into ${rangeTableName} a - using ( - select cm.pk_member, cr.county region_address - from ${rangeTableName} cm - inner join cu_member_retail_region cr - on cr.pk_member = cm.pk_member - and cr.effective = 0 - and cr.del_flag = 0 - where cr.creation_time < #{settleDate, jdbcType=DATE} - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.region_address = b.region_address - - - - - - - - - - - - - select cm.* - from cu_member cm - where cm.del_flag = 0 - - and cm.member_code = #{memberCode} - - - and cm.pk_id = #{pkMember} - - - - merge into cu_member a @@ -259,24 +213,6 @@ ) - - - merge into cu_member a - using ( - select pk_member, max(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, - #{item.newLevel} pk_grade - from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - merge into cu_member a using ( @@ -304,53 +240,4 @@ a.modified_time = sysdate - - merge into cu_member a - using ( - select pk_member, min(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, #{item.newLevel} pk_grade from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - merge into cu_member a - using ( - select cm.pk_id, m.new_level pk_grade - from cu_member cm - inner join( - select a.* - from cu_member_level a - inner join ( - select pk_member, max(pk_id) pk_id - from cu_member_level - where del_flag = 0 - and up_type = 4 - and upgrade_time >= #{startDate,jdbcType=DATE} - and upgrade_time < #{endDate,jdbcType=DATE} - group by pk_member) b - on a.pk_id = b.pk_id) m - on cm.pk_id = m.pk_member - where cm.pk_settle_grade < m.new_level - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml index 2069a109..7297c2e7 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml @@ -2,270 +2,5 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_bonus_coach(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,current_generation,coach_generation,coach_no_capping, - coach_capping,coach_normal_half,coach_normal_real,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.currentGeneration},#{item.coachGeneration}, - #{item.coachNoCapping},#{item.coachCapping},#{item.coachNormalHalf},#{item.coachNormalReal}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - delete - from CU_MEMBER_BONUS_COACH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} - and grant_status <= 2) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml index db88bc0e..65ddb002 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusExpandMapper.xml @@ -2,278 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_bonus_expand(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,current_touch,expand_touch,add_touch,expand_no_capping, - expand_capping,expand_normal_half,expand_normal_real,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.currentTouch},#{item.expandTouch},#{item.addTouch,jdbcType=NUMERIC}, - #{item.expandNoCapping},#{item.expandCapping},#{item.expandNormalHalf},#{item.expandNormalReal}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - - delete - from CU_MEMBER_BONUS_EXPAND - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} and grant_status <= 2) - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml index 92caff3f..ba93896e 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml @@ -159,133 +159,4 @@ order by b.period,b.pk_bonus_items,b.real_income desc - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml index a261fa85..f875e1ec 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml @@ -2,56 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml index 690f8b9d..a38b4380 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml @@ -2,47 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - merge into cu_member_share_detail a - using( - - select #{item.pkAwards} pk_awards,#{item.pkShareBonus} pk_share_bonus,#{item.promoteTotal} promote_total,#{item.reachTotal} reach_total, - #{item.expectShareIncome} expect_share_income,#{item.expectShareSubtotal} expect_share_subtotal, - #{item.realShareIncome} real_share_income,#{item.realShareSubtotal} real_share_subtotal, - #{item.creationTime, jdbcType=TIMESTAMP} creation_time,#{item.pkCountry} pk_country,#{item.pkCreator,jdbcType=BIGINT} pk_creator, - #{item.modifiedTime, jdbcType=TIMESTAMP} modified_time,#{item.pkModified,jdbcType=BIGINT} pk_modified from dual - - ) b - on (a.pk_share_bonus=b.pk_share_bonus and a.pk_awards=b.pk_awards) - WHEN NOT MATCHED THEN - insert(pk_awards,pk_share_bonus, promote_total, reach_total, expect_share_income, expect_share_subtotal, real_share_income, - real_share_subtotal,creation_time,pk_country,pk_creator) - values - (b.pk_awards,b.pk_share_bonus,b.promote_total,b.reach_total, b.expect_share_income, b.expect_share_subtotal, b.real_share_income, - b.real_share_subtotal,b.creation_time,b.pk_country,b.pk_creator) - when matched then - update set a.promote_total=b.promote_total,a.reach_total=b.reach_total,a.expect_share_income=b.expect_share_income, - a.expect_share_subtotal=b.expect_share_subtotal,a.real_share_income=b.real_share_income, - a.real_share_subtotal=b.real_share_subtotal,a.modified_time=b.modified_time,a.pk_modified=b.pk_modified - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml index 6bf61715..20c9ff57 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml @@ -2,114 +2,4 @@ - - - - - - - - - - - - - - - - - - merge into cu_member_assess_detail a - using (select ca.pk_id,ca.pk_member,(case when ca.assess_type=0 then 1 else 3 end) change_type, - ca.assess_target trade_achieve,ca.pk_creator,ca.pk_country from ${tableName} ca - where ca.assess_status=2 and ca.period = #{period} and pk_member in - - #{item.pkMember} - - and assess_type = #{assessType} - and ca.assess_target <= ca.month_balance+ca.month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type=b.change_type) - when not matched then - insert (pk_assess,pk_member,change_type,trade_achieve, pk_creator,pk_country) - values(b.pk_id,b.pk_member,b.change_type,b.trade_achieve, b.pk_creator,b.pk_country) - - - - insert into cu_member_assess_detail (pk_assess, pk_member, PK_ORDER, change_type, trade_achieve, TRADE_TIME, pk_creator, pk_country) - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 0 CHANGE_TYPE, - order_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 0) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type in (3, 12, 14, 22, 26, 31) - and so.order_achieve > 0 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - union - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 2 CHANGE_TYPE, - order_ass_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 1) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type = 13 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - - - - merge into cu_member_assess_detail a - using (select pk_id, - pk_member, - (case when assess_type = 0 then 1 else 3 end) change_type, - assess_target trade_achieve, - pk_creator, - pk_country - from ${tableName} - where assess_status = 2 - and period = #{period} - and assess_target <= month_balance + month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type = b.change_type) - when matched then - update set a.trade_achieve = b.trade_achieve - when not matched then - insert (pk_assess, pk_member, change_type, trade_achieve, pk_creator, pk_country) - values (b.pk_id, b.pk_member, b.change_type, b.trade_achieve, b.pk_creator, b.pk_country) - - - - merge into cu_member_assess_detail a - using( - - select #{item.changeType} change_type,#{item.pkMember} pk_member,#{item.pkAssess} pk_assess from dual - - )b on (a.pk_assess=b.pk_assess and a.pk_member=b.pk_member and a.change_type=b.change_type) - when matched then - update set a.del_flag=1 - - - - DELETE - FROM cu_member_assess_detail - WHERE pk_assess IN ( - SELECT pk_id - FROM ${tableName} - WHERE period = #{period}) - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 5ab19c39..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml index fd9ea959..472939bf 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml @@ -2,189 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - pk_id NUMBER(20) primary key, - pk_member NUMBER(20) not null, - period NUMBER(6) not null, - settle_month VARCHAR2(12) not null, - assess_type NUMBER(2) not null, - pk_awards NUMBER(6) not null, - assess_target NUMBER(17,6) default 0 not null, - is_examine NUMBER(1) default 1 not null, - assess_status NUMBER(2) not null, - month_balance NUMBER(17,6) default 0 not null, - month_add NUMBER(17,6) default 0 not null, - cur_month_add number(17,6) default 0 not null, - month_used NUMBER(17,6) default 0 not null, - month_surplus NUMBER(17,6) default 0 not null, - del_flag NUMBER(1) default 0 not null, - pk_country NUMBER(4) not null, - pk_creator NUMBER(20) not null, - creation_time DATE default sysdate not null, - modified_time DATE, - pk_modified NUMBER(20) - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_awards b - on ct.pk_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_range_awards pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_range_awards b - on ct.pk_range_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using (select pk_member,assess_type,month_surplus from ${beforeTableName} cs - inner join cu_member cm - on cs.pk_member=cm.pk_id and cm.del_flag=0 - where period = #{sourcePeriod} and assess_type = #{assessType} and cm.system_type=0) b - on (a.pk_member = b.pk_member and a.assess_type = b.assess_type) - when matched then - update set a.month_balance = b.month_surplus where a.del_flag= 0 and a.period= #{period} - - - merge into ${tableName} a - using (select pk_member,#{period} period,#{assessType} assess_type,sum(order_achieve) order_achieve from( - select pk_member,(case when #{assessType} = 0 then order_achieve else order_ass_achieve end) order_achieve from sa_order - where del_flag = 0 and order_status = 1 and order_type in - - #{item} - - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - ) - group by pk_member - ) b - on (a.pk_member = b.pk_member and a.period= b.period and a.assess_type= b.assess_type) - when matched then - update set a.MONTH_ADD=b.order_achieve - - - - update ${tableName} set month_surplus = month_balance+month_add - where del_flag= 0 and period = #{period} - - - - update ${tableName} set assess_status = 0, month_used = assess_target, month_surplus = month_balance+month_add-assess_target - where del_flag= 0 and assess_status=2 and period = #{period} and assess_target <= month_balance+month_add - - - - merge into ${tableName} a - using ( - select distinct pk_member,#{period} period,0 assess_type from( - select pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - union - select pk_member from cu_member_awards - where del_flag=0 and purchase_status= 0 and - period >= #{startPeriod} and period < #{endPeriod} - union - select pk_member from ${settleTableName} ct - inner join bd_awards ba - on ct.pk_awards = ba.pk_id - where ct.purchase_status=0 and ba.purchase_check >0) - ) b - on (a.pk_member = b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - when matched then - update set a.is_examine=0 - - - - merge into ${settleTableName} a - using ( select distinct pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.purchase_status=0 - - - - update ${settleTableName} set purchase_status=0 - - - - delete from ${tableName} where period = #{period} and del_flag=0 - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml deleted file mode 100644 index 5fce0844..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberGradeMapper.xml +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - merge into ${rangeTableName} a - using ( - select a.pk_member, max(a.new_level) pk_grade - from cu_member_grade a - inner join( - select pk_member, max(nvl(modified_time, creation_time)) creation_time - from cu_member_grade - where period = #{period} - and del_flag = 0 - and up_type = 2 - group by pk_member) b - on a.pk_member = b.pk_member and nvl(a.modified_time, a.creation_time) = b.creation_time - group by a.pk_member - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - merge into ${secondRangeTableName} a - using ( - select cs.pk_member, b.pk_grade - from ${secondRangeTableName} cs - inner join ( - select a.pk_member, max(a.new_level) pk_grade - from cu_member_grade a - inner join ( - select pk_member, max(nvl(modified_time, creation_time)) creation_time - from cu_member_grade - where period <= #{period} - and del_flag = 0 - and up_type = 2 - group by pk_member - ) b on a.pk_member = b.pk_member and nvl(a.modified_time, a.creation_time) = b.creation_time - group by a.pk_member - ) b on cs.pk_member = b.pk_member - where cs.pk_grade < b.pk_grade - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - merge into ${rangeTableName} a - using ( - select pk_member, max(new_level) pk_grade - from cu_member_level - where del_flag = 0 and up_type = 4 - - and pk_order = #{pkOrder} - - group by pk_member - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.pk_grade = b.pk_grade - - - - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - - - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - and pk_id in - - #{item.pkId} - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml deleted file mode 100644 index bfebe81c..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess_detail ( - pk_id, pk_member, pk_region_assess, assess_date, - pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.pkRegionAssess}, #{item.assessDate}, - #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into cu_region_assess_detail a - using ( - select cd.pk_id, - cr.pk_member, - cr.pk_awards, - (cr.month_consume_pv + cr.team_month_pv) team_month_pv - from cu_region_assess_detail cd - inner join ${rangeTableName} cr - on cd.pk_member = cr.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_awards = b.pk_awards, a.team_month_pv = b.team_month_pv - WHERE a.pk_awards != b.pk_awards - OR a.team_month_pv != b.team_month_pv - - - - merge into cu_region_assess_detail a - using ( - select pk_id, max(big_area_pv) big_area_pv - from ( - select cd.pk_id, b.* - from cu_region_assess_detail cd - inner join ( - select pk_parent pk_member, (month_consume_pv + team_month_pv) big_area_pv - from ${rangeTableName} - union - select pk_member, month_consume_pv big_area_pv - from ${rangeTableName} - ) b - on cd.pk_member = b.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) - group by pk_id - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.small_area_pv = a.team_month_pv - b.big_area_pv - - - - update cu_region_assess_detail - set assess_status = 2 - where del_flag = 0 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set assess_status = 0 - where del_flag = 0 - and team_month_pv >= 300000 - and small_area_pv >= 100000 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set del_flag = 1, - modified_time = sysdate - where pk_region_assess in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate, jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate, jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date != #{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess_detail - where del_flag = 0 and - pk_region_assess in ( - select pk_id from cu_region_assess - where del_flag = 0 - and assess_start_date = #{assessStartDate, jdbcType=DATE} - - and assess_period = #{assessPeriod} - and assess_period >= #{assessPeriod} - - ) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml deleted file mode 100644 index 740c60cc..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess ( - pk_id, pk_member, assess_period, pk_region, - assess_start_date, assess_end_date, - source, pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.assessPeriod}, #{item.pkRegion}, - #{item.assessStartDate}, #{item.assessEndDate}, - #{item.source}, #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into CU_REGION_ASSESS a - using ( - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join cu_member_retail_region cmrr - on cmrr.pk_id = ca.pk_region - where cd.ASSESS_STATUS = 0 - and cd.del_flag = 0 - and ca.del_flag = 0 - and ca.assess_start_date <= #{assessDate,jdbcType=DATE} - and ca.assess_end_date >= #{assessDate,jdbcType=DATE} - and cmrr.del_flag = 0 - and cmrr.effective_end_date is null - group by cd.pk_region_assess - union - - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join CU_MEMBER_RETAIL_REGION cmrr - on cmrr.pk_id = ca.pk_region - where cd.del_flag = 0 - and ca.del_flag = 0 - and cmrr.del_flag = 0 - and cmrr.effective_end_date is not null - and cd.assess_date > ADD_MONTHS(cmrr.effective_end_date, -6) - group by cd.pk_region_assess - ) b - on (a.pk_id = b.pk_region_assess) - when matched then - update set a.REACH_NUM = b.REACH_NUM - - - - update cu_region_assess - set del_flag = 1, - modified_time = sysdate - where pk_id in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate,jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate,jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date !=#{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess where del_flag=0 and - assess_start_date=#{assessStartDate, jdbcType=DATE} - - and assess_period=#{assessPeriod} - and assess_period >= #{assessPeriod} - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java index b4a7635a..3c196715 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java @@ -5,10 +5,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.EExpandCapMethod; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriodDetail; import com.hzs.common.domain.system.base.BdCountry; @@ -16,7 +14,6 @@ import com.hzs.member.achieve.mapper.CuMemberSettlePeriodMapper; import com.hzs.member.achieve.service.ICuMemberSettlePeriodDetailService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -38,8 +35,6 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } private CuMemberSettlePeriod getCuMemberSettlePeriod(String date) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java index fdce542f..11a85053 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java @@ -34,11 +34,6 @@ public class MemberTeamServiceProvider implements IMemberTeamServiceApi { return R.ok(iCuMemberTeamService.checkVertex(pkVertex)); } - @Override - public R getCuMemberTeamById(Long pkMember) { - return R.ok(iCuMemberTeamService.getCuMemberTeamById(pkMember)); - } - @Override public R> getTeamByVertexIds(List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java index c3e395b7..406b0508 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java @@ -16,11 +16,6 @@ public interface ICuMemberTeamService extends IService { **/ List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt); - /* - * 根据会员主键获得所属团队 - **/ - CuMemberTeamExt getCuMemberTeamById(Long pkMember); - /** * 根据国家查询隶属团队 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java index b45e29ac..8bfe6910 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java @@ -18,17 +18,6 @@ import java.util.List; @Service public class CuMemberTeamServiceImpl extends ServiceImpl implements ICuMemberTeamService { - @Override - public CuMemberTeamExt getCuMemberTeamById(Long pkMember) { - CuMemberTeamExt cuMemberTeamExtParam = new CuMemberTeamExt(); - cuMemberTeamExtParam.setPkMember(pkMember); - List cmtExtList = baseMapper.queryCuMemberTeam(cuMemberTeamExtParam); - if (null != cmtExtList && cmtExtList.size() > 0) { - return cmtExtList.get(0); - } - return null; - } - @Override public List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt) { return baseMapper.queryCuMemberTeam(cuMemberTeamExt); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index d6822234..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java index 85c3bd86..7b43d310 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java @@ -7,7 +7,6 @@ import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -17,13 +16,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper Integer selectByMaxApproveNumber(@Param("pkMember") Long pkMember, @Param("editType") Integer editType, @Param("approveStatus") Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(@Param("pkMember") Long pkMember, - @Param("editType") int editType, - @Param("approveStatus") int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -37,11 +29,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -82,28 +69,4 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(@Param("pkMember") Long pkMember); - - /** - * 查询会员办理业务日志表最新数据 - **/ - List selectTopDataList(@Param("pkMember") Long pkMember, - @Param("editTypeList") List editTypeList, - @Param("approveStatus") int approveStatus, - @Param("actEndDateStr") String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java index 0fc5091e..cdae0548 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java @@ -1,15 +1,12 @@ package com.hzs.member.detail.provider; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.member.detail.service.ICuMemberServiceLogService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; import java.util.List; @DubboService @@ -43,32 +40,4 @@ public class CuMemberServiceLogProvider implements ICuMemberServiceLogServiceApi return iCuMemberServiceLogService.updateByBusinessNo(memberLog); } - @Override - public R> selectCuMemberServiceLog(String businessNo) { - return iCuMemberServiceLogService.selectCuMemberServiceLog(businessNo); - } - - @Override - public R queryPolicy(Long pkMember) { - return R.ok(iCuMemberServiceLogService.queryPolicy(pkMember)); - } - - @Override - public R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus) { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(CuMemberServiceLog::getApproveStatus, approveStatus); - query.eq(CuMemberServiceLog::getEditType, approvalBusiness); - query.eq(CuMemberServiceLog::getPkMember, pkMember); - return R.ok(iCuMemberServiceLogService.count(query)); - } - - @Override - public R selectTopData(Long pkMember, int editType, int approveStatus) { - return R.ok(iCuMemberServiceLogService.selectTopData(pkMember, editType, approveStatus)); - } - - @Override - public R> listActivateLog(Date queryDate) { - return R.ok(iCuMemberServiceLogService.listActivateLog(queryDate)); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index c50a43f9..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java index f1ba72b5..e50b362d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java @@ -6,9 +6,7 @@ import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -25,11 +23,6 @@ public interface ICuMemberServiceLogService extends IService */ Integer selectByMaxApproveNumber(Long pkMember, Integer editType, Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(Long pkMember, int editType, int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -43,11 +36,6 @@ public interface ICuMemberServiceLogService extends IService */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -101,11 +89,6 @@ public interface ICuMemberServiceLogService extends IService */ List queryList(Integer editType, String memberCode, String memberName, Integer pkCountry, Integer approveStatus); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - /** * 查询展示列表 * @@ -113,25 +96,4 @@ public interface ICuMemberServiceLogService extends IService */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(Long pkMember); - - /** - * 查询会员多个办理业务的日志最新数据 - **/ - CuMemberServiceLogVO selectTopDataList(Long pkMember, List editType, int approveStatus, String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index b30e4634..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.member.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.member.detail.mapper.CuMemberAssessExemptMapper; -import com.hzs.member.detail.service.ICuMemberAssessExemptService; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java index e7aa36c4..bac50d7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java @@ -1,13 +1,11 @@ package com.hzs.member.detail.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.exception.ServiceException; @@ -19,15 +17,12 @@ import com.hzs.member.detail.mapper.CuMemberServiceLogMapper; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import com.hzs.member.self.vo.DomicileChangeVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; -import java.util.Comparator; import java.util.Date; import java.util.List; -import java.util.stream.Collectors; /** * 会员更名、密码修改表 服务实现类 @@ -40,11 +35,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectServiceLogList(CuMemberServiceLogVO cuMemberServiceLogVO) { return baseMapper.selectServiceLogList(cuMemberServiceLogVO); @@ -55,11 +45,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectOldValue(BusinessMemberVO businessMemberVO) { return baseMapper.selectOldValue(businessMemberVO); @@ -102,15 +87,15 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectByBusinessNo(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, businessNo); return R.ok(baseMapper.selectOne(queryWrapper)); } @Override public R updateByBusinessNo(CuMemberServiceLog memberLog) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("BUSINESS_NO", memberLog.getBusinessNo()); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(CuMemberServiceLog::getBusinessNo, memberLog.getBusinessNo()); return R.ok(baseMapper.update(memberLog, updateWrapper) == 1); } @@ -119,13 +104,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl> selectCuMemberServiceLog(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); - return R.ok(baseMapper.selectList(queryWrapper)); - } - @Override public List selectByList(CuMemberServiceLogExt memberServiceLogExt) { return baseMapper.selectByList(memberServiceLogExt); @@ -136,39 +114,4 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl editType, int approveStatus, String actEndDateStr) { - CuMemberServiceLogVO cmvo = new CuMemberServiceLogVO(); - List cmsList = baseMapper.selectTopDataList(pkMember, editType, approveStatus, actEndDateStr); - if (CollectionUtil.isNotEmpty(cmsList)) { - List sortedCmsList = cmsList.stream() - .sorted(Comparator.comparing(CuMemberServiceLog::getCreationTime)) - .collect(Collectors.toList()); - for (CuMemberServiceLog cms : sortedCmsList) { - cms.setPkMember(pkMember); - if (cms.getEditType() == EApprovalBusiness.CHANGE_NAME.getValue()) { - cmvo.setOldName(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.CHANGE_PHONE.getValue()) { - cmvo.setOldPhone(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.DOMICILE_CHANGE.getValue()) { - DomicileChangeVO oldValue = JSONUtil.toBean(cms.getOldValue(), DomicileChangeVO.class); - cmvo.setOldPhone(oldValue.getPhone()); - cmvo.setOldName(oldValue.getMemberName()); - } - } - } - return cmvo; - } - - @Override - public List listActivateLog(Date queryDate) { - return baseMapper.listActivateLog(queryDate); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java index f3118084..54d2abbc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java @@ -115,11 +115,6 @@ public class CuBonusStatisServiceImpl extends ServiceImpl cancelRegion(List pkIdList) { - try { - iCuMemberRetailRegionService.cancelRegion(pkIdList); - return R.ok(); - } catch (Exception e) { - log.error("区域失效操作异常,pkIdList:{}", pkIdList, e); - return R.fail(e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java index 0a971b02..35181a72 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java @@ -50,13 +50,6 @@ public interface ICuMemberRetailRegionService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID - */ - void cancelRegion(List pkIdList); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java index 3dfa20ba..23c2f1ba 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailRegionServiceImpl.java @@ -94,17 +94,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl pkIdList) { - this.update(Wrappers.lambdaUpdate() - .in(CuMemberRetailRegion::getPkId, pkIdList) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, MagicNumberConstants.PK_ADMIN) - .set(CuMemberRetailRegion::getModifiedTime, new Date()) - ); - } - @Override public int getOrderCount(Long pkMember, Integer systemType, List waresCodeList) { return baseMapper.getOrderCount(pkMember, systemType, waresCodeList); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 9255488c..00000000 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml index 0a6edc51..96593642 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml @@ -87,20 +87,6 @@ - - - - - - - - select * - from (select * - from CU_MEMBER_SERVICE_LOG - where EDIT_TYPE = 125 - and PK_MEMBER = #{pkMember} - and APPROVE_STATUS = 5 - order by CREATION_TIME desc) - where rownum = 1 - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index 8a47f7dc..a37880d4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -201,30 +201,4 @@ public class ApiRegSaOrderController extends ParentOrderController { return null; } - /** - * 校验会员等级, 计算会员等级 - * - * @param orderParam 参数 - */ - @PostMapping("/valid-mem-level") - public AjaxResult validateMemberLevel(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null || orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - if (orderParam.getOrderItemsParams() == null || - orderParam.getOrderItemsParams().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SHOPPING_CAR)); - } - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - convertShoppingCarToSku(orderParam); - - initPkCountry(orderParam); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (orderReturn.getIsEnough()) { - return AjaxResult.success(orderReturn); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); - } - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java index 7f33d91f..e0f4be75 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java @@ -47,7 +47,6 @@ import com.hzs.sale.product.IProductServiceApi; import com.hzs.sale.util.OrderUtil; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; @@ -97,8 +96,6 @@ public class SaOrderBusinessController extends BaseController { IServiceChargeServiceApi iServiceChargeServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; - @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; private ISaDeliverItemsService saDeliverItemsService; @@ -134,8 +131,6 @@ public class SaOrderBusinessController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { // 获取行政区划map Map areaMap = iAreaServiceApi.getAreaMap(pkCountry).getData(); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); for (OrderBusinessVO orderBusinessVO : list) { // 省市区处理 @@ -151,16 +146,9 @@ public class SaOrderBusinessController extends BaseController { orderBusinessVO.setCancelTime(DateUtils.getStartTime(orderBusinessVO.getPayTime())); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } - } else { - // 日结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } + // 日结 + if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { + orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); } } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java index f6a1ead5..1e3b73ec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java @@ -43,16 +43,6 @@ public interface SaOrderMapper extends BaseMapper { List queryRetailSaOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("orderCode") String orderCode); - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(@Param("deliverItemExtList") List deliverItemExtList); - /** * 查询总销售金额 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java index c368f5b8..8c5d8063 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java @@ -5,11 +5,7 @@ import lombok.Data; import java.util.List; /** - * @Description: 订单选择参数 - * @Author: jiang chao - * @Time: 2023/3/10 14:12 - * @Classname: OrderSelectParam - * @PackageName: com.hzs.sale.order.param + * 订单选择参数 */ @Data public class OrderSelectParam { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index fb6c5bd2..b3e21cac 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -5,10 +5,8 @@ import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.ISaOrderServiceApi; @@ -44,23 +42,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { return R.ok(iSaOrderService.queryRetailSaOrderByDay(startDate, endDate, orderCode)); } - @Override - public R querySaOrderExtByPkId(Long pkId) { - return R.ok(iSaOrderService.querySaOrderExtByPkId(pkId)); - } - - @Override - public R> querySaOrderByDeliverList(List deliverItemExtList) { - return R.ok(iSaOrderService.querySaOrderByDeliverList(deliverItemExtList)); - } - - @Override - public R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry) { - OrderSelectParam param = new OrderSelectParam(); - param.setPkOrderList(pkOrderList); - return R.ok(iSaOrderService.queryOrderSelect(param, pkCountry)); - } - @Override @Transactional(rollbackFor = Exception.class) public R regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -89,11 +70,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { iSaOrderService.closeOrder(); } - @Override - public R queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - return R.ok(iSaOrderService.queryOrderTotalAchieveByTime(startDate, endDate)); - } - @Override public R> querySeqList(Integer param) { return R.ok(iSaOrderService.querySeqList(param)); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index b244439a..447890d5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -12,7 +12,6 @@ import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.sale.index.vo.CuMemberMyMarketVO; import com.hzs.sale.order.param.*; import com.hzs.sale.order.vo.*; -import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import java.math.BigDecimal; @@ -57,11 +56,6 @@ public interface ISaOrderService extends IService { */ Integer querySaleOrderByPkMember(Integer pkCountry, Long pkMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 跟会员端进行交互的查询订单的方法 * @@ -76,13 +70,6 @@ public interface ISaOrderService extends IService { */ CuMember getCuMemberByKey(Long pkId); - /** - * 根据key值从redis中获取到会员信息 - * - * @param code 会员编号 - */ - CuMember getCuMemberByCode(String code); - /** * 查询会员账户状态,账户信息 * @@ -98,11 +85,6 @@ public interface ISaOrderService extends IService { */ CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); - /* - * 这是会员等级 - **/ - Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); - /** * 是否直接支付 * @@ -126,13 +108,6 @@ public interface ISaOrderService extends IService { */ void queryPostageByParam(OrderParam orderParam); - /** - * 计算会员等级 - * - * @param orderParam 商品列表、专区 - */ - OrderReturn computeLevel(OrderParam orderParam); - /** * 根据订单编号执行订单撤销操作 * @@ -147,14 +122,6 @@ public interface ISaOrderService extends IService { **/ void selfRevokeOrder(Long pkApprove, MyOrderVO myOrderVO); - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade); - /** * 生成空单注册 * @@ -170,16 +137,6 @@ public interface ISaOrderService extends IService { */ List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(List deliverItemExtList); - /** * 获取系统参数 * @@ -396,11 +353,6 @@ public interface ISaOrderService extends IService { */ List queryOrderType(Long memberId, Integer pkCountry); - /** - * 商品销量累计 - */ - void waresSalesAccrual(List waresNumberParamList); - /** * 会员首页我的市场 * @@ -410,11 +362,6 @@ public interface ISaOrderService extends IService { */ CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry); - /* - * 根据时间端查询订单累计业绩累计金额 - **/ - SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index ec0b2da2..8ca11306 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.json.JSONUtil; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.bonus.settle.IMemberSettleBonusApi; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.*; @@ -26,7 +25,6 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderChargeLog; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.util.TransactionUtils; @@ -46,7 +44,6 @@ import com.hzs.sale.order.vo.OrderCancelRegisterMemberVO; import com.hzs.sale.order.vo.ValidateCancelOrderVO; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.pub.dto.OrderDeductionDTO; -import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; @@ -109,8 +106,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { @DubboReference IAccountServiceApi iAccountServiceApi; @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; - @DubboReference IAreaServiceApi iAreaServiceApi; @@ -1081,19 +1076,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { SaOrder saOrder = saOrderList.get(0); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (!DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER); - } - } else { - // 日结 - if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); - } + // 日结 + if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { + return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); } // 涉及会员ID列表 @@ -1273,19 +1259,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue()) || orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_PART_ORDER.getValue())) { // 验证订单时间,只能撤销7天以内的支付订单 - // 周结只能撤销当前期间的订单,不能撤销上个期间的订单 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(orderCancelParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - if (DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } - } else { - Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); - if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } + Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); + if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { + validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); + return validateCancelOrderVO; } } // 验证订单国家跟会员国家是否一致,是否转换过结算国 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 744e5f9b..4cb02bd4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -64,13 +64,9 @@ import java.util.*; @Slf4j public class SaOrderHandle { - @DubboReference - IGradeServiceApi gradeServiceApi; @DubboReference ICurrencyServiceApi currencyServiceApi; @DubboReference - IMemberTeamServiceApi memberTeamServiceApi; - @DubboReference IAwardsServiceApi awardsServiceApi; @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @@ -143,87 +139,6 @@ public class SaOrderHandle { this.bdWaresSpecialPostageService = bdWaresSpecialPostageService; } - /** - * 生成用户 - * - * @param orderParam 需要保存的会员基本信息 - * @param centerMember 报单中心会员编号 - */ - CuMember packageSaveUser(OrderParam orderParam, CuMember centerMember) { - // 获取新的订单编号 - CuMember cuMember = CuMember.builder() - .memberCode(orderParam.getMemberCode()) - .memberName(orderParam.getMemberName()) - .pkSettleCountry(orderParam.getPkSettleCountry()) - .phone(orderParam.getPhone()) - .idCard(orderParam.getIdCard()) - .email(orderParam.getEmail()) - .loginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)) - .loginPassword(SysConstants.LOGIN_PASSWORD) - .payPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)) - .payPassword(SysConstants.PAY_PASSWORD) - .source(orderParam.getSource() == null ? EDataSource.PC.getValue() : orderParam.getSource()) - .pkParent(orderParam.getParentId()) - .accountStatus(EAccountStatus.NORMAL.getValue()) - .pkCenterCode(orderParam.getCenterCodeId()) - // 这个时候是待支付,等支付的时候变为支付,可以跟待支付公用 - .payStatus(EPayStatus.UNPAID.getValue()) - .category(ECategory.NORMAL.getValue()) - .orderSource(EOrderSource.SOLID.getValue()) - .consumeMoney(BigDecimal.ZERO) - .consumeAchieve(BigDecimal.ZERO) - .registerAuthority(ERegistrationAuthority.ORDINARY.getValue()) - .build(); - // 海粉没有安置人安置位置 - if (orderParam.getIsHaiFun()) { - cuMember.setCustomerType(ECustomerType.FANS.getValue()); - if (null != orderParam.getPlaceParentId()) { - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - } - if (null != orderParam.getPlaceDept()) { - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - } else { - cuMember.setCustomerType(ECustomerType.NORMAL.getValue()); - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - cuMember.setPkCountry(orderParam.getPkCountry()); - cuMember.setCreationTime(DateUtils.currentDateTime()); - cuMember.setPkCreator(centerMember.getPkId()); - if (centerMember.getPkTeamCode() == null) { - // 验证父级是不是团队 - CuMemberTeamExt memberTeamExt = memberTeamServiceApi.getCuMemberTeamById(centerMember.getPkId()).getData(); - if (memberTeamExt != null) { - cuMember.setPkTeamCode(memberTeamExt.getPkId()); - } - } else { - cuMember.setPkTeamCode(centerMember.getPkTeamCode()); - } - cuMember.setPkVertex(centerMember.getPkVertex()); - return cuMember; - } - - /** - * 封装订单 - * - * @param cuMember 会员 - * @param saOrder 订单主表 - * @param orderParam 订单商品信息 - */ - void packSaOrderItems(CuMember cuMember, SaOrderExt saOrder, OrderParam orderParam) { - orderParam.setPostage(BigDecimal.ZERO); - List saOrderItemsList; - try { - saOrderItemsList = getSaOrderItems(cuMember, saOrder, orderParam); - } catch (Exception e) { - e.printStackTrace(); - throw new RuntimeException(e); - } - saOrder.setPostage(orderParam.getPostage()); - saOrder.setOrderItemsList(saOrderItemsList); - } - /** * 查询邮费 * @@ -420,30 +335,6 @@ public class SaOrderHandle { } } - /** - * 计算订单价值(价格、业绩) - * - * @param orderParam 商品列表、专区 - * @return: void - * @Author: sui q - * @Date: 2022/9/24 14:38 - */ - SaOrder computeSaOrderAchieve(OrderParam orderParam) { - // 商品编号 + sku主键 + 数量 - List bdWaresDetailExtList = getWaresDetailExtList(orderParam, null); - SaOrder saOrder = SaOrder.builder().orderAmount(BigDecimal.ZERO) - .orderAchieve(BigDecimal.ZERO).build(); - bdWaresDetailExtList.forEach(waresDetailExt -> { - Integer num = waresDetailExt.getQuantity() * waresDetailExt.getWaresQuantity(); - BigDecimal amount = ComputeUtil.computeMultiply(waresDetailExt.getPrice(), num); - BigDecimal achievement = ComputeUtil.computeMultiply(waresDetailExt.getAchieve(), num); - saOrder.setOrderAmount(saOrder.getOrderAmount().add(amount)); - saOrder.setOrderAchieve(saOrder.getOrderAchieve().add(achievement)); - }); - // 获取订单业绩,根据订单业绩计算用户等级 - return saOrder; - } - /** * 将购买的商品明细封装为数据库中的商品明细 * @@ -631,9 +522,6 @@ public class SaOrderHandle { * 实际重量 = 长*宽*高/6000 利用重量计费公式计算实际邮费 * 判断重量计费跟体积计费哪个大使用哪个计费方法 * 陆运、空运、海运(国内默认陆运) - * @return: BigDecimal - * @Author: sui q - * @Date: 2022/9/20 20:48 */ private BigDecimal computePostage(BdPostageDetail postageDetail, BigDecimal weight) { BigDecimal postage = postageDetail.getFirstPostage(); @@ -662,61 +550,6 @@ public class SaOrderHandle { return postage; } - /** - * 简单的封装订单基本信息 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaveSaOrder(OrderParam orderParam, CuMember cuMember, String orderCode) { - SaOrderExt saOrderExt = new SaOrderExt(); - saOrderExt.setOrderCode(orderCode); - saOrderExt.setOrderAmount(BigDecimal.ZERO); - saOrderExt.setOrderAchieve(BigDecimal.ZERO); - saOrderExt.setOrderAssAchieve(BigDecimal.ZERO); - saOrderExt.setPkMember(cuMember.getPkId()); - saOrderExt.setOrderType(orderParam.getSpecialArea()); - saOrderExt.setPkReference(cuMember.getPkParent()); - saOrderExt.setPkPlacement(cuMember.getPkPlaceParent()); - saOrderExt.setRecName(orderParam.getRecName()); - saOrderExt.setRecPhone(orderParam.getRecPhone()); - saOrderExt.setRecProvince(orderParam.getRecProvince()); - if (CountryConstants.CHINA_COUNTRY.equals(cuMember.getPkSettleCountry()) || orderParam.getPkStorehouse() == null) { - if (orderParam.getRecProvince() != null) { - // 根据收货省获取仓库 - BdStorehouse bdStorehouse = currencyServiceApi.queryBdStorehouseByProvince(orderParam.getRecProvince()).getData(); - if (bdStorehouse != null) { - saOrderExt.setPkStorehouse(bdStorehouse.getPkId()); - } - } - } else { - saOrderExt.setPkStorehouse(orderParam.getPkStorehouse()); - } - saOrderExt.setRecCity(orderParam.getRecCity()); - saOrderExt.setRecCounty(orderParam.getRecCounty()); - saOrderExt.setRecAddress(orderParam.getRecAddress()); - saOrderExt.setRemark(orderParam.getRemark()); - saOrderExt.setTranType(orderParam.getTransType()); - saOrderExt.setDeliveryWay(orderParam.getDeliveryWay()); - // 如果发货方式为空,或者为0,则重置为快递发货 - if (null == saOrderExt.getDeliveryWay() || saOrderExt.getDeliveryWay().equals(0)) { - saOrderExt.setDeliveryWay(EDelivery.FAST_MAIL.getValue()); - } - // 订单状态先设置为待支付,支付的时候更新 - saOrderExt.setOrderStatus(EOrderStatus.WAIT_PAY.getValue()); - saOrderExt.setPkVertex(cuMember.getPkVertex()); - saOrderExt.setPkCreator(orderParam.getCenterCodeId()); - saOrderExt.setPkCountry(cuMember.getPkSettleCountry()); - saOrderExt.setPkMemberStore(orderParam.getPkMemberStore()); - if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - saOrderExt.setCreationTime(cuMember.getCreationTime()); - } else { - saOrderExt.setCreationTime(DateUtils.currentDateTime()); - } - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - /** * 获取订单子表 * @@ -770,45 +603,6 @@ public class SaOrderHandle { return saOrderItems; } - /** - * orderType 1 = 注册,注册不用找累计 2 升级需要 - * - * @param specialArea 专区 - * @param settleOrderAmount 订单金额 - * @param settleOrderPv 订单业绩 - * @param pkCountry 国家 - */ - GradeDTO getMemberGradeAndAwardByCountry(CuMember cuMember, Integer specialArea, BigDecimal settleOrderAmount, - BigDecimal settleOrderPv, Integer pkCountry, String upgradeWay) { - // 根据推荐人等级获取推荐等级 - List gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); - if (gradeList != null && gradeList.size() > 0) { - for (GradeDTO gradeDTO : gradeList) { - if (validateGradeByAchieve(settleOrderAmount, settleOrderPv, gradeDTO)) { - if (EUpgradeWay.COVER.getValue() != Integer.parseInt(upgradeWay)) { - gradeDTO.setStartValue(settleOrderPv); - } - return gradeDTO; - } - } - } - return null; - } - - private Boolean validateGradeByAchieve(BigDecimal settleOrderAmount, BigDecimal settleOrderPv, GradeDTO gradeDTO) { - BigDecimal compareValue; - if (null == gradeDTO.getCensusValue() || EStatisticalValue.ACHIEVEMENT.getValue() == gradeDTO.getCensusValue()) { - compareValue = settleOrderPv; - } else { - compareValue = settleOrderAmount; - } - BigDecimal startValue = gradeDTO.getStartValue(); - if (compareValue.compareTo(startValue) >= 0) { - return Boolean.TRUE; - } - return Boolean.FALSE; - } - /** * 订单支付按币种扣款 * @@ -898,14 +692,4 @@ public class SaOrderHandle { throw new RuntimeException(TransactionUtils.getContent(MemberMsgConstants.MEMBER_IS_OPERATION)); } - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return gradeServiceApi.queryGradeConfigByCondition(pkCountry, pkGrade).getData(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 223b158a..6fdfd766 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.crypto.SecureUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; @@ -28,7 +27,6 @@ import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.base.BdCountry; -import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.common.security.service.UserTokenService; @@ -58,10 +56,8 @@ import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CountryDTO; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAreaCurrencyServiceApi; -import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; -import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -88,10 +84,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IMemberServiceApi memberServiceApi; @DubboReference - IGradeServiceApi gradeServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference IMemberBankServiceApi memberBankServiceApi; @DubboReference IMemberAccountServiceApi memberAccountServiceApi; @@ -115,8 +107,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Autowired private IBdWaresService iBdWaresService; @Autowired - private IBdWaresExtendService iBdWaresExtendService; - @Autowired private SaOrderHandle saOrderHandle; @Autowired private ISaOrderItemsService saOrderItemsService; @@ -197,11 +187,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.selectCount(queryWrapper); } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - return memberServiceApi.queryCuMemberByPkMember(pkReference).getData(); - } - @Override public List querySaleOrderByCondition(OrderQueryParam orderQueryParam) { if (orderQueryParam.getEndTime() != null) { @@ -217,11 +202,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return memberServiceApi.getMemberById(pkId).getData(); } - @Override - public CuMember getCuMemberByCode(String code) { - return memberServiceApi.getMemberByCode(code).getData(); - } - @Override public List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { return memberAccountServiceApi.queryMemberAccountByCondition(cuMemberAccount).getData(); @@ -399,53 +379,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - @Override - public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { - GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt); - if (gradeDTO == null) { - return true; - } - - // 验证推荐等级,判断什么级别可以推荐什么级别 - //跨国报单不验证推荐等级权限 - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 判断推荐范围,验证该推荐人是否有推荐的权限 - CuMember parentCuMember = getCuMemberByKey(cuMember.getPkParent()); - - if (parentCuMember.getPkSettleCountry() != null && cuMember.getPkSettleCountry() != null && Objects.equals(parentCuMember.getPkSettleCountry(), cuMember.getPkSettleCountry())) { - GradeDTO validateGradeDTO = queryGradeConfigByCondition(parentCuMember.getPkSettleCountry(), parentCuMember.getPkSettleGrade()); - // 获取推荐人可以推荐的等级 - if (validateGradeDTO == null || validateGradeDTO.getBdGradeScopeExtList() == null || - validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> gradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { - return true; - } - } - } - - // 2023.11.29 奖衔处理提出,必有默认,防止出现奖衔为0的情况 - Integer pkAwards = cuMember.getPkAwards(); - cuMember.setPkRegisterGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGradeValue(gradeDTO.getGradeValue()); - // 判断奖衔,原会员有奖衔的话判断哪个大,使用大的 - if (pkAwards != null && gradeDTO.getGradeValue() != null) { - BdAwards bdAwards = awardsServiceApi.getAwardsOne(pkAwards).getData(); - BdAwards newAwards = awardsServiceApi.getAwardsOne(gradeDTO.getPkAwards()).getData(); - if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - } else { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - // 等级对应的结算值 - cuMember.setConsumeMoney(saOrderExt.getOrderAmount()); - cuMember.setConsumeAchieve(gradeDTO.getStartValue()); - if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < gradeDTO.getRegisterAuthority()) { - cuMember.setRegisterAuthority(gradeDTO.getRegisterAuthority()); - } - return false; - } - @Override public boolean getIsToBePayByOrderType(Integer pkCountry, Integer specialArea) { String confirmPay; @@ -502,57 +435,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderHandle.queryPostage(cuMember, orderParam); } - @Override - public OrderReturn computeLevel(OrderParam orderParam) { - // 新订单的 - SaOrder saOrder = saOrderHandle.computeSaOrderAchieve(orderParam); - OrderReturn orderReturn = OrderReturn.builder().isEnough(false).build(); - GradeDTO gradeDTO = calculateGradeDTO(orderParam.getSpecialArea(), orderParam.getPkSettleCountry(), - orderParam.getCenterCodeId(), saOrder); - // 注册订单、嗨粉订单直接查询出会员等级 - if (orderParam.getSpecialArea().equals(EOrderType.REGISTER_ORDER.getValue())) { - orderReturn.setIsEnough(Boolean.TRUE); - } - if (orderParam.getIsEnough() != null && orderParam.getIsEnough()) { - orderReturn.setIsEnough(Boolean.TRUE); - CuMember member = getCuMemberByKey(orderParam.getCenterCodeId()); - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(grade.getPkTransaction()); - return orderReturn; - } - // 验证等级是否满足条件 - if (!orderReturn.getIsEnough()) { - CuMember member; - if (null != orderParam.getUpgradeMemberCodeTmp()) { - member = getCuMemberByCode(orderParam.getUpgradeMemberCodeTmp()); - } else { - member = getCuMemberByKey(orderParam.getCenterCodeId()); - } - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - if (grade.getGradeValue() < gradeDTO.getGradeValue()) { - orderReturn.setIsEnough(Boolean.TRUE); - } else { - gradeDTO.setGradeName(null); - } - } - if (gradeDTO == null) { - gradeDTO = GradeDTO.builder().gradeName(null).build(); - orderReturn.setIsEnough(Boolean.FALSE); - } - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); - return orderReturn; - } - - private GradeDTO calculateGradeDTO(Integer specialArea, Integer pkCountry, Long pkMember, SaOrder saOrder) { - BigDecimal orderAmount = saOrder.getOrderAmount(); - BigDecimal orderAchieve = saOrder.getOrderAchieve(); - // 判断专区 升级需要判断哪个国家,每个国家升级方式不一样 - String upgradeWay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_WAY.getKey()); - // 会员等级为1的话 为一次性补差升级; - CuMember cuMember = getCuMemberByKey(pkMember); - return saOrderHandle.getMemberGradeAndAwardByCountry(cuMember, specialArea, orderAmount, orderAchieve, pkCountry, upgradeWay); - } - /** * 生成空单注册 * @@ -933,27 +815,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - - @Override - public GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return saOrderHandle.queryGradeConfigByCondition(pkCountry, pkGrade); - } - @Override public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); } - @Override - public SaOrder querySaOrderExtByPkId(Long pkId) { - return baseMapper.querySaOrderExtByPkId(pkId); - } - - @Override - public List querySaOrderByDeliverList(List deliverItemExtList) { - return baseMapper.querySaOrderByDeliverList(deliverItemExtList); - } - @Override public String querySystemConfigByKey(Integer pkCountry, String key) { return systemConfigServiceApi.getBonusSystemConfig(pkCountry, key).getData(); @@ -1126,21 +992,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderSelect(param, pkCountry); } - - private CuMember calculateHaFunMemberGrade(SaOrderExt saOrderExt, CuMember newCuMember) { - CuMember cuMember = null; - if (newCuMember != null) { - int oldLevel = newCuMember.getPkSettleGrade(); - // 封装等级,重新计算会员等级 - setLastCuMemberGrade(newCuMember, saOrderExt); - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - if (oldLevel < newCuMember.getPkSettleGrade()) { - cuMember = newCuMember; - } - } - return cuMember; - } - @Override public Boolean regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1232,15 +1083,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderType(memberId, pkCountry); } - @Override - public void waresSalesAccrual(List waresNumberParamList) { - try { - iBdWaresExtendService.updateWaresSalesAccrual(waresNumberParamList); - } catch (Exception e) { - e.printStackTrace(); - } - } - @Override public CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry) { //查询全国市场 @@ -1265,19 +1107,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return cuMemberMyMarketVO; } - @Override - public SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("sum(order_amount) orderAmount,sum(order_achieve) orderAchieve") - .eq(SaOrderFieldConstants.ORDER_STATUS, EOrderStatus.PAY.getValue()) - .in(SaOrderFieldConstants.ORDER_TYPE, orderTypeList) - .ge(SaOrderFieldConstants.PAY_TIME, startDate) - .lt(SaOrderFieldConstants.PAY_TIME, endDate); - return baseMapper.selectOne(queryWrapper); - } - @Override public List querySeqList(Integer param) { return baseMapper.querySeqList(param); diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml index 8d452a1c..53a3db0a 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderMapper.xml @@ -1240,52 +1240,6 @@ SELECT 1 FROM dual - - - select * - from (select cml.pk_member, cml.old_level, cml.new_level, cml.upgrade_time - from cu_member_level cml - where cml.del_flag = 0 - and cml.pk_member = #{pkMember} - - and cml.upgrade_time > #{queryTime} - - and cml.new_level in (select bg.pk_id - from bd_grade bg - where bg.del_flag = 0 - and bg.pk_country = #{pkCountry} - and bg.grade_value >= #{gradeValue}) - union - select cmg.pk_member, cmg.old_level, cmg.new_level, cmg.creation_time - from cu_member_grade cmg - where cmg.del_flag = 0 - and cmg.pk_member = #{pkMember} - - and cmg.creation_time > #{queryTime} - - and cmg.new_level in (select bg.pk_id - from bd_grade bg - where bg.del_flag = 0 - and bg.pk_country = #{pkCountry} - and bg.grade_value >= #{gradeValue}) - order by upgrade_time) t - where rownum = 1 - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml index db09db9c..d222c9c7 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml @@ -35,31 +35,6 @@ and bg.grade_value >= #{gradeValue} - - - insert into cu_member_retail_region cmrr ( diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 39c6739f..bf52a76b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,7 +6,6 @@ import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.exception.ServiceException; @@ -86,8 +85,7 @@ public class ApiRetailOrderController { try { // 购物车中获取商品信息,获取等级 - BdGrade bdGrade = iSaOrderService.calculateGrade(levelParam.getSpecialArea(), convertShoppingCarToSku(SecurityUtils.getUserId(), levelParam.getShopList()), - null, levelParam.getUpgradeMember(), SecurityUtils.getSystemType(), EYesNo.NO.getIntValue()); + BdGrade bdGrade = iSaOrderService.calculateGrade(); if (null != bdGrade) { orderLevelVO.setIsEnough(true); orderLevelVO.setPkGradeVal(bdGrade.getGradeName()); @@ -153,7 +151,7 @@ public class ApiRetailOrderController { postageParam.setPkCreator(SecurityUtils.getUserId()); if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { - // 注册、升级包邮 + // 注册包邮 return AjaxResult.success(RetailOrderPostageVO.builder() .postage(BigDecimal.ZERO) .build()); @@ -205,7 +203,7 @@ public class ApiRetailOrderController { // 获取等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -249,7 +247,7 @@ public class ApiRetailOrderController { // 等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -305,7 +303,7 @@ public class ApiRetailOrderController { } /** - * 确认订单(注册、升级之外的订单) + * 确认订单(注册之外的订单) * * @param orderParam 订单入参 * @param source 数据来源 @@ -339,7 +337,7 @@ public class ApiRetailOrderController { } /** - * 支付订单(注册、升级之外的订单) + * 支付订单(注册之外的订单) * * @param payParam 支付订单入参 * @return @@ -527,38 +525,21 @@ public class ApiRetailOrderController { * 校验注册权限 * * @param orderParam 订单入参 - * @param gradeList 等级列表 * @return */ - private String checkRegistrationPermission(RetailOrderRegisterParam orderParam, List gradeList) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 校验会员等级是否大于V0,不然不能进行注册会员 + private String checkRegistrationPermission(RetailOrderRegisterParam orderParam) { CuMember creatorMember = iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData(); if (null == creatorMember) { return "当前会员不存在"; } - // 校验推荐人等级是否为V0,如果是V0不能进行注册 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(creatorMember.getPkSettleGrade())).findFirst().get(); - if (EGrade.START_UP.getValue() == memberGrade.getGradeValue()) { - return "当前会员不能注册新会员"; - } orderParam.setCreatorMember(creatorMember); orderParam.setPkParent(orderParam.getPkCreator()); if (!creatorMember.getMemberCode().equals(orderParam.getParentCode())) { - CuMember parentMember = iMemberServiceApi.getRetailMember(null, orderParam.getParentCode()).getData(); if (null == parentMember) { return "推荐编号不存在"; } -// // 校验推荐人是否大于V0,不然不能当推荐人 -// BdGrade parentGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(parentMember.getPkSettleGrade())).findFirst().get(); -// if (EGrade.START_UP.getValue() == parentGrade.getGradeValue()) { -// return orderParam.getParentCode() + " 不能做为推荐人"; -// } // 校验推荐人是否在当前会员伞下 CuMember topMember = iMemberServiceApi.getRetailTopMember(parentMember.getPkId(), null, orderParam.getPkCreator(), null).getData(); @@ -567,7 +548,6 @@ public class ApiRetailOrderController { } orderParam.setPkParent(parentMember.getPkId()); } - return null; } @@ -606,13 +586,7 @@ public class ApiRetailOrderController { if (null == buyMember) { return "购买会员编号不存在,请重试"; } - if (ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { - // 判断购买会员是否是V0,V0不允许下升级、复购以外订单 - GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); - if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { - return "当前购买会员编号不允许下单"; - } - } + // TODO 必须在精品专区购买过商品才能在五折专区处理 return null; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 91b10693..bd76d6ef 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -192,8 +192,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 注册、升级订单,计算会员等级 - BdGrade newGrade = iSaOrderService.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(), gradeList, - cuMember, orderParam.getSystemType(), orderParam.getIsPay()); + BdGrade newGrade = iSaOrderService.calculateGrade(); if (null == newGrade) { throw new ServiceException("会员不满足升级条件"); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index 447890d5..c7610bbe 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -414,17 +414,10 @@ public interface ISaOrderService extends IService { CuMemberAccountExt queryRetailOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); /** - * 计算等级(根据盒数) + * 计算等级 * - * @param specialArea 商品专区 - * @param orderItemsParams 商品明细 - * @param gradeList 等级列表(可为空) - * @param updateGradeMember 升级会员信息(升级使用) - * @param systemType 系统类型 * @return 返回 null 则为不满足升级条件 */ - BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay); + BdGrade calculateGrade(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 6fdfd766..804ec55d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -58,6 +58,7 @@ import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAreaCurrencyServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; +import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -1416,55 +1417,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Override - public BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 当前产品盒数 - BigDecimal boxNum = BigDecimal.ZERO; - + public BdGrade calculateGrade() { + GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.MEMBER.getValue(), CountryConstants.CHINA_COUNTRY).getData(); // 返回等级 - BdGrade bdGrade = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == specialArea) { - // 注册专区直接算等级 - bdGrade = this.getGradeByBox(boxNum, gradeList, null); - } - return bdGrade; + return BeanUtil.copyProperties(gradeDTO, BdGrade.class); } - /** - * 根据盒数计算等级 - * - * @param boxTotal 总盒数 - * @param gradeList 等级列表(可为空) - * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 - * @return - */ - private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - if (null == memberGrade) { - // 注册处理 - // 去掉 V4,V5 升级盒数小于购买盒数的最大一个等级为注册等级 - return gradeList.stream() - .filter(tmpGrade -> tmpGrade.getGradeValue() != EGrade.VIP.getValue() && tmpGrade.getGradeValue() != EGrade.S_VIP.getValue() && tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0) - .max(Comparator.comparingInt(BdGrade::getGradeValue)).get(); - } else { - // 非注册处理 - // 查询等级比现在当前等级大的,然后倒序排序,再查询 购买盒数 <= 等级盒数 的第一个等级,就是当前升级的等级 - Optional gradeOptional = gradeList.stream() - // new 2025.06.25 V1-V3升级多送两级,需要支持送完还能买,此处暂时注释掉 -// .filter(tmpGrade -> tmpGrade.getGradeValue() > memberGrade.getGradeValue()) - .sorted(Comparator.comparingInt(BdGrade::getGradeValue).reversed()) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(BigDecimal.ZERO) > 0) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0).findFirst(); - return gradeOptional.orElse(memberGrade); - } - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java index db0e926b..0d5b9091 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java @@ -40,8 +40,4 @@ public class AwardsServiceProvider implements IAwardsServiceApi { return R.ok(countryAwardsMap); } - @Override - public R> queryByPkCountryAwards(Integer pkCountry) { - return R.ok(iBdAwardsService.queryByPkCountryAwards(pkCountry)); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java index d8019850..16060320 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java @@ -109,11 +109,6 @@ public class GradeServiceProvider implements IGradeServiceApi { return R.ok(gradeDTOList); } - @Override - public R> queryGrowUpFootmarkGrade(Integer pkCountry) { - return R.ok(iBdGradeService.queryGrowUpFootmarkGrade(pkCountry)); - } - @Override public R> findAll() { List gradeList = iBdGradeService.list(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java index 08a0fb90..f998af64 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java @@ -65,11 +65,4 @@ public interface IBdAwardsService extends IService { **/ Integer checkGradeAwards(Long pkRegisterGrade, Long pkSettleGrade, Long pkAwards); - /** - * 根据所属国家查询奖衔 - * - * @param pkCountry - * @return - */ - List queryByPkCountryAwards(Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java index 4d81279b..3f14503e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java @@ -73,13 +73,6 @@ public interface IBdGradeService extends IService { */ List selectGradeAll(Integer pkCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - List queryGrowUpFootmarkGrade(Integer pkCountry); - /** * 获取小于等于业绩最合适的等级 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java index 18f7154a..6ca3abe6 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java @@ -126,12 +126,4 @@ public class BdAwardsServiceImpl extends ServiceImpl i return baseMapper.checkGradeAwards(pkRegisterGrade, pkSettleGrade, pkAwards); } - @Override - public List queryByPkCountryAwards(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdAwards::getPkCountry, pkCountry); - queryWrapper.eq(BdAwards::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.orderByAsc(BdAwards::getAwardsValue); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java index d0b9ef05..c0dd09fc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java @@ -66,7 +66,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdGrade::getPkCountry, pkCountry); queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); queryWrapper.orderByDesc(BdGrade::getGradeValue); return baseMapper.selectList(queryWrapper); } @@ -208,16 +207,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl return baseMapper.selectList(queryWrapper); } - @Override - public List queryGrowUpFootmarkGrade(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdGrade::getPkCountry, pkCountry); - queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); - queryWrapper.orderByAsc(BdGrade::getGradeValue); - return baseMapper.selectList(queryWrapper); - } - @Override public BdGrade getLastGrade(BigDecimal achieve, Integer pkCountry) { return baseMapper.getLastGrade(achieve, pkCountry); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 3dbcedce..095fc008 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -90,11 +90,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 等级枚举枚举 - for (EGrade value : EGrade.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 直推配置取值枚举 for (ETakeValueType value : ETakeValueType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java index 788df2e6..d46c3528 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAwards.java @@ -10,76 +10,71 @@ import lombok.Getter; @Getter public enum EAwards { - /** - * -1=海粉 - */ - SEA_FLOUR(0, -1, "海粉", 1), - /** * 0=无 */ MEMBER(1, 0, "无", 0), /** - * 黄宝 + * V1 */ HEADER(2, 5, "一级", 0), /** - * 绿宝 + * V2 */ MANAGER(3, 10, "二级", 0), /** - * 蓝宝 + * V3 */ HIGH_MANAGER(4, 15, "三级", 0), /** - * 钻石 + * V4 */ SENIOR_MANAGER(5, 20, "四级", 0), /** - * 黄钻 + * V5 */ CHIEF(6, 25, "五级", 0), /** - * 绿钻 + * V6 */ HIGH_CHIEF(7, 30, "六级", 0), /** - * 星耀蓝钻 + * V7 */ SENIOR_CHIEF(8, 35, "七级", 0), /** - * 王者红钻 + * 董事 */ CHAIRMAN(9, 40, "八级", 0), /** - * 传奇紫钻 + * 大使 */ HONOR_CHAIRMAN(10, 45, "九级", 0), - /** - * 10 + * 皇冠大使 */ GLOBAL_CHAIRMAN(11, 50, "十级", 0), + /** * 11 */ - LEVEL_ELEVEN(12, 55, "十一级", 0), + LEVEL_ELEVEN(12, 55, "十一级", 1), /** * 12 */ - LEVEL_TWELVE(13, 60, "十二级", 0), + LEVEL_TWELVE(13, 60, "十二级", 1), /** * 13 */ - LEVEL_THIRTEEN(14, 65, "十三级", 0), + LEVEL_THIRTEEN(14, 65, "十三级", 1), /** * 14 */ - LEVEL_FOURTEEN(15, 70, "十四级", 0), + LEVEL_FOURTEEN(15, 70, "十四级", 1), /** * 15 */ - LEVEL_FIFTEEN(16, 75, "十五级", 0), + LEVEL_FIFTEEN(16, 75, "十五级", 1), ; @@ -101,28 +96,4 @@ public enum EAwards { */ private final int enable; - /** - * 根据枚举值获取等级枚举值(用于级差枚举值转换) - * - * @param value - * @return - */ - public static Integer getGradeValueByValue(int value) { - if (EGrade.START_UP.getValue() == value) { - return EAwards.MEMBER.getValue(); - } else if (EGrade.HAI_FAN.getValue() == value) { - return EAwards.HEADER.getValue(); - } else if (EGrade.YOU_KE.getValue() == value) { - return EAwards.MANAGER.getValue(); - } else if (EGrade.MAKER.getValue() == value) { - return EAwards.HIGH_MANAGER.getValue(); - } else if (EGrade.VIP.getValue() == value) { - return EAwards.SENIOR_MANAGER.getValue(); - } else if (EGrade.S_VIP.getValue() == value) { - return EAwards.CHIEF.getValue(); - } - return 0; - } - - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java index e1932b49..a6110dd8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrade.java @@ -1,6 +1,5 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.constant.MemberFrameworkConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -15,45 +14,20 @@ public enum EGrade { /** * -3=虚拟 */ - VIRTUALLY(-3, 0, "虚拟", 1, EnumsPrefixConstants.ENU_CAT + 3, MemberFrameworkConstants.xuni), + VIRTUALLY(-3, 0, "虚拟", 1, MemberFrameworkConstants.xuni), /** * 1=待激活 死点 撤单 */ - DEAD_POINT(-1, 0, "待激活", 1, EnumsPrefixConstants.ENU_CAT + 1, MemberFrameworkConstants.toBeActivated), + DEAD_POINT(-1, 0, "待激活", 1, MemberFrameworkConstants.toBeActivated), /** * 2=已注销 退单 */ - LOGGED_OUT(-2, 0, "已注销", 1, EnumsPrefixConstants.ENU_CAT + 2, MemberFrameworkConstants.LOG_OFF), + LOGGED_OUT(-2, 0, "已注销", 1, MemberFrameworkConstants.LOG_OFF), /** - * 顾客 + * 会员 */ - START_UP(1, 20, "V0", 0, EnumsPrefixConstants.GRADE + "20", MemberFrameworkConstants.START_UP), - - /** - * VIP - */ - HAI_FAN(2, 30, "V1", 0, EnumsPrefixConstants.GRADE + "30", MemberFrameworkConstants.Hi_Pink), - - /** - * SVIP - */ - YOU_KE(3, 40, "V2", 0, EnumsPrefixConstants.GRADE + "40", MemberFrameworkConstants.YOU_KE), - - /** - * 卓越 - */ - MAKER(4, 50, "V3", 0, EnumsPrefixConstants.GRADE + "50", MemberFrameworkConstants.MAKER), - - /** - * 首席 - */ - VIP(5, 60, "V4", 0, EnumsPrefixConstants.GRADE + "60", MemberFrameworkConstants.VIP), - - /** - * 合伙人 - */ - S_VIP(6, 70, "V5", 0, EnumsPrefixConstants.GRADE + "70", MemberFrameworkConstants.S_VIP), + MEMBER(2, 30, "V1", 0, MemberFrameworkConstants.Hi_Pink), ; @@ -65,7 +39,6 @@ public enum EGrade { * 实际值 */ private final int value; - /** * 显示标签 */ @@ -74,11 +47,6 @@ public enum EGrade { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; - /** * 头像地址 */ @@ -93,14 +61,4 @@ public enum EGrade { return null; } - - public static String getGradeLabel(int value) { - for (EGrade eGrade : EGrade.values()) { - if (value == eGrade.value) { - return eGrade.getLabel(); - } - } - return ""; - } - } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index b76dcf34..e1d569e0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -36,13 +36,13 @@ public enum EOrderType { FICTITIOUS_ORDER(20, "虚拟订单", 1), /** - * 注册订单 + * 精品专区 */ - RETAIL_REGISTER(41, "注册订单", 0), + RETAIL_REGISTER(41, "精品专区", 0), /** - * 复购订单 + * 商城专区 */ - RETAIL_REPURCHASE(43, "复购订单", 0), + RETAIL_REPURCHASE(43, "商城专区", 0), /** * 重消订单 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index 682946ce..c1afc9e4 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -31,13 +31,13 @@ public enum ESpecialArea { LIVE_BROADCAST(14, "直播专区", 1, 14, EMenuDetail.LIVE.getValue()), /** - * 会员专区(注册) + * 精品专区 */ - RETAIL_REGISTER(41, "注册专区", 0, 41, -1), + RETAIL_REGISTER(41, "精品专区", 0, 41, -1), /** - * 复购专区 + * 商城专区 */ - RETAIL_REPURCHASE(43, "复购专区", 0, 43, -1), + RETAIL_REPURCHASE(43, "商城专区", 0, 43, -1), /** * 重消专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java deleted file mode 100644 index 39e4f7ff..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/retail/ERetailWaresPrice.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.common.core.enums.retail; - -import com.hzs.common.core.enums.EGrade; -import lombok.AllArgsConstructor; -import lombok.Getter; - -import java.math.BigDecimal; - -/** - * 新零售商品等级价格枚举 - */ -@AllArgsConstructor -@Getter -public enum ERetailWaresPrice { - - /** - * V0(20) - */ - V0(EGrade.START_UP.getValue(), new BigDecimal("399")), - /** - * V1(30) - */ - V1(EGrade.HAI_FAN.getValue(), new BigDecimal("399")), - /** - * V2(40) - */ - V2(EGrade.YOU_KE.getValue(), new BigDecimal("399")), - /** - * V3(50) - */ - V3(EGrade.MAKER.getValue(), new BigDecimal("399")), - /** - * V4(60) - */ - V4(EGrade.VIP.getValue(), new BigDecimal("399")), - /** - * V5(70) - */ - V5(EGrade.S_VIP.getValue(), new BigDecimal("399")), - - ; - - /** - * 等级值(EGrade中的value) - */ - private final int value; - - /** - * 价格 - */ - private final BigDecimal price; - - /** - * 根据枚举值获取枚举 - * - * @param value 枚举值 - * @return - */ - public static ERetailWaresPrice getEnumByValue(int value) { - for (ERetailWaresPrice eRetailWaresPrice : ERetailWaresPrice.values()) { - if (eRetailWaresPrice.value == value) { - return eRetailWaresPrice; - } - } - return V0; - } - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java index f7b011b5..9f4a9e8f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderExt.java @@ -192,19 +192,5 @@ public class SaOrderExt extends SaOrder { */ private Integer updateFlag; - /** - * 最新等级 - */ - private BdGrade newGrade; - - /** - * 需要添加的升级记录列表 - */ - private List createLevelList; - /** - * 需要删除的升级记录列表 - */ - private List deleteLevelList; - } From 1e1172b4bcafbefaf7bff976112cd5687d1d24e0 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 15:35:45 +0800 Subject: [PATCH 151/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E4=B8=8D?= =?UTF-8?q?=E7=94=A8=E7=9A=84=E5=AE=9E=E4=BD=93=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../detail/vo/CuRegionAssessDetailVO.java | 56 ------------ .../detail/vo/CuRegionAssessExcelVO.java | 87 ------------------- .../hzs/bonus/detail/vo/CuRegionAssessVO.java | 62 ------------- .../hzs/bonus/param/CuRegionAssessParam.java | 23 ----- .../bonus/risk/vo/MemberRiskControlVo.java | 19 +--- 5 files changed, 1 insertion(+), 246 deletions(-) delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java deleted file mode 100644 index ca3ce94e..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 考核区域明细 - * @author: sui q - * @time: 2025/1/16 11:32 - * @classname: CuRegionAssessDetailVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessDetailVO implements Serializable { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 考核日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessDate; - - /** - * 会员等级 - */ - private Integer pkAwards; - - /** - * 团队月消费pv - */ - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Transaction(transactionKey = EnumsPrefixConstants.ASSESS_STATUS) - private Integer assessStatus; - - private String assessStatusVal; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java deleted file mode 100644 index 73b3791c..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 导出excel - * @author: sui q - * @time: 2025/1/16 16:27 - * @classname: CuRegionAssessExcelVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessExcelVO implements Serializable { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 考核区域 省+市+县 - */ - @Excel(name = "考核区域") - private String assessAddress; - - /** - * 考核期 - */ - @Excel(name = "考核期间") - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @Excel(name = "开始日期", dateFormat = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @Excel(name = "结束日期", dateFormat = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - @Excel(name = "达标次数") - private Integer reachNum; - - /** - * 考核日期 - */ - @Excel(name = "考核日期", dateFormat = "yyyy-MM-dd") - private Date assessDate; - - /** - * 团队月消费pv - */ - @Excel(name = "团队业绩") - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - @Excel(name = "小区业绩") - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Excel(name = "考核状态", readConverterExp = "0=考核通过,1=免考通过,2=考核不通过,3=不考核") - private Integer assessStatus; - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java deleted file mode 100644 index f57b23ac..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * @description: 区域考核结果 - * @author: sui q - * @time: 2025/1/16 11:13 - * @classname: CuRegionAssessVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessVO implements Serializable { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 考核区域 省+市+县 - */ - private String assessAddress; - - /** - * 考核期 - */ - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - private Integer reachNum; - - @Transaction - private List regionAssessDetailVoList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java deleted file mode 100644 index 9ba93847..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - -/** - * 查询参数 - */ -@Data -public class CuRegionAssessParam implements Serializable { - - private Date assessDate; - - private Long pkMember; - - private Integer pkCountry; - - private String memberCode; - - private String memberName; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java index 96af2d88..bfb855a1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java @@ -1,32 +1,15 @@ -package com.hzs.bonus.risk.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/9 17:01 - * @Classname: MemberRiskControlVo - * @PackageName: com.hzs.bonus.risk.vo - */ +package com.hzs.bonus.risk.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.bonus.risk.vo - *@Author: yh - *@CreateTime: 2024-04-09 17:01 - *@Description: TODO - *@Version: 1.0 - */ @Data public class MemberRiskControlVo { - /** * 会员名称 */ From 10fbf971865d138b26e36b6ff3739f316c7fcac9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 15:42:09 +0800 Subject: [PATCH 152/362] =?UTF-8?q?##=20=E7=B3=BB=E7=BB=9F=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/ESysName.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 85c3d8a1..2e620b5b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,9 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 众康系统 + * 康健系统 */ - ZK("zk", "众康系统"), + KG("kg", "康健系统"), ; From f358766fc5e1995afedf3f142b705a19d1f31753 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 15:42:09 +0800 Subject: [PATCH 153/362] =?UTF-8?q?##=20=E7=B3=BB=E7=BB=9F=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/ESysName.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 85c3d8a1..2e620b5b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,9 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 众康系统 + * 康健系统 */ - ZK("zk", "众康系统"), + KG("kg", "康健系统"), ; From 19cbc5c7662403272e4dee0a765ab0261d45e8fc Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 9 Sep 2025 15:45:30 +0800 Subject: [PATCH 154/362] =?UTF-8?q?##=20Opt=20-=20=E6=96=B0=E7=A7=92?= =?UTF-8?q?=E7=BB=93=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 4 +- .../bonus/achieve/CuMemberTreeMapper.xml | 30 +++++---- .../achieve/ext/CuMemberRetailRangeExt.java | 61 ++++++++++++++++--- sql/2025年9月9日_新秒结表.sql | 40 ++++++++++++ 4 files changed, 110 insertions(+), 25 deletions(-) create mode 100644 sql/2025年9月9日_新秒结表.sql diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index c35f662e..aaf14a4e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -86,7 +86,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); @@ -187,7 +187,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (isSecond) { // 当天 // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); } // 会员奖衔map diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 43b607f0..73124e8f 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -461,20 +461,24 @@
- create table ${tableName} + CREATE TABLE ${tableName} ( - pk_member NUMBER(20) not null, - pk_parent NUMBER(20) not null, - pk_grade NUMBER(4) not null, - pk_awards number(4) default 10 not null, - pk_share_awards number(4) default 10 not null, - enable_status number(2) default 1 not null, - system_type NUMBER(2) default 2 not null, - new_consume_pv number(17,6) default 0 not null, - team_new_pv number(17,6) default 0 not null, - team_new_amount number(17,6) default 0 not null, - all_new_consume_pv number(17,6) default 0 not null, - all_team_new_pv number(17,6) default 0 not null + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 616232ac..7b205f47 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -77,16 +77,6 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private String countryName; - /** - * 新増业绩(不管激活,全累计) -- 秒结使用 - */ - private BigDecimal allNewConsumePv; - - /** - * 团队新増业绩(不管激活,全累计) -- 秒结使用 - */ - private BigDecimal allTeamNewPv; - /** * 团队累计消费pv(不管激活,全累计) -- 日结使用 */ @@ -96,4 +86,55 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal allTeamMonthPv; + // 秒结 start + /** + * 本日-个人所有新增金额 + */ + private BigDecimal allConsumeNewAmount; + /** + * 本日-个人所有新增业绩 + */ + private BigDecimal allConsumeNewPv; + /** + * 本日-团队所有新增金额 + */ + private BigDecimal allTeamNewAmount; + /** + * 本日-团队所有新增业绩 + */ + private BigDecimal allTeamNewPv; + /** + * 本日-个人注册(精品专区)新增金额 + */ + private BigDecimal regConsumeNewAmount; + /** + * 本日-个人注册(精品专区)新增业绩 + */ + private BigDecimal regConsumeNewPv; + /** + * 本日-团队注册(精品专区)新增金额 + */ + private BigDecimal regTeamNewAmount; + /** + * 本日-团队注册(精品专区)新增业绩 + */ + private BigDecimal regTeamNewPv; + /** + * 本日-个人复购(商城专区)新增金额 + */ + private BigDecimal repConsumeNewAmount; + /** + * 本日-个人复购(商城专区)新增业绩 + */ + private BigDecimal repConsumeNewPv; + /** + * 本日-团队复购(商城专区)新增金额 + */ + private BigDecimal repTeamNewAmount; + /** + * 本日-团队复购(商城专区)新增业绩 + */ + private BigDecimal repTeamNewPv; + // 秒结 end + } diff --git a/sql/2025年9月9日_新秒结表.sql b/sql/2025年9月9日_新秒结表.sql new file mode 100644 index 00000000..4634b426 --- /dev/null +++ b/sql/2025年9月9日_新秒结表.sql @@ -0,0 +1,40 @@ +CREATE TABLE CU_MEMBER_RETAIL_S +( + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE +); + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_MEMBER" IS '会员ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_PARENT" IS '推荐人ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_GRADE" IS '会员等级'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_AWARDS" IS '会员奖衔'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_AMOUNT" IS '本日-个人所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_PV" IS '本日-个人所有新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_AMOUNT" IS '本日-团队所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_PV" IS '本日-团队所有新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_AMOUNT" IS '本日-个人注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_PV" IS '本日-个人注册(精品专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_AMOUNT" IS '本日-团队注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_PV" IS '本日-团队注册(精品专区)新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_AMOUNT" IS '本日-个人复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_PV" IS '本日-个人复购(商城专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_AMOUNT" IS '本日-团队复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_PV" IS '本日-团队复购(商城专区)新增业绩'; + +COMMENT ON TABLE "CU_MEMBER_RETAIL_S" IS '秒结表'; From 6183f775c0a552451f08633afa5fc72dee78685d Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 9 Sep 2025 15:45:30 +0800 Subject: [PATCH 155/362] =?UTF-8?q?##=20Opt=20-=20=E6=96=B0=E7=A7=92?= =?UTF-8?q?=E7=BB=93=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 4 +- .../bonus/achieve/CuMemberTreeMapper.xml | 30 +++++---- .../achieve/ext/CuMemberRetailRangeExt.java | 61 ++++++++++++++++--- sql/2025年9月9日_新秒结表.sql | 40 ++++++++++++ 4 files changed, 110 insertions(+), 25 deletions(-) create mode 100644 sql/2025年9月9日_新秒结表.sql diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index c35f662e..aaf14a4e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -86,7 +86,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); @@ -187,7 +187,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (isSecond) { // 当天 // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); } // 会员奖衔map diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 43b607f0..73124e8f 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -461,20 +461,24 @@ - create table ${tableName} + CREATE TABLE ${tableName} ( - pk_member NUMBER(20) not null, - pk_parent NUMBER(20) not null, - pk_grade NUMBER(4) not null, - pk_awards number(4) default 10 not null, - pk_share_awards number(4) default 10 not null, - enable_status number(2) default 1 not null, - system_type NUMBER(2) default 2 not null, - new_consume_pv number(17,6) default 0 not null, - team_new_pv number(17,6) default 0 not null, - team_new_amount number(17,6) default 0 not null, - all_new_consume_pv number(17,6) default 0 not null, - all_team_new_pv number(17,6) default 0 not null + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 616232ac..7b205f47 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -77,16 +77,6 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private String countryName; - /** - * 新増业绩(不管激活,全累计) -- 秒结使用 - */ - private BigDecimal allNewConsumePv; - - /** - * 团队新増业绩(不管激活,全累计) -- 秒结使用 - */ - private BigDecimal allTeamNewPv; - /** * 团队累计消费pv(不管激活,全累计) -- 日结使用 */ @@ -96,4 +86,55 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal allTeamMonthPv; + // 秒结 start + /** + * 本日-个人所有新增金额 + */ + private BigDecimal allConsumeNewAmount; + /** + * 本日-个人所有新增业绩 + */ + private BigDecimal allConsumeNewPv; + /** + * 本日-团队所有新增金额 + */ + private BigDecimal allTeamNewAmount; + /** + * 本日-团队所有新增业绩 + */ + private BigDecimal allTeamNewPv; + /** + * 本日-个人注册(精品专区)新增金额 + */ + private BigDecimal regConsumeNewAmount; + /** + * 本日-个人注册(精品专区)新增业绩 + */ + private BigDecimal regConsumeNewPv; + /** + * 本日-团队注册(精品专区)新增金额 + */ + private BigDecimal regTeamNewAmount; + /** + * 本日-团队注册(精品专区)新增业绩 + */ + private BigDecimal regTeamNewPv; + /** + * 本日-个人复购(商城专区)新增金额 + */ + private BigDecimal repConsumeNewAmount; + /** + * 本日-个人复购(商城专区)新增业绩 + */ + private BigDecimal repConsumeNewPv; + /** + * 本日-团队复购(商城专区)新增金额 + */ + private BigDecimal repTeamNewAmount; + /** + * 本日-团队复购(商城专区)新增业绩 + */ + private BigDecimal repTeamNewPv; + // 秒结 end + } diff --git a/sql/2025年9月9日_新秒结表.sql b/sql/2025年9月9日_新秒结表.sql new file mode 100644 index 00000000..4634b426 --- /dev/null +++ b/sql/2025年9月9日_新秒结表.sql @@ -0,0 +1,40 @@ +CREATE TABLE CU_MEMBER_RETAIL_S +( + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE +); + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_MEMBER" IS '会员ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_PARENT" IS '推荐人ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_GRADE" IS '会员等级'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_AWARDS" IS '会员奖衔'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_AMOUNT" IS '本日-个人所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_PV" IS '本日-个人所有新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_AMOUNT" IS '本日-团队所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_PV" IS '本日-团队所有新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_AMOUNT" IS '本日-个人注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_PV" IS '本日-个人注册(精品专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_AMOUNT" IS '本日-团队注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_PV" IS '本日-团队注册(精品专区)新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_AMOUNT" IS '本日-个人复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_PV" IS '本日-个人复购(商城专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_AMOUNT" IS '本日-团队复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_PV" IS '本日-团队复购(商城专区)新增业绩'; + +COMMENT ON TABLE "CU_MEMBER_RETAIL_S" IS '秒结表'; From 24967d0b8bbc1e76077cd42363e7ea6af16acb25 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 9 Sep 2025 17:00:12 +0800 Subject: [PATCH 156/362] =?UTF-8?q?##=20=E8=B0=83=E6=8D=A2=E8=B4=A7?= =?UTF-8?q?=E7=89=A9=E5=92=8C=E4=B8=9A=E7=BB=A9=E6=B1=87=E6=80=BB=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=9C=80=E6=96=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberServiceImpl.java | 8 +++- .../census/param/CensusSummaryParam.java | 4 ++ .../mapper/member/base/CuMemberMapper.xml | 4 +- .../impl/OrderBusinessServiceImpl.java | 47 +++++-------------- .../constant/msg/SaOrderMsgConstants.java | 4 ++ 5 files changed, 29 insertions(+), 38 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 16c5a8e1..1302b52f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3196,7 +3196,13 @@ public class CuMemberServiceImpl extends ServiceImpl i // 根据类型查询所有人各类型的订单业绩汇总 List censusSummaryList = new ArrayList<>(); for (String day : days) { - censusSummaryParam.setTime(day); + censusSummaryParam.setTime(day);// 将体系转换成集合类型 + if (censusSummaryParam.getPkBdVertexStr() != null) { + censusSummaryParam.setPkBdVertexStrList(Arrays.stream(censusSummaryParam.getPkBdVertexStr().split(",")) + .map(Integer::valueOf) + .collect(Collectors.toList())); + } + List memberMeritsSummaryVoList = baseMapper.queryDateBySummary(censusSummaryParam); Map memberMeritsSummaryMap = memberMeritsSummaryVoList.stream().collect(Collectors.toMap(MemberMeritsSummaryVo::getOrderType, Function.identity())); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java index d5073e16..64916347 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java @@ -51,5 +51,9 @@ public class CensusSummaryParam { * 体系 */ private String pkBdVertexStr; + /** + * 体系集合 + */ + private List pkBdVertexStrList; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index f257100c..fd5d09fd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2368,9 +2368,9 @@ and sa.del_flag = 0 and to_char(sa.pay_time, 'yyyy-mm-dd') = #{time} and sa.pk_country = #{pkCountry} - + and cm.pk_vertex in - + #{item} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index 8ca11306..51f39589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -573,12 +573,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 操作日志内容 @@ -644,16 +644,14 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return "订单已经发货,不能进行调换货物"; } - // 是否扣款 - boolean orderCostFlag = false; + // 修改前的订单金额 + 邮费 BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 + // 校验订单原订单价格和调换完货之后的价格不相同不进行换货 if (beforeAmount.compareTo(afterAmount) != 0) { - // 修改前后金额不相同则进行处理 - orderCostFlag = true; + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -662,13 +660,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { changeIdList, noChangeIdList, userId, pkCountry, nowDate); - if (orderCostFlag) { - // 订单调换货物扣费处理 - R resultR = iMemberAccountServiceApi.orderChangeProduct(saOrder, updateOrder, userId, dto); - if (!resultR.isSuccess()) { - throw new BaseException(resultR.getMsg()); - } - } else if (null != dto) { + if (null != dto) { // 订单总价未变化,但是需要手续费 R resultR = iMemberAccountServiceApi.orderChangeProduct(null, null, userId, dto); if (!resultR.isSuccess()) { @@ -701,12 +693,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单收货地址信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 涉及会员ID列表 @@ -751,24 +743,9 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 - if (beforeAmount.compareTo(afterAmount) < 0) { - // 存在差额 - // 封装订单数据 - SaOrder updateOrder = BeanUtil.copyProperties(saOrder, SaOrder.class); - updateOrder.setPkId(saOrder.getPkId()); - updateOrder.setOrderAmount(afterData.getOrderAmount()); - updateOrder.setOrderAchieve(afterData.getOrderAchieve()); - updateOrder.setOrderAssAchieve(afterData.getOrderAssAchieve()); - updateOrder.setPostage(param.getPostage()); - updateOrder.setPkModified(userId); - updateOrder.setModifiedTime(nowDate); - - // 校验订单支付金额是否足够 - R resultR = iMemberAccountServiceApi.orderChangeProductPre(saOrder, updateOrder); - if (!resultR.isSuccess()) { - return resultR.getMsg(); - } + //校验订单原订单价格和调换完货之后的价格不相同不进行换货 + if (beforeAmount.compareTo(afterAmount) != 0) { + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -782,7 +759,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } return submitStr; } - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED); + return CommonMsgConstants.OPERATION_FAILED; } @Transactional(rollbackFor = Exception.class) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java index a380a975..cb607c19 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java @@ -172,5 +172,9 @@ public class SaOrderMsgConstants { * 商品预售数量不足 */ public static final String WARES_PRE_SALE_QUANTITY_LACK = "商品预售数量不足"; + /** + * 原订单价格和调换完货之后的价格不相同 -- 不允许货物调换 + */ + public static final String PRODUCT_CONFIRM_PRICE = "原订单价格和调换完货之后的价格不相同"; } From d0a36691ec610fbe6e3a39ada9b36cc83068bcaf Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 17:24:01 +0800 Subject: [PATCH 157/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E5=8E=9F?= =?UTF-8?q?=E5=A4=8D=E8=B4=AD=E7=BA=A7=E5=B7=AE=EF=BC=9B=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E6=97=A5=E7=BB=93=E6=98=8E=E7=BB=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 11 ++ .../achieve/mapper/CuMemberTreeMapper.java | 10 -- .../service/ICuMemberRetailDetailService.java | 11 ++ .../achieve/service/ICuMemberTreeService.java | 5 - .../impl/CuMemberAchieveServiceImpl.java | 18 +- .../impl/CuMemberRetailDetailServiceImpl.java | 15 ++ .../service/impl/CuMemberTreeServiceImpl.java | 16 +- .../service/impl/BonusSettleRangeHandle.java | 6 - .../impl/CuMemberAwardsServiceImpl.java | 6 - .../bonus/order/mapper/BonusOrderMapper.java | 8 - .../order/service/IBonusOrderService.java | 8 - .../service/impl/BonusOrderServiceImpl.java | 22 --- .../achieve/CuMemberRetailDetailMapper.xml | 6 + .../achieve/CuMemberRetailRangeMapper.xml | 66 ++----- .../bonus/achieve/CuMemberTreeMapper.xml | 42 ++--- .../mapper/bonus/order/BonusOrderMapper.xml | 68 -------- .../achieve/CuMemberRetailRangeMapper.xml | 4 +- .../core/constant/TableNameConstants.java | 5 - .../member/achieve/CuMemberRetailDetail.java | 163 ++++++++++++++++++ .../member/achieve/CuMemberRetailRange.java | 12 -- .../achieve/ext/CuMemberRetailRangeExt.java | 5 - .../domain/sale/ext/SaOrderItemsExt.java | 7 - .../domain/sale/wares/ext/WaresRangeTmp.java | 23 --- .../src/test/java/com/CodeGenerator.java | 6 +- 24 files changed, 251 insertions(+), 292 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java create mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java new file mode 100644 index 00000000..7f09bf4d --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.achieve.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; + +/** + * 日结算阶段表 Mapper 接口 + */ +public interface CuMemberRetailDetailMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 460ac6f8..0483be60 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -111,16 +111,6 @@ public interface CuMemberTreeMapper extends BaseMapper { void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate, @Param("awardType") Integer awardType); - /** - * 初始化期间奖衔 - */ - void updateCuMemberRetailRangeInitAward(@Param("rangeTableName") String rangeTableName); - - /** - * 初始化期间V5奖衔 - */ - void updateCuMemberRetailRangeInitV5Award(@Param("rangeTableName") String rangeTableName); - /** * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java new file mode 100644 index 00000000..d849d643 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.achieve.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; + +/** + * 日结算阶段表 服务类 + */ +public interface ICuMemberRetailDetailService extends IService { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java index f0a75a87..0e1ae3fd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java @@ -49,11 +49,6 @@ public interface ICuMemberTreeService extends IService { **/ void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate); - /** - * 初始化期间奖衔 - */ - void updateCuMemberRetailRangeInitAward(String rangeTableName); - /** * 删除日表数据 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java index f549ae10..3c118301 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -99,15 +99,15 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl 0; i--) { - String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); - int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; - baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); - } +// String payTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, saOrder.getPayTime()); +// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(payTime).getPkId(); +// String sourceTable = TableNameConstants.CU_MEMBER_TREE + DateUtils.getMonth(payTime); +// for (int i = 7; i > 0; i--) { +// String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); +// int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); +// String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; +// baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); +// } return Boolean.TRUE; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java new file mode 100644 index 00000000..952b95c0 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -0,0 +1,15 @@ +package com.hzs.bonus.achieve.service.impl; + +import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import org.springframework.stereotype.Service; + +/** + * 日结算阶段表 服务实现类 + */ +@Service +public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index 0c2ef6e4..b4dddc1f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -38,11 +38,11 @@ public class CuMemberTreeServiceImpl extends ServiceImpl 0) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(repurchaseOrderList)) { - rangeOrderMap = iBonusOrderService.getWaresRange(repurchaseOrderList); - } - // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index e371188e..2656cf5b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -39,12 +39,6 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl orderType); - /** - * 查询订单商品级差数据 - * - * @param orderList 订单列表 - * @return - */ - List listOrderWaresRange(@Param("orderList") List orderList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index fac56c07..e1d60639 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -32,12 +32,4 @@ public interface IBonusOrderService { */ List listSaOrderByTime(Date startDate, Date endDate, List orderType); - /** - * 查询商品级差数据 - * - * @param orderList - * @return - */ - Map> getWaresRange(List orderList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index e08db6ba..b48d0481 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -41,26 +41,4 @@ public class BonusOrderServiceImpl implements IBonusOrderService { return bonusOrderMapper.listSaOrderByTime(startDate, endDate, orderType); } - @Override - public Map> getWaresRange(List orderList) { - Map> resultMap = new HashMap<>(); - - List resultList = new ArrayList<>(); - List> handleCutList = cuMemberBonusSettle.handleCutList(orderList, MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - resultList.addAll(bonusOrderMapper.listOrderWaresRange(orderList)); - }); - for (SaOrderItemsExt saOrderItemsExt : resultList) { - if (resultMap.containsKey(saOrderItemsExt.getPkOrder())) { - resultMap.get(saOrderItemsExt.getPkOrder()).add(saOrderItemsExt); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(saOrderItemsExt); - resultMap.put(saOrderItemsExt.getPkOrder(), tmpList); - } - } - - return resultMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml new file mode 100644 index 00000000..330b4b37 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index ca9ccfcb..2febe044 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -38,7 +38,6 @@ - @@ -50,12 +49,10 @@ - - @@ -76,12 +73,8 @@ team_num = 0, enable_status = 1, pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20), - region_address = 0, big_team_pv = 0, - small_team_pv = 0, - all_team_new_pv = 0, - all_team_consume_pv = 0, - all_team_month_pv = 0 + small_team_pv = 0 @@ -92,8 +85,7 @@ team_new_pv, team_consume_pv, team_month_pv, team_new_amount, team_consume_amount, team_month_amount, recommend_num, team_num, - big_team_pv, small_team_pv, - all_team_new_pv, all_team_consume_pv, all_team_month_pv + big_team_pv, small_team_pv from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -105,14 +97,11 @@ a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.pk_grade = b.pk_grade, a.enable_status = b.enable_status, - a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, - a.all_team_new_pv = b.all_team_new_pv, - a.all_team_consume_pv = b.all_team_consume_pv + a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv ,a.month_consume_pv = b.month_consume_pv ,a.team_month_pv = b.team_month_pv ,a.team_month_amount = b.team_month_amount - ,a.all_team_month_pv = b.all_team_month_pv @@ -124,10 +113,7 @@ #{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv, #{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv, #{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount, - #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status, - #{item.allTeamNewPv} all_team_new_pv, - #{item.allTeamConsumePv} all_team_consume_pv, - #{item.allTeamMonthPv} all_team_month_pv + #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status from dual
) b @@ -137,10 +123,7 @@ a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv, a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv, a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount, - a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status, - a.all_team_new_pv = b.all_team_new_pv, - a.all_team_consume_pv = b.all_team_consume_pv, - a.all_team_month_pv = b.all_team_month_pv + a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status @@ -204,9 +187,7 @@ #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newConsumePv} new_consume_pv, #{item.teamNewPv} team_new_pv, - #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status, - #{item.allNewConsumePv} all_new_consume_pv, - #{item.allTeamNewPv} all_team_new_pv + #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status from dual
) b @@ -216,9 +197,7 @@ a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, a.new_consume_pv = b.new_consume_pv, a.team_new_pv = b.team_new_pv, - a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status, - a.all_new_consume_pv = b.all_new_consume_pv, - a.all_team_new_pv = b.all_team_new_pv + a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status @@ -277,14 +256,10 @@ bwa.awards_value share_awards_value, a.big_team_pv, a.small_team_pv, - a.all_team_new_pv, - a.all_team_consume_pv, - a.all_team_month_pv, bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - br.name country_name, a.pk_vertex, bv.region_vertex_pk_id from ( @@ -298,8 +273,6 @@ on bw.pk_id = a.pk_awards left join bd_awards bwa on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 - left join bd_area br - on br.pk_id = a.region_address and br.del_flag = 0 left join bd_vertex bv on bv.pk_id = a.pk_vertex where ba.del_flag = 0 and bw.del_flag = 0 @@ -327,8 +300,6 @@ a.big_team_pv, a.small_team_pv, a.system_type, - a.all_team_consume_pv, - a.all_team_month_pv, new_consume_pv, consume_pv, month_consume_pv, @@ -348,8 +319,7 @@ bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, - bw.benefit_share_ratio, - br.name country_name + bw.benefit_share_ratio from ${tableName} a inner join bd_grade ba on a.pk_grade = ba.pk_id @@ -357,8 +327,6 @@ on bw.pk_id = a.pk_awards and bw.del_flag = 0 inner join bd_awards bws on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 - left join bd_area br - on br.pk_id = a.region_address and br.del_flag = 0 where ba.del_flag = 0 and a.pk_parent = #{pkParent} @@ -391,10 +359,6 @@ nvl(b.big_team_pv, 0) big_team_pv, nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - a.all_new_consume_pv, - a.all_team_new_pv, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, - nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv, bg.grade_value, bg.grade_name, bw.awards_value, @@ -404,8 +368,6 @@ bw.benefit_avg_ratio, bw.benefit_share_ratio, bws.awards_value share_awards_value, - br.name country_name, - cr.county region_address, bv.region_vertex_pk_id from ( select * @@ -422,10 +384,6 @@ on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 inner join bd_grade bg on bg.pk_id = a.pk_grade - left join cu_member_retail_region cr - on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 - left join bd_area br - on br.pk_id = cr.county and br.del_flag = 0 left join bd_vertex bv on bv.pk_id = cm.pk_vertex inner join bd_currency bt @@ -437,9 +395,7 @@ select cm.pk_id pk_member, cm.pk_parent, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, - nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, - nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv + nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv from cu_member cm left join ${secondTableName} a on cm.pk_id = a.pk_member @@ -462,9 +418,7 @@ team_consume_amount, team_month_amount, big_team_pv, - small_team_pv, - all_team_consume_pv, - all_team_month_pv + small_team_pv from ${tableName} where pk_parent = #{pkParent} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 73124e8f..c6a47f7e 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -330,7 +330,7 @@ customer_type, phone, pk_grade, pk_awards, account_status, pay_status, category, purchase_status, income_status, pk_team_code, pk_center_code, pk_vertex, pk_settle_country, is_real_name, - pk_country, pk_rate, pay_time, region_address, system_type, enable_status) + pk_country, pk_rate, pay_time, system_type, enable_status) select cm.pk_id, pk_parent, member_code, @@ -352,7 +352,6 @@ cm.pk_country, nvl(bc.pk_id, -1) pk_rate, cm.pay_time, - nvl(cr.county, 0) country, cm.system_type, cm.is_activate from cu_member cm @@ -365,8 +364,6 @@ and effective_date <= sysdate group by pk_country) bc on cm.pk_settle_country = bc.pk_country - left join cu_member_retail_region cr - on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 where cm.del_flag = 0 @@ -441,25 +438,6 @@ - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 0), - pk_share_awards = (select pk_id from bd_awards where awards_value = 0) - - - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 5), - pk_share_awards = (select pk_id from bd_awards where awards_value = 5) - where pk_grade = ( - select pk_id - from bd_grade - where grade_value = 70 and del_flag = 0 - ) - - CREATE TABLE ${tableName} ( @@ -512,20 +490,30 @@ new_consume_pv number(17,6) default 0 not null, consume_pv number(17,6) default 0 not null, month_consume_pv number(17,6) default 0 not null, + new_consume_amount number(17,6) default 0 not null, + consume_amount number(17,6) default 0 not null, + month_consume_amount number(17,6) default 0 not null, + team_new_pv number(17,6) default 0 not null, team_consume_pv number(17,6) default 0 not null, team_month_pv number(17,6) default 0 not null, team_new_amount number(17,6) default 0 not null, team_consume_amount number(17,6) default 0 not null, team_month_amount number(17,6) default 0 not null, + recommend_num number(8) default 0 not null, team_num number(8) default 0 not null, - region_address number(8) default 0 not null, big_team_pv number(17,6) default 0 not null, small_team_pv number(17,6) default 0 not null, - all_team_new_pv number(17,6) default 0 not null, - all_team_consume_pv number(17,6) default 0 not null, - all_team_month_pv number(17,6) default 0 not null + + reg_consume_new_amount number(17,6) default 0 not null, + reg_consume_new_pv number(17,6) default 0 not null, + reg_team_new_amount number(17,6) default 0 not null, + reg_team_new_pv number(17,6) default 0 not null, + rep_consume_new_amount number(17,6) default 0 not null, + rep_consume_new_pv number(17,6) default 0 not null, + rep_team_new_amount number(17,6) default 0 not null, + rep_team_new_pv number(17,6) default 0 not null ) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 30cffac9..9f270851 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -328,72 +328,4 @@ and #{endDate} > so.pay_time - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index 26167ec1..94b2e756 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -483,8 +483,8 @@ currentMonth.ENABLE_STATUS, NVL( NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) todayPv, NVL( NVL( currentMonth.NEW_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_NEW_PV, 0 ), 0 ) yesterdayPv, - NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, - NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv + NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, + NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.TEAM_MONTH_PV, 0 ) lastMonthPv FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java index 362a5a3f..59771dc9 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java @@ -30,11 +30,6 @@ public class TableNameConstants { */ public static final String CU_MEMBER_SETTLE = "cu_member_settle"; - /** - * 会员级差计算表 - */ - public static final String CU_MEMBER_RANGE = "CU_MEMBER_RANGE"; - /** * 会员级差计算表 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java new file mode 100644 index 00000000..eb417641 --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -0,0 +1,163 @@ +package com.hzs.common.domain.member.achieve; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 日结算阶段表 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") +@TableName("CU_MEMBER_RETAIL_DETAIL") +public class CuMemberRetailDetail extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @TableId("PK_ID") + private Long pkId; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 会员子节点 + */ + @TableField("CHILD_NODE") + private Integer childNode; + + /** + * 推荐人 + */ + @TableField("PK_PARENT") + private Long pkParent; + + /** + * 三个阶段(1、2、3) + */ + @TableField("STAGE") + private Integer stage; + + /** + * 阶段状态(0=已完成,1=未完成) + */ + @TableField("STAGE_STATUS") + private Integer stageStatus; + + /** + * 阶段完成时间 + */ + @TableField("STAGE_DATE") + private Date stageDate; + + /** + * 点位1-1 + */ + @TableField("POINT_11") + private Long point11; + + /** + * 点位1-2 + */ + @TableField("POINT_12") + private Long point12; + + /** + * 点位2-1 + */ + @TableField("POINT_21") + private Long point21; + + /** + * 点位2-2 + */ + @TableField("POINT_22") + private Long point22; + + /** + * 点位2-3 + */ + @TableField("POINT_23") + private Long point23; + + /** + * 点位2-4 + */ + @TableField("POINT_24") + private Long point24; + + /** + * 点位3-1 + */ + @TableField("POINT_31") + private Long point31; + + /** + * 点位3-2 + */ + @TableField("POINT_32") + private Long point32; + + /** + * 点位3-3 + */ + @TableField("POINT_33") + private Long point33; + + /** + * 点位3-4 + */ + @TableField("POINT_34") + private Long point34; + + /** + * 点位3-5 + */ + @TableField("POINT_35") + private Long point35; + + /** + * 点位3-6 + */ + @TableField("POINT_36") + private Long point36; + + /** + * 点位3-7 + */ + @TableField("POINT_37") + private Long point37; + + /** + * 点位3-8 + */ + @TableField("POINT_38") + private Long point38; + + /** + * 点位类型(0=普通,1=赠送点位) + */ + @TableField("POINT_TYPE") + private Integer pointType; + + /** + * 赠点数量(三阶段走完赠送几个点位) + */ + @TableField("POINT_GIFT") + private Integer pointGift; + + +} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index 502dbcb8..6674ed4e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -107,12 +107,6 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("PK_RATE") private Integer pkRate; - /** - * 系统类型(2=新零售) - */ - @TableField("SYSTEM_TYPE") - private Integer systemType; - /** * 本人当天新消费pv */ @@ -173,12 +167,6 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("TEAM_NUM") private Integer teamNum; - /** - * 县级区域地址 - */ - @TableField("REGION_ADDRESS") - private Integer regionAddress; - @TableField("big_team_pv") private BigDecimal bigTeamPv; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 7b205f47..521ef441 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -72,11 +72,6 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal coachRatio; - /** - * 县级名称 - */ - private String countryName; - /** * 团队累计消费pv(不管激活,全累计) -- 日结使用 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java index 6bc02d02..9b37d21b 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java @@ -3,13 +3,11 @@ package com.hzs.common.domain.sale.ext; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.hzs.common.domain.sale.order.SaOrderItems; -import com.hzs.common.domain.sale.wares.ext.WaresRangeTmp; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; import java.util.Date; -import java.util.List; /** * 订单详情扩展 @@ -179,9 +177,4 @@ public class SaOrderItemsExt extends SaOrderItems { */ private BigDecimal supplyPrice; - /** - * 极差数据 - */ - private List waresRangeTmpList; - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java deleted file mode 100644 index 07ffb509..00000000 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.common.domain.sale.wares.ext; - -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 极差明细临时实体 - */ -@Data -public class WaresRangeTmp { - - /** - * 价格 - */ - private BigDecimal rangePrice; - - /** - * 级别值 - */ - private Integer rangeValue; - -} diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index 085d10fd..5aae5688 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"BD_VERTEX_SYSTEM"}; + String[] tables = {"CU_MEMBER_RETAIL_DETAIL"}; // 生成实体是否继承统一父类 boolean superBool = true; @@ -50,8 +50,8 @@ public class CodeGenerator { // dsc.setSchemaName("public"); dataSourceConfig.setUrl("jdbc:oracle:thin:@101.201.51.180:1521/orcl") .setDriverName("oracle.jdbc.driver.OracleDriver") - .setUsername("retail") - .setPassword("pwRetailTest180") + .setUsername("cloud_zk") + .setPassword("pwCloudzk180") .setDbType(DbType.ORACLE); mpg.setDataSource(dataSourceConfig); From 5c2b8e656220ce8e909abd17cb2aeaba121098ea Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 16 Sep 2025 17:07:19 +0800 Subject: [PATCH 158/362] =?UTF-8?q?##=20Opt=20-=20=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E6=B3=A8=E5=86=8C=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/IMemberServiceApi.java | 32 ++- .../com/hzs/member/base/dto/LoginMember.java | 6 + .../mapper/CuMemberRetailRangeMapper.java | 26 +++ .../service/ICuMemberRetailRangeService.java | 10 + .../impl/CuMemberRetailRangeServiceImpl.java | 19 ++ .../bonus/service/IBonusSettleService.java | 6 + .../service/impl/BonusSettleServiceImpl.java | 33 +++ .../bonus/listener/SaOrderSecondListener.java | 4 +- .../achieve/CuMemberRetailRangeMapper.xml | 44 ++++ .../controller/api/ApiMemberController.java | 61 ++++++ .../member/base/mapper/CuMemberMapper.java | 8 + .../base/provider/MemberServiceProvider.java | 39 ++++ .../service/ICuMemberRegisterService.java | 7 + .../member/base/service/ICuMemberService.java | 20 +- .../base/service/ICuMemberShareService.java | 7 +- .../impl/CuMemberRegisterServiceImpl.java | 10 + .../service/impl/CuMemberServiceImpl.java | 34 +++ .../impl/CuMemberShareServiceImpl.java | 7 + .../login/service/IMemberLoginService.java | 9 + .../service/impl/MemberLoginServiceImpl.java | 30 +++ .../controller/api/ApiShareController.java | 26 +++ .../RetailMemberTokenController.java | 78 ++++++- .../mapper/member/base/CuMemberMapper.xml | 15 ++ .../api/ApiRetailOrderController.java | 127 +++++++++++ .../service/impl/RetailOrderServiceImpl.java | 24 ++- .../retail/sale/param/RetailOrderParam.java | 4 + .../sale/param/RetailOrderRegisterParam.java | 10 +- .../com/hzs/retail/sale/vo/RetailOrderVO.java | 6 + .../api/ApiRetailWaresController.java | 157 +++++++++++++- .../retail/wares/param/WaresShareParam.java | 31 +++ .../order/param/FansConfirmOrderParam.java | 68 ++++++ .../order/param/FansConfirmOrderSkuParam.java | 21 ++ .../param/FansConfirmOrderWaresParam.java | 28 +++ .../controller/api/ApiBdWaresController.java | 129 ++++++++++++ .../hzs/sale/wares/mapper/BdWaresMapper.java | 13 ++ .../wares/mapper/BdWaresSpecsSkuMapper.java | 8 + .../sale/wares/service/IBdWaresService.java | 10 + .../service/IBdWaresSpecsSkuService.java | 9 + .../service/impl/BdWaresServiceImpl.java | 5 + .../impl/BdWaresSpecsSkuServiceImpl.java | 11 + .../mapper/sale/wares/BdWaresMapper.xml | 31 +++ .../sale/wares/BdWaresSpecsSkuMapper.xml | 19 ++ .../com/hzs/common/core/config/BdConfig.java | 71 +++---- .../common/core/constant/SysConstants.java | 5 + .../common/core/enums/EOrderTypeExtend.java | 38 ++++ .../com/hzs/common/core/enums/EShareType.java | 5 + .../security/service/MemberTokenService.java | 26 ++- bd-gateway/src/main/resources/bootstrap.yml | 6 + .../manage/OnlinePaymentController.java | 16 ++ .../pay/jdpay/dto/JdPayQueryOrderRequest.java | 27 +++ .../jdpay/dto/JdPayQueryOrderResponse.java | 197 ++++++++++++++++++ .../com/hzs/third/pay/jdpay/sdk/JdPay.java | 6 +- .../pay/jdpay/sdk/JdPayHttpClientProxy.java | 4 +- .../hzs/third/pay/service/IJdPayService.java | 9 + .../pay/service/impl/JdPayServiceImpl.java | 108 +++++++++- .../pay/service/impl/PayServiceImpl.java | 11 +- .../impl/TOnlinePaymentServiceImpl.java | 3 + .../com/hzs/third/pay/vo/OnlinePaymentVO.java | 2 +- .../service/impl/TShareCodeServiceImpl.java | 1 + 59 files changed, 1700 insertions(+), 77 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java create mode 100644 bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java create mode 100644 bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index 8c1b5711..f7e3544f 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -2,6 +2,8 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRegister; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -29,6 +31,14 @@ public interface IMemberServiceApi { */ R getMemberInfo(String memberCode); + /** + * 通过会员编码查询分享会员信息 + * + * @param memberCode 会员编号 + * @return + */ + R getShareMemberInfo(String memberCode); + /** * 根据会员ID获取会员信息(查库) * @@ -87,7 +97,6 @@ public interface IMemberServiceApi { * 撤销会员账户余额 **/ R cancelMemberAccount(Long pkMember, SaOrder saOrder); - /** * 查找安置人伞下 * @@ -163,6 +172,13 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember, SaOrderExt saOrder, Boolean isPay, CuMemberAccountExt cuMemberAccountExt); + /** + * 处理新会员,生成主键,跟会员编号 + * + * @param cuMember 会员 + */ + R createMemberIdAndCode(CuMember cuMember); + /** * 创建注册会员编号(放入会员编号批次占用) * @@ -204,6 +220,13 @@ public interface IMemberServiceApi { */ R> findMemberByMemberId(List pkMemberList, Integer pkCountry); + /** + * 根据会员主键查询会员注册信息 + * + * @param pkMember 会员主键 + */ + R queryCuMemberRegister(Long pkMember); + /* * 会员编号,账户类型,抽奖金额 **/ @@ -363,4 +386,11 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); + + /** + * 查询分享会员 + * + * @param pkMember 主键 + */ + R queryCuMemberShare(Long pkMember); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java index f1704da2..af3cb740 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java @@ -1,6 +1,7 @@ package com.hzs.member.base.dto; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberExt; import lombok.AllArgsConstructor; import lombok.Builder; @@ -63,6 +64,11 @@ public class LoginMember implements Serializable { */ private CuMemberExt cuMember; + /** + * 分享会员信息(分享注册会员使用) + */ + private CuMemberShare cuMemberShare; + /** * 结算国家(此字段实体不存值,只做部分业务传递参数使用) */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 79942ade..a5ae5617 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -3,6 +3,9 @@ package com.hzs.bonus.achieve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.sale.ext.SaOrderExt; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; @@ -82,4 +85,27 @@ public interface CuMemberRetailRangeMapper extends BaseMapper cuMemberRangeExtList); + /** + * 向上查找所有parentID + * @param pkMember + * @return + */ + List findParentMemberList(@Param("pkMember") Long pkMember); + + + /** + * 更新自己秒结 + * @param tableName + * @param orderExt + * @param cuMember + */ + void updateMemberRetailSecondRangeSelf(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("cuMember") CuMember cuMember, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + /** + * 更新上级秒结 + * @param tableName + * @param orderExt + * @param memberList + */ + void updateMemberRetailSecondRangeParent(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("memberList") List memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index ceec0067..83e54bc3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -3,7 +3,10 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.Date; @@ -70,4 +73,11 @@ public interface ICuMemberRetailRangeService extends IService cuMemberTreeMap); + + List findParentMemberList(Long pkMember); + + void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember pkMember, Integer updateType, String symbol); + + void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 5746913c..811c89f1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -97,6 +101,21 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberSecondRange(secondTableName, list)); } + @Override + public List findParentMemberList(Long pkMember) { + return baseMapper.findParentMemberList(pkMember); + } + + @Override + public void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember cuMember, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeSelf(settleTableName, orderExt, cuMember, updateType, symbol); + } + + @Override + public void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeParent(settleTableName, orderExt, pkMemberList, updateType, symbol); + } + private List> setUpdCuMemberTreeLists(Map cuMemberTreeMap) { List cuMemberTreeList = new ArrayList<>(); cuMemberTreeMap.forEach((key, value) -> cuMemberTreeList.add(value)); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java index 1c436461..89ab7099 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java @@ -22,4 +22,10 @@ public interface IBonusSettleService { */ void calculateCuMemberRetailRangeBonusBySaOrder(String orderCode); + /** + * 计算秒结表数据 + * @param orderExt + */ + void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index e9d42c35..7b62c281 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -1,7 +1,10 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.order.service.IBonusOrderService; @@ -9,7 +12,9 @@ import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.*; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; @@ -47,6 +52,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private ICuMemberBonusDetailService cuMemberBonusDetailService; + @Autowired + private ICuMemberRetailRangeService iCuMemberRetailRangeService; + @Autowired + private ICuMemberService cuMemberService; + /** * 保存会员奖金 @@ -155,6 +165,29 @@ public class BonusSettleServiceImpl implements IBonusSettleService { } } + @Override + public void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt) { + Integer updateType = null; + String symbol = orderExt.getCancelBool() ? "-" : "+"; + if(orderExt.getOrderType().equals(EOrderType.RETAIL_REGISTER.getValue())){ + updateType = 1; + }else if(orderExt.getOrderType().equals(EOrderType.RETAIL_REPURCHASE.getValue())){ + updateType = 2; + } + if(ObjectUtil.isEmpty(updateType)){ + return; + } + // 今天结算期数 + String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, orderExt.getPayTime()); + int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + // 秒结表名 + String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; + List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); + CuMember self = cuMemberService.getById(orderExt.getPkId()); + iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); + iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); + } + /** * 计算每天的奖金入库 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java index 46b2d277..67624243 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java @@ -47,10 +47,10 @@ public class SaOrderSecondListener { if (saOrderExt.getCancelBool() != null && saOrderExt.getCancelBool()) { cuMemberRetailLog.setCancelStatus(EYesNo.YES.getIntValue()); } - try { Thread.sleep(1000); - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); +// iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); + iBonusSettleService.calculateCuMemberRetailRangeBySaOrder(saOrderExt); } catch (Exception e) { cuMemberRetailLog.setEnableStatus(EYesNo.NO.getIntValue()); cuMemberRetailLog.setMsg(e.getMessage()); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index ca9ccfcb..77d432b0 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -236,6 +236,43 @@ , a.pk_share_awards = b.pk_range_awards + + UPDATE ${tableName} + SET + PK_GRADE = ${cuMember.pkSettleGrade}, + PK_AWARDS = ${cuMember.pkAwards}, + + REG_CONSUME_NEW_AMOUNT = REG_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_CONSUME_NEW_PV = REG_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_CONSUME_NEW_AMOUNT = REP_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_CONSUME_NEW_PV = REP_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} + WHERE + PK_MEMBER = #{pkMember} + + + UPDATE ${tableName} + SET + + REG_TEAM_NEW_AMOUNT = REG_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_TEAM_NEW_PV = REG_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_TEAM_NEW_AMOUNT = REP_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_TEAM_NEW_PV = REP_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_TEAM_NEW_AMOUNT = ALL_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + WHERE + PK_MEMBER in + + #{member.pkId} + + + diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index a0a76820..e566f0be 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -1,15 +1,20 @@ package com.hzs.member.base.controller.api; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; +import com.hzs.common.core.config.BdConfig; +import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.FileResult; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.core.utils.uuid.IdUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -35,6 +40,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; import java.util.*; +import java.util.concurrent.TimeUnit; /** * 会员控制器 @@ -51,6 +57,9 @@ public class ApiMemberController extends BaseController { @Autowired private IApiAliSmsService iApiAliSmsService; + @Autowired + private RedisService redisService; + @DubboReference IGradeServiceApi iGradeServiceApi; @@ -366,4 +375,56 @@ public class ApiMemberController extends BaseController { return getDataTable(list); } + + /** + * 查询推荐人编号 -- 188分享注册 + * + * @param pkParent 推荐人(加密) + * @return + */ + @GetMapping("/fans-convert-code/{pkParent}") + public AjaxResult fansConvertCode(@PathVariable("pkParent") String pkParent) { + // 验证必输项 + if (pkParent == null) { + return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + } + CuMember cuMember = iCuMemberService.getMemberById(Long.parseLong(new String(Base64Decoder.decode(pkParent)))); + if (null != cuMember) { + return AjaxResult.success("", cuMember.getMemberCode()); + } + return AjaxResult.error(); + } + + /** + * 根据订单查询会员信息 -- 188分享注册 + * + * @param orderCode 订单编号 + * @return + */ +// @RepeatSubmitSimple(intervalTime = 2L) + @GetMapping("/fans-order/{orderCode}") + public AjaxResult fansOrder(@PathVariable("orderCode") String orderCode) { + CuMemberExt cuMemberExt = iCuMemberService.queryFansOrder(orderCode); + if (null == cuMemberExt) { + return AjaxResult.error("注册会员失败,请联系客服处理"); + } + // 自动登录 uuid 标记 + String uuid = IdUtils.simpleUUID(); + // 根据会员编号放一个登录 uuid 做为自动登录校验使用(120分钟有效) + redisService.setCacheObject(CacheConstants.AUTO_LOGIN + cuMemberExt.getMemberCode(), uuid, CacheConstants.LOGIN_TOKEN_REFRESH_TIME * 2, TimeUnit.MINUTES); + + + return AjaxResult.success(MemberShare.builder() + .memberName(cuMemberExt.getMemberName()) + .memberCode(cuMemberExt.getMemberCode()) + .phone(cuMemberExt.getPhone()) + .loginPassword(cuMemberExt.getLoginPassword()) + .payPassword(cuMemberExt.getPayPassword()) + .urlAddress(BdConfig.getPc()) +// .gzh(BdConfig.getGzh()) +// .ios(BdConfig.getIos()) +// .android(BdConfig.getAndroid()) + .uuid(uuid) + .build()); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 14d248d6..218c4d88 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -599,4 +599,12 @@ public interface CuMemberMapper extends BaseMapper { */ List queryDateBySummary(CensusSummaryParam censusSummaryParam); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(@Param("orderCode") String orderCode); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 93f4c9b6..6d2fb93d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -1,11 +1,15 @@ package com.hzs.member.base.provider; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ELoginType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRegister; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -16,6 +20,8 @@ import com.hzs.member.base.service.*; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; +import com.hzs.member.swing.param.CuMemberSwingNetParam; +import com.hzs.member.swing.service.ICuMemberSwingNetService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -34,8 +40,12 @@ public class MemberServiceProvider implements IMemberServiceApi { @Autowired private ICuMemberService iCuMemberService; @Autowired + private ICuMemberShareService iCuMemberShareService; + @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Autowired + private ICuMemberRegisterService iCuMemberRegisterService; + @Autowired private ICuMemberEmptyCodeService iCuMemberEmptyCodeService; @Override @@ -52,6 +62,20 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(loginMember); } + + @Override + public R getShareMemberInfo(String memberCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberShare::getMemberCode, memberCode); + CuMemberShare cuMemberShare = iCuMemberShareService.getOne(queryWrapper); + if (null == cuMemberShare) { + return R.fail("用户名或密码错误"); + } + LoginMember loginMember = new LoginMember(); + loginMember.setLoginType(ELoginType.SHARE_MEMBER.getValue()); + loginMember.setCuMemberShare(cuMemberShare); + return R.ok(loginMember); + } @Override public R getMemberById(Long memberId) { return R.ok(iCuMemberService.getMemberById(memberId)); @@ -191,6 +215,11 @@ public class MemberServiceProvider implements IMemberServiceApi { } } + @Override + public R createMemberIdAndCode(CuMember cuMember) { + return R.ok(iCuMemberService.createMemberIdAndCode(cuMember)); + } + @Override public R createRegisterMemberCode(CuMember cuMember) { return R.ok(iCuMemberService.createRegisterMemberCode(cuMember)); @@ -216,6 +245,11 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.findMemberByMemberId(pkMemberList, pkCountry)); } + @Override + public R queryCuMemberRegister(Long pkMember) { + return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); + } + @Override public R updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { try { @@ -344,4 +378,9 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } + + @Override + public R queryCuMemberShare(Long pkMember) { + return R.ok(iCuMemberShareService.queryCuMemberShare(pkMember)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index f2e6edae..1d4ae7f3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -19,6 +19,13 @@ public interface ICuMemberRegisterService extends IService { */ List queryCuMemberRegisterExeByCondition(MemberParam memberParam); + /** + * 根据会员主键查询会员注册信息 + * + * @param pkMember 会员主键 + */ + CuMemberRegister queryCuMemberRegister(Long pkMember); + /** * 将用户注册表信息更改为死点 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 6098e6a2..5aa1b321 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -155,7 +155,15 @@ public interface ICuMemberService extends IService { * @param digit 编号数字位数 * @return */ - String createUserNameByPremix(Integer pkCountry, Integer digit); + String createUserNameByPremix(Integer pkCountry, Integer digit); /** + * 生成会员编号 + * + * @param pkCountry 所属国家 + * @param isHaiFun + * @param digit 编号数字位数 + * @return + */ + String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit); /** * 批量生成会员编号 @@ -771,7 +779,7 @@ public interface ICuMemberService extends IService { * @return */ CuMember getRetailTopMember(Long pkMember, String memberCode, Long topPkMember, String topMemberCode); - + String createRetailMemberCode(String prefix); /** * 校验注册关系(是否跨团队) * 2024.12.24 修改为校验手机号必须唯一(9035) @@ -869,4 +877,12 @@ public interface ICuMemberService extends IService { */ List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(String orderCode); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java index 686beef1..9bac0405 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java @@ -22,5 +22,10 @@ public interface ICuMemberShareService extends IService { * @return */ List seaFlourList(SeaFlourParam seaFlourParam); - + /** + * 查询会员分享 + * + * @param pkMember 会员主键 + */ + CuMemberShare queryCuMemberShare(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index ca8a748f..002e2a6c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.member.base.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.base.CuMemberRegister; @@ -26,6 +27,15 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRegister::getPkMember, pkMember); + queryWrapper.orderByAsc(CuMemberRegister::getPayTime); + List cuMemberRegisters = baseMapper.selectList(queryWrapper); + return cuMemberRegisters.get(0); + } + @Override public void updateCuMemberRegister(CuMemberRegister cuMemberRegister) { baseMapper.updateCuMemberRegister(cuMemberRegister); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 16c5a8e1..148ffb7a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -1556,6 +1556,34 @@ public class CuMemberServiceImpl extends ServiceImpl i return memberCode; } + @Override + public String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit) { + String prefix; + if (isHaiFun) { + prefix = SysConstants.HAI_FUN_PREFIX; + } else { + CountryDTO country = iCountryServiceApi.getCountry(pkCountry).getData(); + prefix = country.getCode(); + } + if (StringUtils.isEmpty(prefix)) { + return null; + } + // 生成loginName + String memberCode = this.createMemberCode(prefix, digit); + + CuMember cuMemberByKey = getMember(memberCode); + if (cuMemberByKey != null && cuMemberByKey.getPkId() > 0) { + // 用户名已经存在,则继续尝试 + return this.createUserNameByPremix(pkCountry, isHaiFun, digit); + } else { + // 验证空单注册里面是否存在编号 + List cuMemberEmptyDetails = iCuMemberEmptyCodeService.queryCuMemberEmptyCode(memberCode); + if (CollectionUtil.isNotEmpty(cuMemberEmptyDetails)) { + return this.createUserNameByPremix(pkCountry, isHaiFun, digit); + } + } + return memberCode; + } /** * 创建会员编号 * @@ -3009,6 +3037,7 @@ public class CuMemberServiceImpl extends ServiceImpl i * @param prefix 会员编号前缀 * @return */ + @Override public String createRetailMemberCode(String prefix) { if (StringUtils.isEmpty(prefix)) { prefix = SysConstants.RETAIL_PREFIX; @@ -3248,4 +3277,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return censusSummaryList; } + + @Override + public CuMemberExt queryFansOrder(String orderCode) { + return baseMapper.queryFansOrder(orderCode); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java index 484846da..33371947 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.member.base.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.member.base.mapper.CuMemberShareMapper; @@ -30,4 +31,10 @@ public class CuMemberShareServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); + queryWrapper.select("PK_ID,MEMBER_CODE,MEMBER_NAME,PHONE,PK_PARENT"); + return baseMapper.selectById(pkMember); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java index 157c9f1f..b6f74543 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java @@ -21,4 +21,13 @@ public interface IMemberLoginService { **/ LoginMember passwordFreelogin(String username); + + /** + * 分享登录 + * + * @param username 用户名 + * @param password 密码 + * @return + */ + LoginMember shareLogin(String username, String password); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java index c2a8572d..948f122f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java @@ -11,6 +11,7 @@ import com.hzs.common.core.utils.ServletUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ip.IpUtils; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.detail.CuMemberLogin; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; @@ -157,6 +158,35 @@ public class MemberLoginServiceImpl implements IMemberLoginService { return loginMember; } + @Override + public LoginMember shareLogin(String username, String password) { + // 用户名或密码为空 错误 + if (StringUtils.isAnyBlank(username, password)) { + // 用户/密码必须填写 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_REQUIRED)); + } + // 查询用户信息 + R memberResult = iMemberServiceApi.getShareMemberInfo(username); + + if (R.FAIL == memberResult.getCode()) { + throw new ServiceException(memberResult.getMsg()); + } + + if (StringUtils.isNull(memberResult.getData())) { + // 登录用户: %s 不存在 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_NOT_EXIST, username)); + } + + LoginMember loginMember = memberResult.getData(); + CuMemberShare cuMemberShare = loginMember.getCuMemberShare(); + // 密码校验 + if (!SecurityUtils.matchesPassword(password, cuMemberShare.getLoginPwd())) { + // 用户不存在/密码错误 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_ERROR, username)); + } + + return loginMember; + } /** * 记录登录信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java index 1a3bbae4..86f2b363 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java @@ -174,4 +174,30 @@ public class ApiShareController extends BaseController { } + + + /** + * 获取188分享码(H5) + * + * @return + */ + @GetMapping("/fans-code-h5") + public AjaxResult fansCodeH5() { + Long userId = SecurityUtils.getUserId(); + // 188注册分享人就是自己 + R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() + .eShareType(EShareType.FANS) + .pkBusiness(userId) + .pkCountry(SecurityUtils.getPkCountry()) + .userId(userId) + .build()); + if (resultR.isSuccess()) { + Map resultMap = new HashMap<>(); + resultMap.put("dataUrl", resultR.getData()); + // 前端无法根据URL生成海报,此处需要转一下base64 + resultMap.put("dataStr", Base64Util.toUrlBase64(resultR.getData())); + return AjaxResult.success(resultMap); + } + return AjaxResult.error(); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java index 055fbc25..b12b401b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java @@ -1,13 +1,22 @@ package com.hzs.retail.login.controller; +import cn.hutool.core.codec.Base64Decoder; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMemberShare; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.auth.AuthMemberUtil; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.dto.LoginMember; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICuMemberShareService; +import com.hzs.member.login.param.AutoLoginParam; +import com.hzs.member.login.service.IMemberLoginService; import com.hzs.retail.login.param.RetailAutoLoginParam; import com.hzs.retail.login.param.RetailLoginParam; import com.hzs.retail.login.service.IRetailMemberLoginService; @@ -28,6 +37,13 @@ import javax.validation.Valid; @RestController public class RetailMemberTokenController { + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberShareService iCuMemberShareService; + @Autowired + private IMemberLoginService iMemberLoginService; + @Autowired private MemberTokenService memberTokenService; @Autowired @@ -50,14 +66,16 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + + /** - * 新零售会员自动登录 + * 新零售会员自动登录-分享注册后自动登录 * * @param param 自助登录参数 * @return */ - @PostMapping("/auto-login") - public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { + @PostMapping("/registered-auto-login") + public AjaxResult registeredAutoLogin(@Valid @RequestBody RetailAutoLoginParam param) { String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); if (!param.getUuid().equals(tmpUuid)) { // 没有自动登录标记 或者 标记不对,则不能自动登录 @@ -70,6 +88,60 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + /** + * 新零售会员自动登录 + * + * @param param 自助登录参数 + * @return + */ + @PostMapping("/auto-login") +// public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { +// String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); +// if (!param.getUuid().equals(tmpUuid)) { +// // 没有自动登录标记 或者 标记不对,则不能自动登录 +// return AjaxResult.error("当前会员已不能快递登录"); +// } +// +// // 用户登录 +// LoginMember loginMember = iRetailMemberLoginService.login(param.getUsername(), param.getPassword()); +// // 获取登录token +// return AjaxResult.success(memberTokenService.createToken(loginMember)); +// } + public AjaxResult autoLogin(@RequestBody AutoLoginParam param) { + if (StringUtils.isEmpty(param.getPkParent())) { + return AjaxResult.error("缺少注册信息!"); + } + + // 上级编码(推荐人) + Long pkParent = Long.parseLong(new String(Base64Decoder.decode(param.getPkParent()))); + // 查询上级信息 + CuMemberExt parentCuMember = iCuMemberService.getMemberById(pkParent); + if (null == parentCuMember) { + return AjaxResult.error("二维码已经失效!"); + } + + // 生成的会员编号 + String memberCode = iCuMemberService.createRetailMemberCode(SysConstants.RETAIL_PREFIX); +// iCuMemberService.createUserNameByPremix(parentCuMember.getPkSettleCountry(), MagicNumberConstants.DIGIT); + + CuMemberShare cuMemberShare = new CuMemberShare(); + cuMemberShare.setMemberCode(memberCode); + cuMemberShare.setPkParent(pkParent); + cuMemberShare.setLoginPassword(SysConstants.LOGIN_PASSWORD); + cuMemberShare.setLoginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)); + cuMemberShare.setPayPassword(SysConstants.PAY_PASSWORD); + cuMemberShare.setPayPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)); + cuMemberShare.setPkCreator(pkParent); + cuMemberShare.setPkCountry(parentCuMember.getPkSettleCountry()); + if (iCuMemberShareService.save(cuMemberShare)) { + // 会员登录 + LoginMember loginMember = iMemberLoginService.shareLogin(memberCode, SysConstants.LOGIN_PASSWORD); + + // 获取登录token + return AjaxResult.success(memberTokenService.createToken(loginMember)); + } + return AjaxResult.error(); + } /** * 会员登出 * diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index f257100c..f49af52d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2378,4 +2378,19 @@ + + + diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index bf52a76b..e06f04e4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,16 +6,23 @@ import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.EGrade; +import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; +import com.hzs.common.core.utils.CommonUtil; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; +import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.config.BdGrade; +import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.retail.sale.controller.service.IRetailOrderService; @@ -23,10 +30,13 @@ import com.hzs.retail.sale.param.*; import com.hzs.retail.sale.vo.*; import com.hzs.sale.order.param.*; import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.order.service.ISaOrderShareTmpService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import com.hzs.sale.shopping.vo.ShoppingCartVO; +import com.hzs.sale.wares.service.IBdWaresService; +import com.hzs.sale.wares.service.IBdWaresSpecsSkuService; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; @@ -40,6 +50,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 新零售订单控制器 @@ -58,12 +69,21 @@ public class ApiRetailOrderController { @Autowired private RedisService redisService; + @Autowired + private IBdWaresService iBdWaresService; + @Autowired + private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; + @Autowired + private ISaOrderShareTmpService iSaOrderShareTmpService; + @DubboReference IMemberServiceApi iMemberServiceApi; @DubboReference IGradeServiceApi iGradeServiceApi; @DubboReference IAreaServiceApi iAreaServiceApi; + @Autowired + private MemberTokenService memberTokenService; /** * 校验会员等级 @@ -590,4 +610,111 @@ public class ApiRetailOrderController { return null; } + + /** + * 确认注册订单 + * + * @param registerParam 订单入参 + * @param source 数据来源 + * @return + */ + @RepeatSubmit + @PostMapping("/fans-confirm-order") + public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, + @RequestHeader("Source") Integer source) { + // 设置数据来源 + registerParam.setSource(source); + // 会员ID + registerParam.setPkCreator(SecurityUtils.getUserId()); + // 新零售注册专区 + registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + // 系统类型 + registerParam.setSystemType(SecurityUtils.getSystemType()); + + // 获取等级列表 + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); + // 校验注册权限等 +// String checkStr = this.checkRegistrationPermission(registerParam, gradeList); +// if (null != checkStr) { +// return AjaxResult.error(checkStr); +// } + + // 手机号可以重复,不需要进行是否重复校验 -- 已经跳过,此处可以不需要当前判断 +// // 校验注册关系(是否跨团队) -- 2024.12.24 修改为校验手机号必须唯一 +// String relationStr = iMemberServiceApi.checkRegisterRelation(registerParam.getPhone(), registerParam.getParentCode()).getData(); +// if (relationStr != null) { +// return AjaxResult.error(relationStr); +// } + + // 购物车中获取商品信息 +// registerParam.setOrderItemsParams(convertShoppingCarToSku(registerParam.getPkCreator(), registerParam.getShopList())); + + // 遍历商品,封装订单明细 + // 订单金额 + BigDecimal orderAmount = BigDecimal.ZERO; + + // 生成订单编号 + String orderCode = CommonUtil.createSerialNumber(EOrderPrefix.ORDER_CODE); + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : registerParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + registerParam.setOrderItemsParams(orderItemsParams); + CuMemberShare memberShare = memberTokenService.getLoginMember().getCuMemberShare(); + registerParam.setCuMemberShare(memberShare); +// registerParam.setPkCreator(memberShare.getPkParent()); + // 确认订单 + String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount()); + } + + /** + * 确认订单返回 + * + * @param str 提示信息(null 为成功) + * @param pkCreator 订单创建人 + * @param shopList 购物车ID + * @param orderCode 订单编号 + * @return + */ + private AjaxResult confirmSharedOrderReturn(String str, Long pkCreator, List shopList, String orderCode, BigDecimal orderAmount) { + if (null == str) { + // 删除购物车商品数据 + if (CollectionUtil.isNotEmpty(shopList)) { + shoppingCartService.batchDelShopping(pkCreator, ShoppingCartVO.builder() + .deleteList(shopList) + .build()); + } + return AjaxResult.success(RetailOrderVO.builder() + .orderCode(orderCode) + .orderAmount(orderAmount) + .build()); + } + return AjaxResult.error(str); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index bd76d6ef..febd7feb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.controller.service.impl; import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; @@ -17,6 +18,7 @@ import com.hzs.common.core.utils.*; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -447,8 +449,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setCreationTime(new Date()); cuMember.setPkCreator(orderParam.getPkCreator()); + boolean isShared = false; if (null == orderParam.getCreatorMember()) { - orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + if(ObjectUtil.isNotEmpty(orderParam.getCuMemberShare())){ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getCuMemberShare().getPkParent(), null).getData()); + cuMember.setPkParent(orderParam.getCuMemberShare().getPkParent()); + isShared = true; + }else{ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + } } cuMember.setPkVertex(orderParam.getCreatorMember().getPkVertex()); cuMember.setPkTeamCode(orderParam.getCreatorMember().getPkTeamCode()); @@ -456,7 +465,12 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setSystemType(orderParam.getCreatorMember().getSystemType()); // 获取会员编号、会员主键 - cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + if(isShared){ + cuMember.setPkId(orderParam.getCuMemberShare().getPkId()); + cuMember.setMemberCode(orderParam.getCuMemberShare().getMemberCode()); + }else{ + cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + } return cuMember; } @@ -592,7 +606,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); + newMember.setPkSettleGrade(registerParam.getPkGrade()); + newMember.setPkAwards(registerParam.getPkAwards()); saOrderExt.setPkMember(newMember.getPkId()); + if(ObjectUtil.isNotEmpty(registerParam.getCuMemberShare())){ + saOrderExt.setPkReference(registerParam.getCuMemberShare().getPkParent()); + saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); + } resultStr = this.payRegOrder(saOrderExt, newMember, null); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java index a5587c9a..7cf9682d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java @@ -6,6 +6,7 @@ import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.AllArgsConstructor; @@ -113,6 +114,9 @@ public class RetailOrderParam implements Serializable { @JsonIgnore private CuMember creatorMember; +// @JsonIgnore + private CuMemberShare cuMemberShare; + /** * 订单编号 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java index 4982edcb..577d6a6b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java @@ -1,11 +1,12 @@ package com.hzs.retail.sale.param; -import lombok.Data; -import lombok.EqualsAndHashCode; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; +import lombok.*; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.Size; import java.io.Serializable; +import java.util.List; /** * 新零售注册订单入参 @@ -33,4 +34,9 @@ public class RetailOrderRegisterParam extends RetailOrderParam implements Serial @Size(max = 20, message = "推荐编号不能超过20位") private String parentCode; + + /** + * 商品列表 + */ + private List waresList; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java index a6b3e3c8..95e44578 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.math.BigDecimal; /** * 新零售订单返回VO @@ -48,4 +49,9 @@ public class RetailOrderVO implements Serializable { */ private String urlAddress; + /** + * 待支付金额 + */ + private BigDecimal orderAmount; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index feea16a2..2824171d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -1,6 +1,7 @@ package com.hzs.retail.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; @@ -10,10 +11,13 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EAccount; import com.hzs.common.core.enums.ELabelType; import com.hzs.common.core.enums.ESpecialArea; +import com.hzs.common.core.enums.EWaresType; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DistinctByKeyUtil; +import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; @@ -25,8 +29,11 @@ import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.retail.wares.param.RetailWaresDetailParam; import com.hzs.retail.wares.param.RetailWaresParam; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.retail.wares.vo.RetailWaresDetailVO; import com.hzs.retail.wares.vo.RetailWaresVO; +import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.service.IBdWaresLabelService; import com.hzs.sale.wares.service.IBdWaresRangeService; import com.hzs.sale.wares.service.IBdWaresService; @@ -38,10 +45,7 @@ import com.hzs.system.config.dto.AreaCurrencyDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; @@ -64,6 +68,8 @@ public class ApiRetailWaresController extends BaseController { private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; @Autowired private IBdWaresRangeService iBdWaresRangeService; + @Autowired + private ISaOrderService iSaOrderService; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @@ -378,4 +384,147 @@ public class ApiRetailWaresController extends BaseController { } + + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { + param.setSpecialArea(ESpecialArea.REGISTER_AREA.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } + + /** + * 查询团队配置是否展示该商品 + * + * @param pkWares + * @return + */ + public ShowWaresDTO getShowWares(Integer pkWares, Long loginMember, String loginMemberCode, Map> waresAuthorityMap) { + ShowWaresDTO showWaresDTO = new ShowWaresDTO(); + showWaresDTO.setPkWares(pkWares); + showWaresDTO.setLoginMember(loginMember); + showWaresDTO.setLoginMemberCode(loginMemberCode); + showWaresDTO.setWaresAuthorityList(waresAuthorityMap.get(pkWares)); + return showWaresDTO; + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java new file mode 100644 index 00000000..1e5e125b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java @@ -0,0 +1,31 @@ +package com.hzs.retail.wares.param; + +import lombok.Data; + +/** + * 分享商品查询条件 + */ +@Data +public class WaresShareParam { + + /** + * 分享会员编号 + */ + private String shareMemberCode; + + /** + * 所属专区 + */ + private Integer specialArea; + + /** + * 商品类型 + */ + private Integer isMakerGift; + + /** + * 国家 + */ + private Integer pkCountry; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java new file mode 100644 index 00000000..28aea898 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java @@ -0,0 +1,68 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单入参 + */ +@Data +public class FansConfirmOrderParam { + + /*** + * 自然国 + */ + private Integer pkCountry; + + /** + * 会员姓名 + */ + private String memberName; + + /** + * 联系方式 + */ + private String phone; + + /** + * 收货人 + */ + private String recName; + + /** + * 收货电话 + */ + private String recPhone; + + /** + * 收货省 + */ + private Integer recProvince; + + /** + * 收货市 + */ + private Integer recCity; + + /** + * 收货县 + */ + private Integer recCounty; + + /** + * 收货地址 + */ + private String recAddress; + + /** + * 备注 + */ + private String remark; + + /** + * 商品列表 + */ + private List waresList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java new file mode 100644 index 00000000..b533710b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java @@ -0,0 +1,21 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +/** + * 海粉确认订单产品入参 + */ +@Data +public class FansConfirmOrderSkuParam { + + /** + * SKU ID + */ + private Long pkWaresSku; + + /** + * 产品数量 + */ + private Integer quantity; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java new file mode 100644 index 00000000..e5cb4067 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java @@ -0,0 +1,28 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单商品入参 + */ +@Data +public class FansConfirmOrderWaresParam { + + /** + * 商品ID + */ + private Integer pkWares; + + /** + * 商品数量 + */ + private Integer quantity; + + /** + * 产品列表 + */ + private List skuList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index dc709de0..51f64430 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -1,6 +1,7 @@ package com.hzs.sale.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; @@ -27,6 +28,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.WaresItemWaresInfo; @@ -87,6 +89,133 @@ public class ApiBdWaresController extends BaseController { @Autowired protected StringRedisTemplate redisTemplate; + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } /** * 根据专区查找专区的商品 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index a8acbfec..bce4471f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -129,6 +129,7 @@ public interface BdWaresMapper extends BaseMapper { */ List listRetailWaresByCondition(@Param("param") RetailWaresParam param); + /** * 查询非在售商品 * @@ -137,4 +138,16 @@ public interface BdWaresMapper extends BaseMapper { */ List listWaresNoSale(@Param("param") WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(@Param("specialArea") Integer specialArea, + @Param("isMakerGift") Integer isMakerGift, + @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java index beaf1ad5..325c97ec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java @@ -109,4 +109,12 @@ public interface BdWaresSpecsSkuMapper extends BaseMapper { */ List selectByMinWaresSpecsSkuByPkWaresList(@Param("pkWaresIds") List pkWaresIds); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + List queryWaresSpecsSkuList(@Param("skuIdList") List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 3538b0f8..cb0bee87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -203,4 +203,14 @@ public interface IBdWaresService extends IService { */ List listWaresNoSale(WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java index 5a73299d..1f801491 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java @@ -13,6 +13,7 @@ import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.param.SpecsSkuParam; import java.util.List; +import java.util.Map; /** * 规格sku表 服务类 @@ -107,4 +108,12 @@ public interface IBdWaresSpecsSkuService extends IService { */ RetailWaresDetailVO queryWaresDetail(RetailWaresDetailParam param, Integer pkGrade); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + Map queryWaresSpecsSkuList(List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 4e3388f6..cf4f8dd9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1161,4 +1161,9 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listWaresNoSale(param); } + + @Override + public List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry) { + return baseMapper.listWaresShare(specialArea, isMakerGift, pkCountry); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 213748ae..532e9668 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -578,4 +578,15 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl queryWaresSpecsSkuList(List skuIdList) { + Map resultMap = new HashMap<>(); + + List list = baseMapper.queryWaresSpecsSkuList(skuIdList); + for (BdWaresSpecsSkuExt waresSpecsSku : list) { + resultMap.put(waresSpecsSku.getPkId().longValue(), waresSpecsSku); + } + return resultMap; + } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 09231787..ce5fec98 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -471,4 +471,35 @@ order by bw.wares_name + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml index 06418e05..432196b4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml @@ -357,4 +357,23 @@ + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java index 553d7b8c..f19aea82 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java @@ -24,18 +24,18 @@ public class BdConfig { * PC地址 */ private static String pc; -// /** -// * 公众号地址 -// */ -// private static String gzh; -// /** -// * IOS地址 -// */ -// private static String ios; -// /** -// * android地址 -// */ -// private static String android; + /** + * 公众号地址 + */ + private static String gzh; + /** + * IOS地址 + */ + private static String ios; + /** + * android地址 + */ + private static String android; /** * 商品同步是否开启(0=开启,1=不开启) @@ -70,29 +70,30 @@ public class BdConfig { BdConfig.pc = pc; } -// public static String getGzh() { -// return gzh; -// } -// -// public void setGzh(String gzh) { -// HzsConfig.gzh = gzh; -// } -// -// public static String getIos() { -// return ios; -// } -// -// public void setIos(String ios) { -// HzsConfig.ios = ios; -// } -// -// public static String getAndroid() { -// return android; -// } -// -// public void setAndroid(String android) { -// HzsConfig.android = android; -// } + + public static String getGzh() { + return gzh; + } + + public void setGzh(String gzh) { + BdConfig.gzh = gzh; + } + + public static String getIos() { + return ios; + } + + public void setIos(String ios) { + BdConfig.ios = ios; + } + + public static String getAndroid() { + return android; + } + + public void setAndroid(String android) { + BdConfig.android = android; + } public static Integer getProductSync() { return productSync; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index ba25e75a..86276117 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -9,6 +9,11 @@ import java.util.List; */ public class SysConstants { + + /** + * 嗨粉前缀 + */ + public static final String HAI_FUN_PREFIX = "HF"; /** * 众康系统前缀 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java new file mode 100644 index 00000000..a1147d03 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java @@ -0,0 +1,38 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 订单扩展类型枚举类 + */ +@AllArgsConstructor +@Getter +public enum EOrderTypeExtend { + + /** + * 正常 + */ + NORMAL(0, "正常", 0), + + /** + * 注册转复购 + */ + REG_REP(1, "注册转复购", 0), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + /** + * 是否启用(0=是,1=否) -- 来源EYesNo + */ + private final int enable; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java index bb0f12ab..8358cf86 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java @@ -19,6 +19,11 @@ public enum EShareType { */ SHARE(1, "分享注册"), + /** + * 188注册 + */ + FANS(2, "188注册"), + ; /** diff --git a/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java b/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java index 62297b45..f3a45fb4 100644 --- a/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java +++ b/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java @@ -8,6 +8,7 @@ import com.hzs.common.core.utils.ServletUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ip.IpUtils; import com.hzs.common.core.utils.uuid.IdUtils; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.dto.LoginMember; @@ -57,16 +58,26 @@ public class MemberTokenService { public Map createToken(LoginMember loginMember) { String token = IdUtils.fastUUID(); - // 注册用户处理 - CuMemberExt cuMember = loginMember.getCuMember(); // 用户ID - Long pkId = cuMember.getPkId(); + Long pkId; // 用户编号 - String memberCode = cuMember.getMemberCode(); + String memberCode; // 结算国 - Integer pkCountry = cuMember.getPkSettleCountry(); - // 系统类型 - Integer systemType = cuMember.getSystemType(); + Integer pkCountry; + + if (null != loginMember.getCuMember()) { + // 注册用户处理 + CuMemberExt cuMember = loginMember.getCuMember(); + pkId = cuMember.getPkId(); + memberCode = cuMember.getMemberCode(); + pkCountry = cuMember.getPkSettleCountry(); + } else { + // 分享用户处理(临时海粉) + CuMemberShare cuMemberShare = loginMember.getCuMemberShare(); + pkId = cuMemberShare.getPkId(); + memberCode = cuMemberShare.getMemberCode(); + pkCountry = cuMemberShare.getPkCountry(); + } loginMember.setToken(token); loginMember.setPkId(pkId); @@ -82,7 +93,6 @@ public class MemberTokenService { claimsMap.put(SecurityConstants.DETAILS_USERNAME, memberCode); claimsMap.put(SecurityConstants.DETAILS_USER_TYPE, loginMember.getLoginType()); claimsMap.put(SecurityConstants.DETAILS_USER_COUNTRY, pkCountry); - claimsMap.put(SecurityConstants.SYSTEM_TYPE, systemType); // 接口返回信息 Map rspMap = new HashMap<>(); diff --git a/bd-gateway/src/main/resources/bootstrap.yml b/bd-gateway/src/main/resources/bootstrap.yml index b36ebbd4..e069640c 100644 --- a/bd-gateway/src/main/resources/bootstrap.yml +++ b/bd-gateway/src/main/resources/bootstrap.yml @@ -175,6 +175,12 @@ security: - /system/manage/area/get-light-area # 新零售白名单 - /retail-member/api/retail-auth/* + # 188分享注册白名单 + - /member/api/member/fans-convert-code/* + - /member/api/member/fans-order/* + - /system/api/idempotent/generate + - /member/api/retail-auth/auto-login + - /member/api/retail-auth/registered-auto-login # 日志配置 logging: diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java index a0c2ca1e..04f31b7b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java @@ -2,6 +2,7 @@ package com.hzs.third.pay.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.EnumsPrefixConstants; @@ -21,6 +22,7 @@ import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; import com.hzs.third.pay.param.OnlinePaymentParam; import com.hzs.third.pay.param.OnlinePaymentRetryParam; +import com.hzs.third.pay.service.IJdPayService; import com.hzs.third.pay.service.IPayService; import com.hzs.third.pay.service.ITOnlinePaymentService; import com.hzs.third.pay.vo.OnlinePaymentVO; @@ -48,6 +50,8 @@ public class OnlinePaymentController extends BaseController { private ITOnlinePaymentService itOnlinePaymentService; @Autowired private IPayService iPayService; + @Autowired + private IJdPayService iJdPayService; @Autowired private ITransactionCommonService iTransactionCommonService; @@ -144,4 +148,16 @@ public class OnlinePaymentController extends BaseController { return toAjax(iPayService.retryHandle(tOnlinePayment, false)); } + /** + * 补偿支付回调 + * + * @param param 业务重试入参 + * @return + */ + @Log(module = EOperationModule.ONLINE_PAY_DETAIL, business = EOperationBusiness.ONLINE_PAY_DETAIL, method = EOperationMethod.SUBMIT) + @GetMapping("/compensationCallBack") + public AjaxResult compensationCallBack(@RequestParam("businessCode") String businessCode) { + return iJdPayService.compensationCallBack(businessCode); + } + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java new file mode 100644 index 00000000..96be5cad --- /dev/null +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java @@ -0,0 +1,27 @@ +package com.hzs.third.pay.jdpay.dto; + + +import java.io.Serializable; + +public class JdPayQueryOrderRequest implements Serializable { + /** + * 商户订单号 + */ + private String outTradeNo; + + + public String getOutTradeNo() { + return outTradeNo; + } + + public void setOutTradeNo(String outTradeNo) { + this.outTradeNo = outTradeNo; + } + + @Override + public String toString() { + return "{ \"outTradeNo\":\"" + outTradeNo + "\"" + + "}" + ; + } +} diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java new file mode 100644 index 00000000..7900664a --- /dev/null +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java @@ -0,0 +1,197 @@ +package com.hzs.third.pay.jdpay.dto; + +import java.io.Serializable; + +public class JdPayQueryOrderResponse implements Serializable { + /** + * 京东交易订单号 + */ + private String tradeNo; + /** + * 商户订单号 + */ + private String outTradeNo; + /** + * 订单总金额 + */ + private String tradeAmount; + /** + * 支付完成时间 + */ + private String finishDate; + /** + * 交易类型 + */ + private String tradeType; + /** + * 交易状态 + */ + private String tradeStatus; + /** + * 回传字段 + */ + private String returnParams; + /** + * 商户用户标识 + */ + private String userId; + /** + * 优惠金额 + */ + private String discountAmount; + /** + * 支付工具 + */ + private String payTool; + /** + * ] + * 掩码卡号 + */ + private String maskCardNo; + /** + * 卡类型 + */ + private String cardType; + /** + * 银行编码 + */ + private String bankCode; + /** + * 白条分期数 + */ + private String installmentNum; + + + public String getTradeNo() { + return tradeNo; + } + + public void setTradeNo(String tradeNo) { + this.tradeNo = tradeNo; + } + + public String getOutTradeNo() { + return outTradeNo; + } + + public void setOutTradeNo(String outTradeNo) { + this.outTradeNo = outTradeNo; + } + + public String getTradeAmount() { + return tradeAmount; + } + + public void setTradeAmount(String tradeAmount) { + this.tradeAmount = tradeAmount; + } + + public String getFinishDate() { + return finishDate; + } + + public void setFinishDate(String finishDate) { + this.finishDate = finishDate; + } + + public String getTradeType() { + return tradeType; + } + + public void setTradeType(String tradeType) { + this.tradeType = tradeType; + } + + public String getTradeStatus() { + return tradeStatus; + } + + public void setTradeStatus(String tradeStatus) { + this.tradeStatus = tradeStatus; + } + + public String getReturnParams() { + return returnParams; + } + + public void setReturnParams(String returnParams) { + this.returnParams = returnParams; + } + + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getDiscountAmount() { + return discountAmount; + } + + public void setDiscountAmount(String discountAmount) { + this.discountAmount = discountAmount; + } + + public String getPayTool() { + return payTool; + } + + public void setPayTool(String payTool) { + this.payTool = payTool; + } + + public String getMaskCardNo() { + return maskCardNo; + } + + public void setMaskCardNo(String maskCardNo) { + this.maskCardNo = maskCardNo; + } + + public String getCardType() { + return cardType; + } + + public void setCardType(String cardType) { + this.cardType = cardType; + } + + public String getBankCode() { + return bankCode; + } + + public void setBankCode(String bankCode) { + this.bankCode = bankCode; + } + + public String getInstallmentNum() { + return installmentNum; + } + + public void setInstallmentNum(String installmentNum) { + this.installmentNum = installmentNum; + } + + @Override + public String toString() { + return "{\"tradeNo\":\"" + tradeNo + "\"" + + ", \"outTradeNo\":\"" + outTradeNo + "\"" + + ", \"tradeAmount\":\"" + tradeAmount + "\"" + + ", \"finishDate\":\"" + finishDate + "\"" + + ", \"tradeType\":\"" + tradeType + "\"" + + ", \"tradeStatus\":\"" + tradeStatus + "\"" + + ", \"returnParams\":\"" + returnParams + "\"" + + ", \"userId\":\"" + userId + "\"" + + ", \"discountAmount\":\"" + discountAmount + "\"" + + ", \"payTool\":\"" + payTool + "\"" + + ", \"maskCardNo\":\"" + maskCardNo + "\"" + + ", \"cardType\":\"" + cardType + "\"" + + ", \"bankCode\":\"" + bankCode + "\"" + + ", \"installmentNum\":\"" + installmentNum + "\"" + + "}" + ; + } +} diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java index f5898780..82ac5acc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java @@ -56,9 +56,9 @@ public class JdPay { // * @return JdPayQueryOrderResponse 返回数据 // * @throws Exception // */ -// public JdPayQueryOrderResponse queryOrder(JdPayQueryOrderRequest request) throws Exception { -// return this.baseExecute(JdPayConstant.TRADE_QUERY_URL, request, JdPayQueryOrderResponse.class); -// } + public JdPayQueryOrderResponse queryOrder(JdPayQueryOrderRequest request) throws Exception { + return this.baseExecute(JdPayConstant.TRADE_QUERY_URL, request, JdPayQueryOrderResponse.class); + } // // /** // * 作用:代扣 diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java index 23863944..1f353927 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java @@ -42,9 +42,9 @@ public class JdPayHttpClientProxy { log.info("1.{}接口请求参数:{}", apiName, request); // 请求参数加密和签名 String httpRequest = JdPayApiUtil.encryptAndSignature(jdPayNewConfig, reqNo, request); - log.info("2.{}远程调用请求参数:{}", apiName, httpRequest); +// log.info("2.{}远程调用请求参数:{}", apiName, httpRequest); String httpResponse = jdPayHttpClient.execute(jdPayNewConfig, urlSuffix, httpRequest); - log.info("3.{}远程调用返回参数:{}", apiName, httpResponse); +// log.info("3.{}远程调用返回参数:{}", apiName, httpResponse); // 验证和解析返回参数 response = JdPayApiUtil.decryptAndVerifySign(jdPayNewConfig, httpResponse); log.info("4.{}耗时:{},接口返回参数:{}", apiName, (System.currentTimeMillis() - startTimestampMs), response); diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java b/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java index ccd9a9d1..9b69a4b9 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java @@ -2,6 +2,7 @@ package com.hzs.third.pay.service; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDataSource; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.third.pay.TOnlinePayment; /** @@ -18,4 +19,12 @@ public interface IJdPayService { */ R cashRegister(TOnlinePayment onlinePayment, EDataSource dataSource); + /** + * 收银台支付 + * + * @param onlinePayment + * @param dataSource + * @return + */ + AjaxResult compensationCallBack(String businessCode); } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index a2c6b4ac..0aad0171 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -2,11 +2,12 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EDataSource; -import com.hzs.common.core.enums.EEnv; +import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.domain.third.pay.TOnlinePaymentSepAcc; import com.hzs.common.domain.third.pay.TOnlinePaymentSepAccD; @@ -15,16 +16,10 @@ import com.hzs.third.pay.config.JdPayBankProperties; import com.hzs.third.pay.config.JdPayConfig; import com.hzs.third.pay.config.JdPaySeparateAccountConfig; import com.hzs.third.pay.config.JdPayWechatAlipayProperties; -import com.hzs.third.pay.jdpay.dto.JdPayAggregateCreateOrderRequest; -import com.hzs.third.pay.jdpay.dto.JdPayAggregateCreateOrderResponse; -import com.hzs.third.pay.jdpay.dto.JdPayDivisionAccount; -import com.hzs.third.pay.jdpay.dto.JdPayDivisionAccountTradeInfo; +import com.hzs.third.pay.jdpay.dto.*; import com.hzs.third.pay.jdpay.sdk.JdPay; import com.hzs.third.pay.jdpay.util.GsonUtil; -import com.hzs.third.pay.service.IJdPayService; -import com.hzs.third.pay.service.ITOnlineCardService; -import com.hzs.third.pay.service.ITOnlinePaymentSepAccService; -import com.hzs.third.pay.service.ITOnlinePaymentService; +import com.hzs.third.pay.service.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; @@ -35,6 +30,7 @@ import java.math.BigDecimal; import java.net.InetAddress; import java.util.ArrayList; import java.util.Comparator; +import java.util.Date; import java.util.List; /** @@ -59,6 +55,8 @@ public class JdPayServiceImpl implements IJdPayService { @Autowired private ITOnlinePaymentService itOnlinePaymentService; + @Autowired + private IPayService iPayService; @Resource private JdPayWechatAlipayProperties jdPayWechatAlipayProperties; @@ -196,4 +194,94 @@ public class JdPayServiceImpl implements IJdPayService { } + + @Override + public AjaxResult compensationCallBack(String businessCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TOnlinePayment::getBusinessCode, businessCode); + queryWrapper.eq(TOnlinePayment::getDelFlag, EDelFlag.UN_DELETE.getValue()); + TOnlinePayment tOnlinePayment = itOnlinePaymentService.getOne(queryWrapper, false); + if(ObjectUtil.isEmpty(tOnlinePayment)){ + return AjaxResult.error("订单不存在"); + } + JdPayQueryOrderRequest request = new JdPayQueryOrderRequest(); + request.setOutTradeNo(tOnlinePayment.getBusinessCode()); + JdPayQueryOrderResponse response = null; + try { + response = jdPay.queryOrder(request); + if (ObjectUtil.isEmpty(response.getTradeNo()) || EPayStatus.PAID.getValue() == tOnlinePayment.getPayStatus()) { + log.error("支付信息不存在或已支付"); + return AjaxResult.success("已支付订单 无需补偿回调!"); + } + log.info("queryOrder : {}", JSONUtil.toJsonStr(response)); + if ("FINI".equals(response.getTradeStatus())){ + // 支付成功处理 + + // 商户订单号 + String payNumber = response.getTradeNo(); + // 渠道流水号 + String channelNumber = ""; + // 支付完成时间 + Date payTime = DateUtils.parseDateOne(response.getFinishDate(), DateUtils.YAMMERERS); + + // 回调订单编号 + String thirdOrderCode = response.getOutTradeNo(); + // 订单编号 + String acqOrderId = "compensationCallBack"; + + // 订单金额 + int tradeAmount = Integer.parseInt(response.getTradeAmount()); + BigDecimal payMoney = new BigDecimal(tradeAmount).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP); + Integer payType = convertPayType(response.getPayTool()); + // 支付后续业务处理 + if (iPayService.notifyHandle(tOnlinePayment.getBusinessType().toString() , thirdOrderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) { + return AjaxResult.success(); + } + } + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); + } + + + /** + * 京东收银台处理成功返回 + */ + private static final String SUCCESS = "SUCCESS"; + /** + * 京东收银台处理失败返回 + */ + private static final String ERROR = "ERROR"; + private Integer convertPayType(String payName){ + Integer result = EPayType.WECHAT.getValue(); + switch (payName){ + case "XJK": + result = EPayType.MINI_TREASURY.getValue(); + break; + case "JIOU": + result = EPayType.CREDIT_LINE.getValue(); + break; + case "SJIOU": + result = EPayType.SUPER_CREDIT_LINE.getValue(); + break; + case "ACCT": + result = EPayType.WALLET_BALANCE.getValue(); + break; + case "EXPR": + result = EPayType.BANK_CARD.getValue(); + break; + case "WX": + result = EPayType.WECHAT.getValue(); + break; + case "ALIPAY": + result = EPayType.ALIPAY.getValue(); + break; + case "YSF": + result = EPayType.CLOUD_PAY.getValue(); + break; + + } + return result; + } } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 52524fdd..58c1bf2d 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -2,10 +2,12 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RabbitMqConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.retail.sale.IRetailOrderServiceApi; @@ -33,6 +35,8 @@ public class PayServiceImpl implements IPayService { private ITOnlinePaymentService itOnlinePaymentService; @Autowired private RabbitTemplate rabbitTemplate; + @Autowired + private RedisService redisService; @DubboReference IRetailOrderServiceApi iRetailOrderServiceApi; @@ -118,8 +122,11 @@ public class PayServiceImpl implements IPayService { log.error("支付信息不存在或已支付"); return false; } - + String redisKey = CacheConstants.ONLINE_PAY_KEY + businessCode; try { + if(!redisService.lockKeyOnce(redisKey, 10)){ + return false; + } if (!PayUtil.checkAmount(onlinePayment.getBusinessMoney(), payMoney)) { // 业务金额 大于 实际支付金额 log.error("业务金额大于实际支付金额,支付编号:{}, 支付金额:{}", onlinePayment.getPaymentCode(), payMoney); @@ -156,6 +163,8 @@ public class PayServiceImpl implements IPayService { .set(TOnlinePayment::getCallbackStatus, ECallbackStatus.FAIL.getValue()) .set(TOnlinePayment::getCallbackInfo, e.getMessage()) ); + } finally { + redisService.unlock(redisKey); } return false; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java index db5c6cbc..911d8a75 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java @@ -61,6 +61,9 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl and account2 + #{account2} >= 0 + + and account4 + #{account4} >= 0 + - select mb.pk_id pkId, + select mb.pk_id pkId, mb.card_number cardNumber, mb.default_card defaultCard, b.pk_transaction pkBank, b.background_img backgroundImg, - b.bank_name bankName, + b.bank_name bankName, b.logo - from cu_member_bank mb - left join bd_bank b - on mb.pk_bank = b.pk_id - and b.del_flag = 0 - and b.enable_state = 0 - where mb.del_flag = 0 - and mb.pk_country = #{pkCountry} - and mb.pk_member = #{pkMember} - order by mb.default_card desc + from cu_member_bank mb + left join bd_bank b + on mb.pk_bank = b.pk_id + and b.del_flag = 0 + and b.enable_state = 0 + where mb.del_flag = 0 + and mb.pk_country = #{pkCountry} + and mb.pk_member = #{pkMember} + order by mb.default_card desc diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml index 05a3d358..6f10800f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml @@ -34,19 +34,6 @@ - - - DEL_FLAG - , - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, PK_MEMBER, WITHDRAW_CODE, PK_ACCOUNT, PK_BANK, PK_RATE, CASH_AMOUNT, SERVICE_CHARGE, INCOME_TAX, - ISSUED_AMOUNT,APPROVE_STATE, PAYMENT_TIME, PAYER, REMARKS, APPROVER, APPROVE_TIME, PK_ROLE, ROLE_NAME,STATUS,PAYER_REMARKS,APPROVE_REMARKS - - SELECT r.*, m.member_code memberCode, diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java index 775d54e6..13dbece2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java @@ -4,21 +4,15 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.system.sys.dto.LoginUser; /** - * @Description: 撤单的service - * @Author: sui q - * @Time: 2022/10/27 10:49 - * @Classname: ISaOrderRevokeService - * @PackageName: com.hzs.sale.order.service + * 撤单的service */ public interface ISaOrderRevokeService { /** * 撤销订单 - * @param saOrder 需要销售的订单信息 + * + * @param saOrder 需要销售的订单信息 * @param loginUser 登录用户 - * @return: void - * @Author: sui q - * @Date: 2022/10/27 10:51 - */ + */ void revokeSaOrder(SaOrder saOrder, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java index b3b219ed..1c4c8623 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java @@ -1,10 +1,8 @@ package com.hzs.sale.order.service.impl; import cn.hutool.json.JSONUtil; -import com.google.gson.JsonObject; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.order.service.ISaOrderRevokeService; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -13,17 +11,13 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.stereotype.Service; /** - * @Description: 撤单逻辑类 - * @Author: sui q - * @Time: 2022/10/27 10:50 - * @Classname: SaOrderRevokeServiceImpl - * @PackageName: com.hzs.sale.order.service.impl + * 撤单逻辑类 */ @Service public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { @DubboReference - private IApprovalServiceApi approvalServiceApi; + IApprovalServiceApi iApprovalServiceApi; @Override public void revokeSaOrder(SaOrder saOrder, LoginUser loginUser) { @@ -32,6 +26,6 @@ public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { .businessCode(saOrder.getOrderCode()) .businessData(JSONUtil.toJsonStr(saOrder)) .build(); - approvalServiceApi.submit(approvalSubmitDTO, loginUser); + iApprovalServiceApi.submit(approvalSubmitDTO, loginUser); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java index d5f146cc..314bf7b7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java @@ -13,12 +13,6 @@ import java.util.List; /** * 交易配置 - * - * @Description: - * @Author: ljc - * @Time: 2023/8/18 11:14 - * @Classname: BdTradeConfigVO - * @Package_name: com.hzs.system.config.vo */ @Data @AllArgsConstructor @@ -42,7 +36,6 @@ public class BdTradeConfigVO implements Serializable { /** * 1:提现 2:转账 (来源枚举EBusinessModule) */ - @Transaction(transactionKey = EnumsPrefixConstants.BUSINESS_MODULE) private Integer businessModule; private String businessModuleVal; diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index 954eb6b4..e862096d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -2305,15 +2305,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - @GetMapping("/get-grant-way") - public AjaxResult getGrantWay() { - List enumEntityList = new ArrayList<>(); - for (EGrantWay value : EGrantWay.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.GRANT_WAY_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 数据类型(安置) @@ -2410,7 +2401,7 @@ public class EnumsController extends BaseController { public AjaxResult businessModule() { List enumEntityList = new ArrayList<>(); for (EBusinessModule value : EBusinessModule.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.BUSINESS_MODULE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 095fc008..ef289eec 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -576,11 +576,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 交易配置 业务类型 - for (EBusinessModule value : EBusinessModule.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 点位状态 for (EPointStatus value : EPointStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml index 4f67ce1b..9404d999 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml @@ -2,27 +2,4 @@ - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, PK_WITHDRAWAL, LOWER_BOUND, UPPER_BOUND - - diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java index a6c2032b..44f909c1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java @@ -816,11 +816,6 @@ public class EnumsPrefixConstants { */ public static final String RATIO_TYPE = "ENU_R_T_"; - /** - * 抽奖奖品发放方式 - */ - public static final String GRANT_WAY_TYPE = "GRANT_WAY_TYPE_"; - /** * 数据类型(业绩查询) */ @@ -831,11 +826,6 @@ public class EnumsPrefixConstants { */ public static final String RECOMMEND_DADA_TYPE = "ENU_R_D_T_"; - /** - * 交易配置 业务类型 - */ - public static final String BUSINESS_MODULE = "ENU_B_M_"; - /** * 点位状态 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java index 27824c19..6d69423b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java @@ -125,11 +125,6 @@ public class FinanceMsgConstants { */ public static final String RECHAGER_IMPOR_CODE_ERROR = "编号导入有误,请核对!"; - /** - * 导入的编号未支付,请核对! -- 导入的编号未支付,请核对! - */ - public static final String RECHAGER_NO_PAY = "导入的编号未支付,请核对!"; - /** * 钱包明细导出 -- 钱包明细导出 */ @@ -198,56 +193,16 @@ public class FinanceMsgConstants { */ public static final String CONFIGURE_WITHDRAWAL_INFO = "请配置提现信息"; - /** - * 请绑定银行卡 -- 请绑定银行卡 - */ - public static final String BIND_BANK_CARD = "请绑定银行卡"; - - /** - * 暂时不请允许提现,请先升级 -- 暂时不请允许提现,请先升级 - */ - public static final String NOT_WITHDRAWAL_UPGRADE = "暂时不请允许提现,请先升级"; - /** * 请选择提现账户 -- 请选择提现账户 */ public static final String SELECT_WITHDRAWAL_ACCOUNT = "请选择提现账户"; - /** - * 不允许提现 -- 不允许提现 - */ - public static final String NOT_ALLOWED_WITHDRAWAL = "不允许提现"; - - /** - * 超过提现次数 -- 超过提现次数 - */ - public static final String EXCEEDING_WITHDRAWALS_NUMBER = "超过提现次数"; - - /** - * 请配置提现金额限制 -- 请配置提现金额限制 - */ - public static final String CONFIGURE_WITHDRAWAL_AMOUNT_LIMIT = "请配置提现金额限制"; - /** * 请输入提现金额 -- 请输入提现金额 */ public static final String ENTER_WITHDRAWAL_AMOUNT = "请输入提现金额"; - /** - * 请输入整数值 -- 请输入整数值 - */ - public static final String ENTER_INTEGER_VALUE = "请输入整数值"; - - /** - * 提现金额必须大于最低提现金额 -- 提现金额必须大于最低提现金额 - */ - public static final String WITHDRAWAL_AMOUNT_GREATER_MINIMUM_AMOUNT = "提现金额必须大于最低提现金额"; - - /** - * 提现金额必须小于最高提现金额 -- 提现金额必须小于最高提现金额 - */ - public static final String WITHDRAWAL_AMOUNT_LESS_MAXIMUM_AMOUNT = "提现金额必须小于最高提现金额"; - /** * 余额不足 -- 余额不足 */ @@ -263,11 +218,6 @@ public class FinanceMsgConstants { */ public static final String TRANSFER_OUT_ACCOUNT_NOT_EMPTY = "请选择要转出的账户"; - /** - * 转账金额有误 -- 转账金额有误 - */ - public static final String INCORRECT_TRANSFER_AMOUNT = "转账金额有误"; - /** * 转账金额不能低于0且小数位数最多只能有2位 @@ -293,11 +243,6 @@ public class FinanceMsgConstants { */ public static final String NOT_ALLOWED_TRANSFER = "该账号不允许转账"; - /** - * 请先实名认证 -- 请先实名认证 - */ - public static final String REAL_NAME_NOT_EXIST = "请先实名认证"; - /** * 实名认证的真实姓名与营业执照的法人姓名是不一致 -- 法人姓名与实名认证的真实姓名不一致 */ @@ -331,26 +276,11 @@ public class FinanceMsgConstants { */ public static final String RECHARGE_DETAILS_EXPORT = "充值明细导出"; - /** - * 银行卡号不能为空 -- 银行卡号不能为空! - */ - public static final String BANK_CARD_CANNOT_EMPTY = "银行卡号不能为空!"; - - /** - * 开户名不能为空 -- 开户名不能为空! - */ - public static final String ACCOUNT_NAME_CANNOT_EMPTY = "开户名不能为空!"; - /** * 验证码不能为空 -- 验证码不能为空! */ public static final String VERIFICATION_CODE_CANNOT_EMPTY = "验证码不能为空!"; - /** - * 开户支行不能为空 -- 开户支行不能为空! - */ - public static final String OPENING_BRANCH_CANNOT_EMPTY = "开户支行不能为空!"; - /** * 开户支行不能为空 -- 真实姓名不能为空! */ @@ -444,16 +374,6 @@ public class FinanceMsgConstants { */ public static final String BUSINESS_LICENSE_REFUSE_RESET = "营业执照审核未通过,请勿操作重置"; - /** - * 提现正在审批中,请稍后再试 -- 提现正在审批中,请稍后再试 - */ - public static final String WITHDRAWAL_APPROVAL = "提现正在审批中,请稍后再试"; - - /** - * 提现金额必须为100的整数倍 - */ - public static final String WITHDRAW_AMOUNT_MULTIPLE = "提现金额必须为100的整数倍"; - /** * 身份证的图片地址不能为空 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java index 61c190f4..410f9701 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java @@ -5,12 +5,6 @@ import lombok.Getter; /** * 银行卡默认状态 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/9 15:14 - * @Classname: EBankCardStatus - * @Package_name: com.hzs.common.core.enums */ @Getter @AllArgsConstructor diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java index 91130611..801297d0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java @@ -1,17 +1,10 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; /** * 交易配置 业务类型 - * - * @Description: - * @Author: ljc - * @Time: 2023/8/18 10:01 - * @Classname: EBusinessModule - * @Package_name: com.hzs.common.core.enums */ @AllArgsConstructor @Getter @@ -20,11 +13,11 @@ public enum EBusinessModule { /** * 1=提现 */ - WITHDRAWAL(1, "提现", 0, EnumsPrefixConstants.BUSINESS_MODULE + "1"), + WITHDRAWAL(1, "提现", 0), /** * 2=转账 */ - TRANSFER_ACCOUNTS(2, "转账", 0, EnumsPrefixConstants.BUSINESS_MODULE + "2"), + TRANSFER_ACCOUNTS(2, "转账", 0), ; @@ -40,9 +33,5 @@ public enum EBusinessModule { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java deleted file mode 100644 index afc00e92..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.common.core.enums; - -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/15 10:57 - * @Classname: EGrantWay - * @PackageName: com.hzs.common.core.enums - */ -@AllArgsConstructor -@Getter -public enum EGrantWay { - /** - * 商品展示 - */ - TYPE_0(0, "实物", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "0"), - - TYPE_1(1, "消费账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "1"), - - TYPE_2(2, "现金账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "2"), - - TYPE_6(6, "积分账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "6"), - - TYPE_8(8, "复购券", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "8"), - - TYPE_11(11, "直播代金券", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "11"); - - - /** - * 实际值 - */ - private final int value; - /** - * 显示标签 - */ - private final String label; - /** - * 是否启用(0=是,1=否) -- 来源EYesNo - */ - private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java index eb961803..4b3bf74e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java @@ -11,12 +11,7 @@ import lombok.experimental.Accessors; import java.util.Date; /** - *

* 会员信息-银行卡信息 - *

- * - * @author hzs - * @since 2022-08-31 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java b/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java deleted file mode 100644 index 01228656..00000000 --- a/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.hzs.third.bankcard.common; - -import lombok.Data; - -/** - * 银行卡验证返回状态 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/25 10:42 - * @Classname: HttpConstant - * @Package_name: com.hz.bankCard.common - */ -@Data -public class HttpConstant { - /** - * 一致 - */ - public static final String BANK_CARD_SAME = "1200"; - /** - * 不一致 - */ - public static final String BANK_CARD_DIFFERENT = "1201"; - - - /** - * 银行卡状态错误 - */ - public static final String BANK_CARD_STATUS_EEOR = "1203"; - - /** - * 验证失败 - */ - public static final String BANK_CARD_FAIL = "1206"; - - - /** - * 验证错误 - */ - public static final String BANK_CARD_EEOR = "1206"; - -} diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java b/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java index 6fa5497c..75e4560b 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java @@ -4,29 +4,21 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.utils.StringUtils; import com.hzs.third.bankcard.IBankCardServiceApi; import com.hzs.third.bankcard.dto.BankCardParam; -import com.hzs.third.bankcard.service.BankCardService; +import com.hzs.third.bankcard.service.IBankCardService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** * 银行卡四要素验证服务 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/9 9:05 - * @Classname: BankCardValidateProvider - * @Package_name: com.hzs.third.bankCard.provider */ - @DubboService public class BankCardValidateProvider implements IBankCardServiceApi { @Autowired - BankCardService bankCardService; + private IBankCardService iBankCardService; @Override - public R verifyBankCard(BankCardParam bankCardParam) { - + public R verifyBankCard(BankCardParam bankCardParam) { if (StringUtils.isEmpty(bankCardParam.getIdCard())) { return R.fail("身份证号码不能为空!"); } @@ -36,12 +28,10 @@ public class BankCardValidateProvider implements IBankCardServiceApi { if (StringUtils.isEmpty(bankCardParam.getMobile())) { return R.fail("手机号不能为空!"); } - if (StringUtils.isEmpty(bankCardParam.getBankCard())) { return R.fail("银行卡号不能为空!"); } - return bankCardService.verifyBankCard(bankCardParam); + return iBankCardService.verifyBankCard(bankCardParam); } - } diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java b/bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java similarity index 55% rename from bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java rename to bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java index d799a331..bf98d7a7 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java @@ -5,14 +5,8 @@ import com.hzs.third.bankcard.dto.BankCardParam; /** * 银行卡验证接口 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/24 18:03 - * @Classname: BankCardService - * @Package_name: com.hz.bankCard.service.impl */ -public interface BankCardService { +public interface IBankCardService { /** * 银行卡四要素校验 @@ -20,5 +14,6 @@ public interface BankCardService { * @param bankCardParam 入参 * @return BankCardVO */ - R verifyBankCard(BankCardParam bankCardParam); + R verifyBankCard(BankCardParam bankCardParam); + } diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java b/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java index e046de5e..f5743b06 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java @@ -1,16 +1,14 @@ package com.hzs.third.bankcard.service.impl; - import cn.hutool.http.Header; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.domain.R; -import com.hzs.third.bankcard.common.HttpConstant; import com.hzs.third.bankcard.dto.BankCardParam; -import com.hzs.third.bankcard.service.BankCardService; +import com.hzs.third.bankcard.service.IBankCardService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -20,16 +18,10 @@ import java.util.Map; /** * 银行卡验证接口 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/24 18:14 - * @Classname: BankCardServiceImpl - * @Package_name: com.hz.bankCard.service.impl */ @Slf4j @Service -public class BankCardServiceImpl implements BankCardService { +public class BankCardServiceImpl implements IBankCardService { @Value("${bankCard.url}") private String url; @@ -39,65 +31,53 @@ public class BankCardServiceImpl implements BankCardService { private String appCode; @Override - public R verifyBankCard(BankCardParam bankCardParam) { - String authorization = "APPCODE " + appCode; - HttpResponse response = HttpRequest.post(url) - .header(Header.AUTHORIZATION, authorization) - .header(Header.CONTENT_TYPE, "application/x-www-form-urlencoded; charset=UTF-8") - .form(getInParam(bankCardParam)) - .timeout(20000) - .execute(); - return parseResult(response, bankCardParam); - } + public R verifyBankCard(BankCardParam bankCardParam) { + Map param = new HashMap<>(); + param.put("bankcard", bankCardParam.getBankCard()); + param.put("idcard", bankCardParam.getIdCard()); + param.put("name", bankCardParam.getName()); + param.put("mobile", bankCardParam.getMobile()); + HttpResponse response = HttpRequest.post(url) + .header(Header.AUTHORIZATION, "APPCODE " + appCode) + .header(Header.CONTENT_TYPE, "application/x-www-form-urlencoded; charset=UTF-8") + .form(param) + .timeout(10000) + .execute(); + return parseResult(response); + } /** * 解析返回的结果集 - *

- * 1200 银行卡验证一致 收费 - * 1201 银行卡验证不一致 收费 - * 1203 银行卡状态错误 收费 - * 1206 验证失败 免费 - * - * @param response 响应信息 - * @return bankCardVO */ - private R parseResult(HttpResponse response, BankCardParam bankCardParam) { + private R parseResult(HttpResponse response) { String result = response.body(); - log.info("调用接口返回信息: " + result); - if (response.getStatus() == HttpStatus.SUCCESS) { - JsonObject resultJson = JsonParser.parseString(result).getAsJsonObject(); - //状态码 - String code = resultJson.get("code").getAsString(); - //返回信息 - String message = resultJson.get("message").getAsString(); - if (code.equals(HttpConstant.BANK_CARD_SAME)) { - return R.ok(); + log.info("调用银行卡认证接口返回信息: " + result); + + if (HttpStatus.SUCCESS == response.getStatus()) { + JSONObject resultObj = JSONUtil.parseObj(result); + if ("200".equals(resultObj.getStr("code"))) { + // 返回成功 + JSONObject dataObj = resultObj.getJSONObject("data"); + int resultInt = dataObj.getInt("result"); + if (resultInt == 0) { + // 一致 + return R.ok(); + } else if (resultInt == 1) { + // 不一致 + return R.fail("银行卡预留信息不一致,请确认后重试"); + } else { + // 查不到卡信息 + return R.fail("银行卡信息不存在,请确认银行卡是否有效"); + } } else { - log.info("银行卡四要素校验接口正常返回状态值: {},信息为: {}", code, message); - return R.fail(message); + // 返回失败 + return R.fail(resultObj.getStr("msg")); } } else { - String message = "认证失败"; - log.info("银行卡四要素校验接口异常返回状态值: {},信息为: {}", response.getStatus(), message); - return R.fail(message); + log.error("调用银行卡认证接口失败"); + return R.fail("银行卡认证失败,请重试"); } } - /** - * 获取入参 - * - * @param bankCardParam 银行卡入参 - * @return String - */ - private Map getInParam(BankCardParam bankCardParam) { - JsonObject jsonObject = new JsonObject(); - jsonObject.addProperty("name", bankCardParam.getName()); - jsonObject.addProperty("mobile", bankCardParam.getMobile()); - jsonObject.addProperty("bankcard", bankCardParam.getBankCard()); - jsonObject.addProperty("idcard", bankCardParam.getIdCard()); - Map param = new HashMap<>(); - param.put("biz_content", jsonObject.toString()); - return param; - } } diff --git a/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java b/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java index c194b376..88def8ca 100644 --- a/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java @@ -20,12 +20,8 @@ import java.util.List; import java.util.Map; /** - * @Description: 快递100 - * @Author: ljc - * @Date: 2022/8/24 14:38 - * @Version:1.0 + * 快递100 */ - @Service @Slf4j public class ExpressServiceImpl implements IExpressService { @@ -33,7 +29,6 @@ public class ExpressServiceImpl implements IExpressService { @Autowired private ExpressConfig expressConfig; - @Override public R expressTrackInfo(String trackingNumber, String mobile) { String customer = expressConfig.getCustomer(); @@ -41,7 +36,6 @@ public class ExpressServiceImpl implements IExpressService { String url = expressConfig.getUrl(); QueryTrackParam queryTrackParam = new QueryTrackParam(); - // queryTrackParam.setCom("JD"); queryTrackParam.setNum(trackingNumber); queryTrackParam.setPhone(mobile); String param = new Gson().toJson(queryTrackParam); @@ -119,10 +113,9 @@ public class ExpressServiceImpl implements IExpressService { * @return String */ private String querySign(String param, String key, String customer) { - StringBuilder sb = new StringBuilder(); - sb.append(param); - sb.append(key); - sb.append(customer); - return sign(sb.toString()); + String sb = param + + key + + customer; + return sign(sb); } } From 158c5e8a9b486a3739139431ff909fbbe0fcb881 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 17 Sep 2025 13:49:51 +0800 Subject: [PATCH 162/362] =?UTF-8?q?##=20=E6=AF=8F=E5=A4=A9=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E7=BB=93=E7=AE=97=E6=98=8E=E7=BB=86=E8=A1=A8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../achieve/mapper/CuMemberTreeMapper.java | 16 +++- .../service/impl/CuMemberTreeServiceImpl.java | 9 +- .../bonus/achieve/CuMemberTreeMapper.xml | 57 +++++++++++- .../core/constant/TableNameConstants.java | 6 +- .../member/achieve/CuMemberRetailDetail.java | 92 +++++++++++++++++++ 5 files changed, 174 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 0483be60..3dc69543 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -21,12 +21,26 @@ public interface CuMemberTreeMapper extends BaseMapper { void createCuMemberTreeTable(String tableName); /** - * 创建会员网体结算记录表(按照日记录,每天一条,记录30天的) + * 创建会员结算记录表(按照日记录,每天一条) * * @param tableName 日期 */ void createCuMemberSettleTable(String tableName); + /** + * 创建结算明细表 + * + * @param tableName + */ + void createCuMemberRetailDetail(String tableName); + + /** + * 创建结算明细表会员索引 + * + * @param tableName + */ + void createCuMemberRetailDetailMemberIndex(String tableName); + /* * 创建会员网体复购极差结算表 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index b4dddc1f..4e3a2ac0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -54,8 +54,13 @@ public class CuMemberTreeServiceImpl extends ServiceImpl - period - NUMBER(6) default 0 not null, + period NUMBER(6) default 0 not null, pk_member NUMBER(20) not null, pk_parent NUMBER(20) not null, pk_place_parent NUMBER(20), @@ -289,6 +288,60 @@ ) + + + create table ${tableName} + ( + pk_id NUMBER(20) primary key, + pk_member NUMBER(20) not null, + child_node NUMBER(8) not null, + pk_parent NUMBER(20) not null, + stage NUMBER(1) default 1 not null, + stage_status NUMBER(1) default 1 not null, + stage_date DATE, + point_11 NUMBER(20), + point_12 NUMBER(20), + point_21 NUMBER(20), + point_22 NUMBER(20), + point_23 NUMBER(20), + point_24 NUMBER(20), + point_31 NUMBER(20), + point_32 NUMBER(20), + point_33 NUMBER(20), + point_34 NUMBER(20), + point_35 NUMBER(20), + point_36 NUMBER(20), + point_37 NUMBER(20), + point_38 NUMBER(20), + point_member_11 NUMBER(20), + point_member_12 NUMBER(20), + point_member_21 NUMBER(20), + point_member_22 NUMBER(20), + point_member_23 NUMBER(20), + point_member_24 NUMBER(20), + point_member_31 NUMBER(20), + point_member_32 NUMBER(20), + point_member_33 NUMBER(20), + point_member_34 NUMBER(20), + point_member_35 NUMBER(20), + point_member_36 NUMBER(20), + point_member_37 NUMBER(20), + point_member_38 NUMBER(20), + point_type NUMBER(1) default 0 not null, + point_gift NUMBER(1) default 0 not null, + creation_time DATE + ) + + + + + create index ${tableName}_MEMBER + on ${tableName} + ( + PK_MEMBER + ) + + create index ${tableName}_parent on diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java index 59771dc9..fd74ffa2 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java @@ -31,9 +31,13 @@ public class TableNameConstants { public static final String CU_MEMBER_SETTLE = "cu_member_settle"; /** - * 会员级差计算表 + * 会员结算表 */ public static final String CU_MEMBER_RETAIL_RANGE = "CU_MEMBER_RETAIL"; + /** + * 会员结算明细表 + */ + public static final String CU_MEMBER_RETAIL_RANGE_DETAIL = "CU_MEMBER_RETAIL_DETAIL"; /** * 会员结算秒结表 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index eb417641..5d262b07 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -7,6 +7,8 @@ import java.util.Date; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.web.domain.BaseEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -147,6 +149,90 @@ public class CuMemberRetailDetail extends BaseEntity { @TableField("POINT_38") private Long point38; + /** + * 点位1-1会员 + */ + @TableField("POINT_MEMBER_11") + private Long pointMember11; + + /** + * 点位1-2会员 + */ + @TableField("POINT_MEMBER_12") + private Long pointMember12; + + /** + * 点位2-1会员 + */ + @TableField("POINT_MEMBER_21") + private Long pointMember21; + + /** + * 点位2-2会员 + */ + @TableField("POINT_MEMBER_22") + private Long pointMember22; + + /** + * 点位2-3会员 + */ + @TableField("POINT_MEMBER_23") + private Long pointMember23; + + /** + * 点位2-4会员 + */ + @TableField("POINT_MEMBER_24") + private Long pointMember24; + + /** + * 点位3-1会员 + */ + @TableField("POINT_MEMBER_31") + private Long pointMember31; + + /** + * 点位3-2会员 + */ + @TableField("POINT_MEMBER_32") + private Long pointMember32; + + /** + * 点位3-3会员 + */ + @TableField("POINT_MEMBER_33") + private Long pointMember33; + + /** + * 点位3-4会员 + */ + @TableField("POINT_MEMBER_34") + private Long pointMember34; + + /** + * 点位3-5会员 + */ + @TableField("POINT_MEMBER_35") + private Long pointMember35; + + /** + * 点位3-6会员 + */ + @TableField("POINT_MEMBER_36") + private Long pointMember36; + + /** + * 点位3-7会员 + */ + @TableField("POINT_MEMBER_37") + private Long pointMember37; + + /** + * 点位3-8会员 + */ + @TableField("POINT_MEMBER_38") + private Long pointMember38; + /** * 点位类型(0=普通,1=赠送点位) */ @@ -159,5 +245,11 @@ public class CuMemberRetailDetail extends BaseEntity { @TableField("POINT_GIFT") private Integer pointGift; + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @TableField("CREATION_TIME") + private Date creationTime; } From 6278a2429e244381497b9be86b3bf202e8432ef2 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 9 Sep 2025 17:00:12 +0800 Subject: [PATCH 163/362] =?UTF-8?q?##=20=E8=B0=83=E6=8D=A2=E8=B4=A7?= =?UTF-8?q?=E7=89=A9=E5=92=8C=E4=B8=9A=E7=BB=A9=E6=B1=87=E6=80=BB=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=E6=9C=80=E6=96=B0=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberServiceImpl.java | 8 +++- .../census/param/CensusSummaryParam.java | 4 ++ .../mapper/member/base/CuMemberMapper.xml | 4 +- .../impl/OrderBusinessServiceImpl.java | 47 +++++-------------- .../constant/msg/SaOrderMsgConstants.java | 4 ++ 5 files changed, 29 insertions(+), 38 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 16c5a8e1..1302b52f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3196,7 +3196,13 @@ public class CuMemberServiceImpl extends ServiceImpl i // 根据类型查询所有人各类型的订单业绩汇总 List censusSummaryList = new ArrayList<>(); for (String day : days) { - censusSummaryParam.setTime(day); + censusSummaryParam.setTime(day);// 将体系转换成集合类型 + if (censusSummaryParam.getPkBdVertexStr() != null) { + censusSummaryParam.setPkBdVertexStrList(Arrays.stream(censusSummaryParam.getPkBdVertexStr().split(",")) + .map(Integer::valueOf) + .collect(Collectors.toList())); + } + List memberMeritsSummaryVoList = baseMapper.queryDateBySummary(censusSummaryParam); Map memberMeritsSummaryMap = memberMeritsSummaryVoList.stream().collect(Collectors.toMap(MemberMeritsSummaryVo::getOrderType, Function.identity())); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java index d5073e16..64916347 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java @@ -51,5 +51,9 @@ public class CensusSummaryParam { * 体系 */ private String pkBdVertexStr; + /** + * 体系集合 + */ + private List pkBdVertexStrList; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index f257100c..fd5d09fd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2368,9 +2368,9 @@ and sa.del_flag = 0 and to_char(sa.pay_time, 'yyyy-mm-dd') = #{time} and sa.pk_country = #{pkCountry} - + and cm.pk_vertex in - + #{item} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index 8ca11306..51f39589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -573,12 +573,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 操作日志内容 @@ -644,16 +644,14 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return "订单已经发货,不能进行调换货物"; } - // 是否扣款 - boolean orderCostFlag = false; + // 修改前的订单金额 + 邮费 BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 + // 校验订单原订单价格和调换完货之后的价格不相同不进行换货 if (beforeAmount.compareTo(afterAmount) != 0) { - // 修改前后金额不相同则进行处理 - orderCostFlag = true; + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -662,13 +660,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { changeIdList, noChangeIdList, userId, pkCountry, nowDate); - if (orderCostFlag) { - // 订单调换货物扣费处理 - R resultR = iMemberAccountServiceApi.orderChangeProduct(saOrder, updateOrder, userId, dto); - if (!resultR.isSuccess()) { - throw new BaseException(resultR.getMsg()); - } - } else if (null != dto) { + if (null != dto) { // 订单总价未变化,但是需要手续费 R resultR = iMemberAccountServiceApi.orderChangeProduct(null, null, userId, dto); if (!resultR.isSuccess()) { @@ -701,12 +693,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单收货地址信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 涉及会员ID列表 @@ -751,24 +743,9 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 - if (beforeAmount.compareTo(afterAmount) < 0) { - // 存在差额 - // 封装订单数据 - SaOrder updateOrder = BeanUtil.copyProperties(saOrder, SaOrder.class); - updateOrder.setPkId(saOrder.getPkId()); - updateOrder.setOrderAmount(afterData.getOrderAmount()); - updateOrder.setOrderAchieve(afterData.getOrderAchieve()); - updateOrder.setOrderAssAchieve(afterData.getOrderAssAchieve()); - updateOrder.setPostage(param.getPostage()); - updateOrder.setPkModified(userId); - updateOrder.setModifiedTime(nowDate); - - // 校验订单支付金额是否足够 - R resultR = iMemberAccountServiceApi.orderChangeProductPre(saOrder, updateOrder); - if (!resultR.isSuccess()) { - return resultR.getMsg(); - } + //校验订单原订单价格和调换完货之后的价格不相同不进行换货 + if (beforeAmount.compareTo(afterAmount) != 0) { + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -782,7 +759,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } return submitStr; } - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED); + return CommonMsgConstants.OPERATION_FAILED; } @Transactional(rollbackFor = Exception.class) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java index a380a975..cb607c19 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/SaOrderMsgConstants.java @@ -172,5 +172,9 @@ public class SaOrderMsgConstants { * 商品预售数量不足 */ public static final String WARES_PRE_SALE_QUANTITY_LACK = "商品预售数量不足"; + /** + * 原订单价格和调换完货之后的价格不相同 -- 不允许货物调换 + */ + public static final String PRODUCT_CONFIRM_PRICE = "原订单价格和调换完货之后的价格不相同"; } From 97205a139d646eb4746ff0f00d8584015a9564fa Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 17:24:01 +0800 Subject: [PATCH 164/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E5=8E=9F?= =?UTF-8?q?=E5=A4=8D=E8=B4=AD=E7=BA=A7=E5=B7=AE=EF=BC=9B=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E6=97=A5=E7=BB=93=E6=98=8E=E7=BB=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 11 ++ .../achieve/mapper/CuMemberTreeMapper.java | 10 -- .../service/ICuMemberRetailDetailService.java | 11 ++ .../achieve/service/ICuMemberTreeService.java | 5 - .../impl/CuMemberAchieveServiceImpl.java | 18 +- .../impl/CuMemberRetailDetailServiceImpl.java | 15 ++ .../service/impl/CuMemberTreeServiceImpl.java | 16 +- .../service/impl/BonusSettleRangeHandle.java | 6 - .../impl/CuMemberAwardsServiceImpl.java | 6 - .../bonus/order/mapper/BonusOrderMapper.java | 8 - .../order/service/IBonusOrderService.java | 8 - .../service/impl/BonusOrderServiceImpl.java | 22 --- .../achieve/CuMemberRetailDetailMapper.xml | 6 + .../achieve/CuMemberRetailRangeMapper.xml | 66 ++----- .../bonus/achieve/CuMemberTreeMapper.xml | 42 ++--- .../mapper/bonus/order/BonusOrderMapper.xml | 68 -------- .../achieve/CuMemberRetailRangeMapper.xml | 4 +- .../core/constant/TableNameConstants.java | 5 - .../member/achieve/CuMemberRetailDetail.java | 163 ++++++++++++++++++ .../member/achieve/CuMemberRetailRange.java | 12 -- .../achieve/ext/CuMemberRetailRangeExt.java | 5 - .../domain/sale/ext/SaOrderItemsExt.java | 7 - .../domain/sale/wares/ext/WaresRangeTmp.java | 23 --- .../src/test/java/com/CodeGenerator.java | 6 +- 24 files changed, 251 insertions(+), 292 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java create mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java new file mode 100644 index 00000000..7f09bf4d --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.achieve.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; + +/** + * 日结算阶段表 Mapper 接口 + */ +public interface CuMemberRetailDetailMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 460ac6f8..0483be60 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -111,16 +111,6 @@ public interface CuMemberTreeMapper extends BaseMapper { void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate, @Param("awardType") Integer awardType); - /** - * 初始化期间奖衔 - */ - void updateCuMemberRetailRangeInitAward(@Param("rangeTableName") String rangeTableName); - - /** - * 初始化期间V5奖衔 - */ - void updateCuMemberRetailRangeInitV5Award(@Param("rangeTableName") String rangeTableName); - /** * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java new file mode 100644 index 00000000..d849d643 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.achieve.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; + +/** + * 日结算阶段表 服务类 + */ +public interface ICuMemberRetailDetailService extends IService { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java index f0a75a87..0e1ae3fd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java @@ -49,11 +49,6 @@ public interface ICuMemberTreeService extends IService { **/ void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate); - /** - * 初始化期间奖衔 - */ - void updateCuMemberRetailRangeInitAward(String rangeTableName); - /** * 删除日表数据 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java index f549ae10..3c118301 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -99,15 +99,15 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl 0; i--) { - String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); - int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; - baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); - } +// String payTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, saOrder.getPayTime()); +// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(payTime).getPkId(); +// String sourceTable = TableNameConstants.CU_MEMBER_TREE + DateUtils.getMonth(payTime); +// for (int i = 7; i > 0; i--) { +// String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); +// int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); +// String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; +// baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); +// } return Boolean.TRUE; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java new file mode 100644 index 00000000..952b95c0 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -0,0 +1,15 @@ +package com.hzs.bonus.achieve.service.impl; + +import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import org.springframework.stereotype.Service; + +/** + * 日结算阶段表 服务实现类 + */ +@Service +public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index 0c2ef6e4..b4dddc1f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -38,11 +38,11 @@ public class CuMemberTreeServiceImpl extends ServiceImpl 0) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(repurchaseOrderList)) { - rangeOrderMap = iBonusOrderService.getWaresRange(repurchaseOrderList); - } - // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index e371188e..2656cf5b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -39,12 +39,6 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl orderType); - /** - * 查询订单商品级差数据 - * - * @param orderList 订单列表 - * @return - */ - List listOrderWaresRange(@Param("orderList") List orderList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index fac56c07..e1d60639 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -32,12 +32,4 @@ public interface IBonusOrderService { */ List listSaOrderByTime(Date startDate, Date endDate, List orderType); - /** - * 查询商品级差数据 - * - * @param orderList - * @return - */ - Map> getWaresRange(List orderList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index e08db6ba..b48d0481 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -41,26 +41,4 @@ public class BonusOrderServiceImpl implements IBonusOrderService { return bonusOrderMapper.listSaOrderByTime(startDate, endDate, orderType); } - @Override - public Map> getWaresRange(List orderList) { - Map> resultMap = new HashMap<>(); - - List resultList = new ArrayList<>(); - List> handleCutList = cuMemberBonusSettle.handleCutList(orderList, MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - resultList.addAll(bonusOrderMapper.listOrderWaresRange(orderList)); - }); - for (SaOrderItemsExt saOrderItemsExt : resultList) { - if (resultMap.containsKey(saOrderItemsExt.getPkOrder())) { - resultMap.get(saOrderItemsExt.getPkOrder()).add(saOrderItemsExt); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(saOrderItemsExt); - resultMap.put(saOrderItemsExt.getPkOrder(), tmpList); - } - } - - return resultMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml new file mode 100644 index 00000000..330b4b37 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index ca9ccfcb..2febe044 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -38,7 +38,6 @@ - @@ -50,12 +49,10 @@ - - @@ -76,12 +73,8 @@ team_num = 0, enable_status = 1, pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20), - region_address = 0, big_team_pv = 0, - small_team_pv = 0, - all_team_new_pv = 0, - all_team_consume_pv = 0, - all_team_month_pv = 0 + small_team_pv = 0 @@ -92,8 +85,7 @@ team_new_pv, team_consume_pv, team_month_pv, team_new_amount, team_consume_amount, team_month_amount, recommend_num, team_num, - big_team_pv, small_team_pv, - all_team_new_pv, all_team_consume_pv, all_team_month_pv + big_team_pv, small_team_pv from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -105,14 +97,11 @@ a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.pk_grade = b.pk_grade, a.enable_status = b.enable_status, - a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, - a.all_team_new_pv = b.all_team_new_pv, - a.all_team_consume_pv = b.all_team_consume_pv + a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv ,a.month_consume_pv = b.month_consume_pv ,a.team_month_pv = b.team_month_pv ,a.team_month_amount = b.team_month_amount - ,a.all_team_month_pv = b.all_team_month_pv @@ -124,10 +113,7 @@ #{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv, #{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv, #{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount, - #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status, - #{item.allTeamNewPv} all_team_new_pv, - #{item.allTeamConsumePv} all_team_consume_pv, - #{item.allTeamMonthPv} all_team_month_pv + #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status from dual ) b @@ -137,10 +123,7 @@ a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv, a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv, a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount, - a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status, - a.all_team_new_pv = b.all_team_new_pv, - a.all_team_consume_pv = b.all_team_consume_pv, - a.all_team_month_pv = b.all_team_month_pv + a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status @@ -204,9 +187,7 @@ #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newConsumePv} new_consume_pv, #{item.teamNewPv} team_new_pv, - #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status, - #{item.allNewConsumePv} all_new_consume_pv, - #{item.allTeamNewPv} all_team_new_pv + #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status from dual ) b @@ -216,9 +197,7 @@ a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, a.new_consume_pv = b.new_consume_pv, a.team_new_pv = b.team_new_pv, - a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status, - a.all_new_consume_pv = b.all_new_consume_pv, - a.all_team_new_pv = b.all_team_new_pv + a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status @@ -277,14 +256,10 @@ bwa.awards_value share_awards_value, a.big_team_pv, a.small_team_pv, - a.all_team_new_pv, - a.all_team_consume_pv, - a.all_team_month_pv, bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - br.name country_name, a.pk_vertex, bv.region_vertex_pk_id from ( @@ -298,8 +273,6 @@ on bw.pk_id = a.pk_awards left join bd_awards bwa on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 - left join bd_area br - on br.pk_id = a.region_address and br.del_flag = 0 left join bd_vertex bv on bv.pk_id = a.pk_vertex where ba.del_flag = 0 and bw.del_flag = 0 @@ -327,8 +300,6 @@ a.big_team_pv, a.small_team_pv, a.system_type, - a.all_team_consume_pv, - a.all_team_month_pv, new_consume_pv, consume_pv, month_consume_pv, @@ -348,8 +319,7 @@ bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, - bw.benefit_share_ratio, - br.name country_name + bw.benefit_share_ratio from ${tableName} a inner join bd_grade ba on a.pk_grade = ba.pk_id @@ -357,8 +327,6 @@ on bw.pk_id = a.pk_awards and bw.del_flag = 0 inner join bd_awards bws on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 - left join bd_area br - on br.pk_id = a.region_address and br.del_flag = 0 where ba.del_flag = 0 and a.pk_parent = #{pkParent} @@ -391,10 +359,6 @@ nvl(b.big_team_pv, 0) big_team_pv, nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - a.all_new_consume_pv, - a.all_team_new_pv, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, - nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv, bg.grade_value, bg.grade_name, bw.awards_value, @@ -404,8 +368,6 @@ bw.benefit_avg_ratio, bw.benefit_share_ratio, bws.awards_value share_awards_value, - br.name country_name, - cr.county region_address, bv.region_vertex_pk_id from ( select * @@ -422,10 +384,6 @@ on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 inner join bd_grade bg on bg.pk_id = a.pk_grade - left join cu_member_retail_region cr - on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 - left join bd_area br - on br.pk_id = cr.county and br.del_flag = 0 left join bd_vertex bv on bv.pk_id = cm.pk_vertex inner join bd_currency bt @@ -437,9 +395,7 @@ select cm.pk_id pk_member, cm.pk_parent, nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, - nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, - nvl(b.all_team_consume_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_consume_pv, - nvl(b.all_team_month_pv, 0) + nvl(a.all_team_new_pv, 0) all_team_month_pv + nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv from cu_member cm left join ${secondTableName} a on cm.pk_id = a.pk_member @@ -462,9 +418,7 @@ team_consume_amount, team_month_amount, big_team_pv, - small_team_pv, - all_team_consume_pv, - all_team_month_pv + small_team_pv from ${tableName} where pk_parent = #{pkParent} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 73124e8f..c6a47f7e 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -330,7 +330,7 @@ customer_type, phone, pk_grade, pk_awards, account_status, pay_status, category, purchase_status, income_status, pk_team_code, pk_center_code, pk_vertex, pk_settle_country, is_real_name, - pk_country, pk_rate, pay_time, region_address, system_type, enable_status) + pk_country, pk_rate, pay_time, system_type, enable_status) select cm.pk_id, pk_parent, member_code, @@ -352,7 +352,6 @@ cm.pk_country, nvl(bc.pk_id, -1) pk_rate, cm.pay_time, - nvl(cr.county, 0) country, cm.system_type, cm.is_activate from cu_member cm @@ -365,8 +364,6 @@ and effective_date <= sysdate group by pk_country) bc on cm.pk_settle_country = bc.pk_country - left join cu_member_retail_region cr - on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 where cm.del_flag = 0 @@ -441,25 +438,6 @@ - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 0), - pk_share_awards = (select pk_id from bd_awards where awards_value = 0) - - - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 5), - pk_share_awards = (select pk_id from bd_awards where awards_value = 5) - where pk_grade = ( - select pk_id - from bd_grade - where grade_value = 70 and del_flag = 0 - ) - - CREATE TABLE ${tableName} ( @@ -512,20 +490,30 @@ new_consume_pv number(17,6) default 0 not null, consume_pv number(17,6) default 0 not null, month_consume_pv number(17,6) default 0 not null, + new_consume_amount number(17,6) default 0 not null, + consume_amount number(17,6) default 0 not null, + month_consume_amount number(17,6) default 0 not null, + team_new_pv number(17,6) default 0 not null, team_consume_pv number(17,6) default 0 not null, team_month_pv number(17,6) default 0 not null, team_new_amount number(17,6) default 0 not null, team_consume_amount number(17,6) default 0 not null, team_month_amount number(17,6) default 0 not null, + recommend_num number(8) default 0 not null, team_num number(8) default 0 not null, - region_address number(8) default 0 not null, big_team_pv number(17,6) default 0 not null, small_team_pv number(17,6) default 0 not null, - all_team_new_pv number(17,6) default 0 not null, - all_team_consume_pv number(17,6) default 0 not null, - all_team_month_pv number(17,6) default 0 not null + + reg_consume_new_amount number(17,6) default 0 not null, + reg_consume_new_pv number(17,6) default 0 not null, + reg_team_new_amount number(17,6) default 0 not null, + reg_team_new_pv number(17,6) default 0 not null, + rep_consume_new_amount number(17,6) default 0 not null, + rep_consume_new_pv number(17,6) default 0 not null, + rep_team_new_amount number(17,6) default 0 not null, + rep_team_new_pv number(17,6) default 0 not null ) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 30cffac9..9f270851 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -328,72 +328,4 @@ and #{endDate} > so.pay_time - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index 26167ec1..94b2e756 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -483,8 +483,8 @@ currentMonth.ENABLE_STATUS, NVL( NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) todayPv, NVL( NVL( currentMonth.NEW_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_NEW_PV, 0 ), 0 ) yesterdayPv, - NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.ALL_TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, - NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.ALL_TEAM_MONTH_PV, 0 ) lastMonthPv + NVL( NVL( currentMonth.MONTH_CONSUME_PV, 0 ) + NVL( currentMonth.TEAM_MONTH_PV, 0 ) + NVL( currentDay.ALL_NEW_CONSUME_PV, 0 ) + NVL( currentDay.ALL_TEAM_NEW_PV, 0 ), 0 ) currentMonthPv, + NVL( lastMonth.MONTH_CONSUME_PV, 0 ) + NVL( lastMonth.TEAM_MONTH_PV, 0 ) lastMonthPv FROM cu_member cu LEFT JOIN ${param.currentDayTableName} currentDay ON cu.PK_ID = currentDay.PK_MEMBER diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java index 362a5a3f..59771dc9 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java @@ -30,11 +30,6 @@ public class TableNameConstants { */ public static final String CU_MEMBER_SETTLE = "cu_member_settle"; - /** - * 会员级差计算表 - */ - public static final String CU_MEMBER_RANGE = "CU_MEMBER_RANGE"; - /** * 会员级差计算表 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java new file mode 100644 index 00000000..eb417641 --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -0,0 +1,163 @@ +package com.hzs.common.domain.member.achieve; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; + +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * 日结算阶段表 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") +@TableName("CU_MEMBER_RETAIL_DETAIL") +public class CuMemberRetailDetail extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @TableId("PK_ID") + private Long pkId; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 会员子节点 + */ + @TableField("CHILD_NODE") + private Integer childNode; + + /** + * 推荐人 + */ + @TableField("PK_PARENT") + private Long pkParent; + + /** + * 三个阶段(1、2、3) + */ + @TableField("STAGE") + private Integer stage; + + /** + * 阶段状态(0=已完成,1=未完成) + */ + @TableField("STAGE_STATUS") + private Integer stageStatus; + + /** + * 阶段完成时间 + */ + @TableField("STAGE_DATE") + private Date stageDate; + + /** + * 点位1-1 + */ + @TableField("POINT_11") + private Long point11; + + /** + * 点位1-2 + */ + @TableField("POINT_12") + private Long point12; + + /** + * 点位2-1 + */ + @TableField("POINT_21") + private Long point21; + + /** + * 点位2-2 + */ + @TableField("POINT_22") + private Long point22; + + /** + * 点位2-3 + */ + @TableField("POINT_23") + private Long point23; + + /** + * 点位2-4 + */ + @TableField("POINT_24") + private Long point24; + + /** + * 点位3-1 + */ + @TableField("POINT_31") + private Long point31; + + /** + * 点位3-2 + */ + @TableField("POINT_32") + private Long point32; + + /** + * 点位3-3 + */ + @TableField("POINT_33") + private Long point33; + + /** + * 点位3-4 + */ + @TableField("POINT_34") + private Long point34; + + /** + * 点位3-5 + */ + @TableField("POINT_35") + private Long point35; + + /** + * 点位3-6 + */ + @TableField("POINT_36") + private Long point36; + + /** + * 点位3-7 + */ + @TableField("POINT_37") + private Long point37; + + /** + * 点位3-8 + */ + @TableField("POINT_38") + private Long point38; + + /** + * 点位类型(0=普通,1=赠送点位) + */ + @TableField("POINT_TYPE") + private Integer pointType; + + /** + * 赠点数量(三阶段走完赠送几个点位) + */ + @TableField("POINT_GIFT") + private Integer pointGift; + + +} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index 502dbcb8..6674ed4e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -107,12 +107,6 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("PK_RATE") private Integer pkRate; - /** - * 系统类型(2=新零售) - */ - @TableField("SYSTEM_TYPE") - private Integer systemType; - /** * 本人当天新消费pv */ @@ -173,12 +167,6 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("TEAM_NUM") private Integer teamNum; - /** - * 县级区域地址 - */ - @TableField("REGION_ADDRESS") - private Integer regionAddress; - @TableField("big_team_pv") private BigDecimal bigTeamPv; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 7b205f47..521ef441 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -72,11 +72,6 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal coachRatio; - /** - * 县级名称 - */ - private String countryName; - /** * 团队累计消费pv(不管激活,全累计) -- 日结使用 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java index 6bc02d02..9b37d21b 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/ext/SaOrderItemsExt.java @@ -3,13 +3,11 @@ package com.hzs.common.domain.sale.ext; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import com.hzs.common.domain.sale.order.SaOrderItems; -import com.hzs.common.domain.sale.wares.ext.WaresRangeTmp; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; import java.util.Date; -import java.util.List; /** * 订单详情扩展 @@ -179,9 +177,4 @@ public class SaOrderItemsExt extends SaOrderItems { */ private BigDecimal supplyPrice; - /** - * 极差数据 - */ - private List waresRangeTmpList; - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java deleted file mode 100644 index 07ffb509..00000000 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/ext/WaresRangeTmp.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.common.domain.sale.wares.ext; - -import lombok.Data; - -import java.math.BigDecimal; - -/** - * 极差明细临时实体 - */ -@Data -public class WaresRangeTmp { - - /** - * 价格 - */ - private BigDecimal rangePrice; - - /** - * 级别值 - */ - private Integer rangeValue; - -} diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index 085d10fd..5aae5688 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"BD_VERTEX_SYSTEM"}; + String[] tables = {"CU_MEMBER_RETAIL_DETAIL"}; // 生成实体是否继承统一父类 boolean superBool = true; @@ -50,8 +50,8 @@ public class CodeGenerator { // dsc.setSchemaName("public"); dataSourceConfig.setUrl("jdbc:oracle:thin:@101.201.51.180:1521/orcl") .setDriverName("oracle.jdbc.driver.OracleDriver") - .setUsername("retail") - .setPassword("pwRetailTest180") + .setUsername("cloud_zk") + .setPassword("pwCloudzk180") .setDbType(DbType.ORACLE); mpg.setDataSource(dataSourceConfig); From 464868338f51638f8817fd1f1719c2d6b81bad52 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 16 Sep 2025 17:07:19 +0800 Subject: [PATCH 165/362] =?UTF-8?q?##=20Opt=20-=20=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E6=B3=A8=E5=86=8C=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/IMemberServiceApi.java | 32 ++- .../com/hzs/member/base/dto/LoginMember.java | 6 + .../mapper/CuMemberRetailRangeMapper.java | 26 +++ .../service/ICuMemberRetailRangeService.java | 10 + .../impl/CuMemberRetailRangeServiceImpl.java | 19 ++ .../bonus/service/IBonusSettleService.java | 6 + .../service/impl/BonusSettleServiceImpl.java | 33 +++ .../bonus/listener/SaOrderSecondListener.java | 4 +- .../achieve/CuMemberRetailRangeMapper.xml | 44 ++++ .../controller/api/ApiMemberController.java | 61 ++++++ .../member/base/mapper/CuMemberMapper.java | 8 + .../base/provider/MemberServiceProvider.java | 39 ++++ .../service/ICuMemberRegisterService.java | 7 + .../member/base/service/ICuMemberService.java | 20 +- .../base/service/ICuMemberShareService.java | 7 +- .../impl/CuMemberRegisterServiceImpl.java | 10 + .../service/impl/CuMemberServiceImpl.java | 34 +++ .../impl/CuMemberShareServiceImpl.java | 7 + .../login/service/IMemberLoginService.java | 9 + .../service/impl/MemberLoginServiceImpl.java | 30 +++ .../controller/api/ApiShareController.java | 26 +++ .../RetailMemberTokenController.java | 78 ++++++- .../mapper/member/base/CuMemberMapper.xml | 15 ++ .../api/ApiRetailOrderController.java | 127 +++++++++++ .../service/impl/RetailOrderServiceImpl.java | 24 ++- .../retail/sale/param/RetailOrderParam.java | 4 + .../sale/param/RetailOrderRegisterParam.java | 10 +- .../com/hzs/retail/sale/vo/RetailOrderVO.java | 6 + .../api/ApiRetailWaresController.java | 157 +++++++++++++- .../retail/wares/param/WaresShareParam.java | 31 +++ .../order/param/FansConfirmOrderParam.java | 68 ++++++ .../order/param/FansConfirmOrderSkuParam.java | 21 ++ .../param/FansConfirmOrderWaresParam.java | 28 +++ .../controller/api/ApiBdWaresController.java | 129 ++++++++++++ .../hzs/sale/wares/mapper/BdWaresMapper.java | 13 ++ .../wares/mapper/BdWaresSpecsSkuMapper.java | 8 + .../sale/wares/service/IBdWaresService.java | 10 + .../service/IBdWaresSpecsSkuService.java | 9 + .../service/impl/BdWaresServiceImpl.java | 5 + .../impl/BdWaresSpecsSkuServiceImpl.java | 11 + .../mapper/sale/wares/BdWaresMapper.xml | 31 +++ .../sale/wares/BdWaresSpecsSkuMapper.xml | 19 ++ .../com/hzs/common/core/config/BdConfig.java | 71 +++---- .../common/core/constant/SysConstants.java | 5 + .../common/core/enums/EOrderTypeExtend.java | 38 ++++ .../com/hzs/common/core/enums/EShareType.java | 5 + .../security/service/MemberTokenService.java | 26 ++- bd-gateway/src/main/resources/bootstrap.yml | 6 + .../manage/OnlinePaymentController.java | 16 ++ .../pay/jdpay/dto/JdPayQueryOrderRequest.java | 27 +++ .../jdpay/dto/JdPayQueryOrderResponse.java | 197 ++++++++++++++++++ .../com/hzs/third/pay/jdpay/sdk/JdPay.java | 6 +- .../pay/jdpay/sdk/JdPayHttpClientProxy.java | 4 +- .../hzs/third/pay/service/IJdPayService.java | 9 + .../pay/service/impl/JdPayServiceImpl.java | 108 +++++++++- .../pay/service/impl/PayServiceImpl.java | 11 +- .../impl/TOnlinePaymentServiceImpl.java | 3 + .../com/hzs/third/pay/vo/OnlinePaymentVO.java | 2 +- .../service/impl/TShareCodeServiceImpl.java | 1 + 59 files changed, 1700 insertions(+), 77 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java create mode 100644 bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java create mode 100644 bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index 8c1b5711..f7e3544f 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -2,6 +2,8 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRegister; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -29,6 +31,14 @@ public interface IMemberServiceApi { */ R getMemberInfo(String memberCode); + /** + * 通过会员编码查询分享会员信息 + * + * @param memberCode 会员编号 + * @return + */ + R getShareMemberInfo(String memberCode); + /** * 根据会员ID获取会员信息(查库) * @@ -87,7 +97,6 @@ public interface IMemberServiceApi { * 撤销会员账户余额 **/ R cancelMemberAccount(Long pkMember, SaOrder saOrder); - /** * 查找安置人伞下 * @@ -163,6 +172,13 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember, SaOrderExt saOrder, Boolean isPay, CuMemberAccountExt cuMemberAccountExt); + /** + * 处理新会员,生成主键,跟会员编号 + * + * @param cuMember 会员 + */ + R createMemberIdAndCode(CuMember cuMember); + /** * 创建注册会员编号(放入会员编号批次占用) * @@ -204,6 +220,13 @@ public interface IMemberServiceApi { */ R> findMemberByMemberId(List pkMemberList, Integer pkCountry); + /** + * 根据会员主键查询会员注册信息 + * + * @param pkMember 会员主键 + */ + R queryCuMemberRegister(Long pkMember); + /* * 会员编号,账户类型,抽奖金额 **/ @@ -363,4 +386,11 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); + + /** + * 查询分享会员 + * + * @param pkMember 主键 + */ + R queryCuMemberShare(Long pkMember); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java index f1704da2..af3cb740 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java @@ -1,6 +1,7 @@ package com.hzs.member.base.dto; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberExt; import lombok.AllArgsConstructor; import lombok.Builder; @@ -63,6 +64,11 @@ public class LoginMember implements Serializable { */ private CuMemberExt cuMember; + /** + * 分享会员信息(分享注册会员使用) + */ + private CuMemberShare cuMemberShare; + /** * 结算国家(此字段实体不存值,只做部分业务传递参数使用) */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 79942ade..a5ae5617 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -3,6 +3,9 @@ package com.hzs.bonus.achieve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.sale.ext.SaOrderExt; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; @@ -82,4 +85,27 @@ public interface CuMemberRetailRangeMapper extends BaseMapper cuMemberRangeExtList); + /** + * 向上查找所有parentID + * @param pkMember + * @return + */ + List findParentMemberList(@Param("pkMember") Long pkMember); + + + /** + * 更新自己秒结 + * @param tableName + * @param orderExt + * @param cuMember + */ + void updateMemberRetailSecondRangeSelf(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("cuMember") CuMember cuMember, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + /** + * 更新上级秒结 + * @param tableName + * @param orderExt + * @param memberList + */ + void updateMemberRetailSecondRangeParent(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("memberList") List memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index ceec0067..83e54bc3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -3,7 +3,10 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.Date; @@ -70,4 +73,11 @@ public interface ICuMemberRetailRangeService extends IService cuMemberTreeMap); + + List findParentMemberList(Long pkMember); + + void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember pkMember, Integer updateType, String symbol); + + void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 5746913c..811c89f1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -97,6 +101,21 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberSecondRange(secondTableName, list)); } + @Override + public List findParentMemberList(Long pkMember) { + return baseMapper.findParentMemberList(pkMember); + } + + @Override + public void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember cuMember, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeSelf(settleTableName, orderExt, cuMember, updateType, symbol); + } + + @Override + public void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeParent(settleTableName, orderExt, pkMemberList, updateType, symbol); + } + private List> setUpdCuMemberTreeLists(Map cuMemberTreeMap) { List cuMemberTreeList = new ArrayList<>(); cuMemberTreeMap.forEach((key, value) -> cuMemberTreeList.add(value)); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java index 1c436461..89ab7099 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java @@ -22,4 +22,10 @@ public interface IBonusSettleService { */ void calculateCuMemberRetailRangeBonusBySaOrder(String orderCode); + /** + * 计算秒结表数据 + * @param orderExt + */ + void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index e9d42c35..7b62c281 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -1,7 +1,10 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.order.service.IBonusOrderService; @@ -9,7 +12,9 @@ import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.*; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; @@ -47,6 +52,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private ICuMemberBonusDetailService cuMemberBonusDetailService; + @Autowired + private ICuMemberRetailRangeService iCuMemberRetailRangeService; + @Autowired + private ICuMemberService cuMemberService; + /** * 保存会员奖金 @@ -155,6 +165,29 @@ public class BonusSettleServiceImpl implements IBonusSettleService { } } + @Override + public void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt) { + Integer updateType = null; + String symbol = orderExt.getCancelBool() ? "-" : "+"; + if(orderExt.getOrderType().equals(EOrderType.RETAIL_REGISTER.getValue())){ + updateType = 1; + }else if(orderExt.getOrderType().equals(EOrderType.RETAIL_REPURCHASE.getValue())){ + updateType = 2; + } + if(ObjectUtil.isEmpty(updateType)){ + return; + } + // 今天结算期数 + String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, orderExt.getPayTime()); + int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + // 秒结表名 + String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; + List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); + CuMember self = cuMemberService.getById(orderExt.getPkId()); + iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); + iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); + } + /** * 计算每天的奖金入库 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java index 46b2d277..67624243 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java @@ -47,10 +47,10 @@ public class SaOrderSecondListener { if (saOrderExt.getCancelBool() != null && saOrderExt.getCancelBool()) { cuMemberRetailLog.setCancelStatus(EYesNo.YES.getIntValue()); } - try { Thread.sleep(1000); - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); +// iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); + iBonusSettleService.calculateCuMemberRetailRangeBySaOrder(saOrderExt); } catch (Exception e) { cuMemberRetailLog.setEnableStatus(EYesNo.NO.getIntValue()); cuMemberRetailLog.setMsg(e.getMessage()); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 2febe044..14efc713 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -215,6 +215,43 @@ , a.pk_share_awards = b.pk_range_awards + + UPDATE ${tableName} + SET + PK_GRADE = ${cuMember.pkSettleGrade}, + PK_AWARDS = ${cuMember.pkAwards}, + + REG_CONSUME_NEW_AMOUNT = REG_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_CONSUME_NEW_PV = REG_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_CONSUME_NEW_AMOUNT = REP_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_CONSUME_NEW_PV = REP_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} + WHERE + PK_MEMBER = #{pkMember} + + + UPDATE ${tableName} + SET + + REG_TEAM_NEW_AMOUNT = REG_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_TEAM_NEW_PV = REG_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_TEAM_NEW_AMOUNT = REP_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_TEAM_NEW_PV = REP_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_TEAM_NEW_AMOUNT = ALL_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + WHERE + PK_MEMBER in + + #{member.pkId} + + + diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index a0a76820..e566f0be 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -1,15 +1,20 @@ package com.hzs.member.base.controller.api; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; +import com.hzs.common.core.config.BdConfig; +import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.FileResult; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.core.utils.uuid.IdUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -35,6 +40,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; import java.util.*; +import java.util.concurrent.TimeUnit; /** * 会员控制器 @@ -51,6 +57,9 @@ public class ApiMemberController extends BaseController { @Autowired private IApiAliSmsService iApiAliSmsService; + @Autowired + private RedisService redisService; + @DubboReference IGradeServiceApi iGradeServiceApi; @@ -366,4 +375,56 @@ public class ApiMemberController extends BaseController { return getDataTable(list); } + + /** + * 查询推荐人编号 -- 188分享注册 + * + * @param pkParent 推荐人(加密) + * @return + */ + @GetMapping("/fans-convert-code/{pkParent}") + public AjaxResult fansConvertCode(@PathVariable("pkParent") String pkParent) { + // 验证必输项 + if (pkParent == null) { + return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + } + CuMember cuMember = iCuMemberService.getMemberById(Long.parseLong(new String(Base64Decoder.decode(pkParent)))); + if (null != cuMember) { + return AjaxResult.success("", cuMember.getMemberCode()); + } + return AjaxResult.error(); + } + + /** + * 根据订单查询会员信息 -- 188分享注册 + * + * @param orderCode 订单编号 + * @return + */ +// @RepeatSubmitSimple(intervalTime = 2L) + @GetMapping("/fans-order/{orderCode}") + public AjaxResult fansOrder(@PathVariable("orderCode") String orderCode) { + CuMemberExt cuMemberExt = iCuMemberService.queryFansOrder(orderCode); + if (null == cuMemberExt) { + return AjaxResult.error("注册会员失败,请联系客服处理"); + } + // 自动登录 uuid 标记 + String uuid = IdUtils.simpleUUID(); + // 根据会员编号放一个登录 uuid 做为自动登录校验使用(120分钟有效) + redisService.setCacheObject(CacheConstants.AUTO_LOGIN + cuMemberExt.getMemberCode(), uuid, CacheConstants.LOGIN_TOKEN_REFRESH_TIME * 2, TimeUnit.MINUTES); + + + return AjaxResult.success(MemberShare.builder() + .memberName(cuMemberExt.getMemberName()) + .memberCode(cuMemberExt.getMemberCode()) + .phone(cuMemberExt.getPhone()) + .loginPassword(cuMemberExt.getLoginPassword()) + .payPassword(cuMemberExt.getPayPassword()) + .urlAddress(BdConfig.getPc()) +// .gzh(BdConfig.getGzh()) +// .ios(BdConfig.getIos()) +// .android(BdConfig.getAndroid()) + .uuid(uuid) + .build()); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 14d248d6..218c4d88 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -599,4 +599,12 @@ public interface CuMemberMapper extends BaseMapper { */ List queryDateBySummary(CensusSummaryParam censusSummaryParam); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(@Param("orderCode") String orderCode); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 93f4c9b6..6d2fb93d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -1,11 +1,15 @@ package com.hzs.member.base.provider; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ELoginType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRegister; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -16,6 +20,8 @@ import com.hzs.member.base.service.*; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; +import com.hzs.member.swing.param.CuMemberSwingNetParam; +import com.hzs.member.swing.service.ICuMemberSwingNetService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -34,8 +40,12 @@ public class MemberServiceProvider implements IMemberServiceApi { @Autowired private ICuMemberService iCuMemberService; @Autowired + private ICuMemberShareService iCuMemberShareService; + @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Autowired + private ICuMemberRegisterService iCuMemberRegisterService; + @Autowired private ICuMemberEmptyCodeService iCuMemberEmptyCodeService; @Override @@ -52,6 +62,20 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(loginMember); } + + @Override + public R getShareMemberInfo(String memberCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberShare::getMemberCode, memberCode); + CuMemberShare cuMemberShare = iCuMemberShareService.getOne(queryWrapper); + if (null == cuMemberShare) { + return R.fail("用户名或密码错误"); + } + LoginMember loginMember = new LoginMember(); + loginMember.setLoginType(ELoginType.SHARE_MEMBER.getValue()); + loginMember.setCuMemberShare(cuMemberShare); + return R.ok(loginMember); + } @Override public R getMemberById(Long memberId) { return R.ok(iCuMemberService.getMemberById(memberId)); @@ -191,6 +215,11 @@ public class MemberServiceProvider implements IMemberServiceApi { } } + @Override + public R createMemberIdAndCode(CuMember cuMember) { + return R.ok(iCuMemberService.createMemberIdAndCode(cuMember)); + } + @Override public R createRegisterMemberCode(CuMember cuMember) { return R.ok(iCuMemberService.createRegisterMemberCode(cuMember)); @@ -216,6 +245,11 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.findMemberByMemberId(pkMemberList, pkCountry)); } + @Override + public R queryCuMemberRegister(Long pkMember) { + return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); + } + @Override public R updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { try { @@ -344,4 +378,9 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } + + @Override + public R queryCuMemberShare(Long pkMember) { + return R.ok(iCuMemberShareService.queryCuMemberShare(pkMember)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index f2e6edae..1d4ae7f3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -19,6 +19,13 @@ public interface ICuMemberRegisterService extends IService { */ List queryCuMemberRegisterExeByCondition(MemberParam memberParam); + /** + * 根据会员主键查询会员注册信息 + * + * @param pkMember 会员主键 + */ + CuMemberRegister queryCuMemberRegister(Long pkMember); + /** * 将用户注册表信息更改为死点 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 6098e6a2..5aa1b321 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -155,7 +155,15 @@ public interface ICuMemberService extends IService { * @param digit 编号数字位数 * @return */ - String createUserNameByPremix(Integer pkCountry, Integer digit); + String createUserNameByPremix(Integer pkCountry, Integer digit); /** + * 生成会员编号 + * + * @param pkCountry 所属国家 + * @param isHaiFun + * @param digit 编号数字位数 + * @return + */ + String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit); /** * 批量生成会员编号 @@ -771,7 +779,7 @@ public interface ICuMemberService extends IService { * @return */ CuMember getRetailTopMember(Long pkMember, String memberCode, Long topPkMember, String topMemberCode); - + String createRetailMemberCode(String prefix); /** * 校验注册关系(是否跨团队) * 2024.12.24 修改为校验手机号必须唯一(9035) @@ -869,4 +877,12 @@ public interface ICuMemberService extends IService { */ List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(String orderCode); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java index 686beef1..9bac0405 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java @@ -22,5 +22,10 @@ public interface ICuMemberShareService extends IService { * @return */ List seaFlourList(SeaFlourParam seaFlourParam); - + /** + * 查询会员分享 + * + * @param pkMember 会员主键 + */ + CuMemberShare queryCuMemberShare(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index ca8a748f..002e2a6c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.member.base.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.base.CuMemberRegister; @@ -26,6 +27,15 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberRegister::getPkMember, pkMember); + queryWrapper.orderByAsc(CuMemberRegister::getPayTime); + List cuMemberRegisters = baseMapper.selectList(queryWrapper); + return cuMemberRegisters.get(0); + } + @Override public void updateCuMemberRegister(CuMemberRegister cuMemberRegister) { baseMapper.updateCuMemberRegister(cuMemberRegister); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 1302b52f..6374a91a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -1556,6 +1556,34 @@ public class CuMemberServiceImpl extends ServiceImpl i return memberCode; } + @Override + public String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit) { + String prefix; + if (isHaiFun) { + prefix = SysConstants.HAI_FUN_PREFIX; + } else { + CountryDTO country = iCountryServiceApi.getCountry(pkCountry).getData(); + prefix = country.getCode(); + } + if (StringUtils.isEmpty(prefix)) { + return null; + } + // 生成loginName + String memberCode = this.createMemberCode(prefix, digit); + + CuMember cuMemberByKey = getMember(memberCode); + if (cuMemberByKey != null && cuMemberByKey.getPkId() > 0) { + // 用户名已经存在,则继续尝试 + return this.createUserNameByPremix(pkCountry, isHaiFun, digit); + } else { + // 验证空单注册里面是否存在编号 + List cuMemberEmptyDetails = iCuMemberEmptyCodeService.queryCuMemberEmptyCode(memberCode); + if (CollectionUtil.isNotEmpty(cuMemberEmptyDetails)) { + return this.createUserNameByPremix(pkCountry, isHaiFun, digit); + } + } + return memberCode; + } /** * 创建会员编号 * @@ -3009,6 +3037,7 @@ public class CuMemberServiceImpl extends ServiceImpl i * @param prefix 会员编号前缀 * @return */ + @Override public String createRetailMemberCode(String prefix) { if (StringUtils.isEmpty(prefix)) { prefix = SysConstants.RETAIL_PREFIX; @@ -3254,4 +3283,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return censusSummaryList; } + + @Override + public CuMemberExt queryFansOrder(String orderCode) { + return baseMapper.queryFansOrder(orderCode); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java index 484846da..33371947 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.member.base.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.member.base.mapper.CuMemberShareMapper; @@ -30,4 +31,10 @@ public class CuMemberShareServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); + queryWrapper.select("PK_ID,MEMBER_CODE,MEMBER_NAME,PHONE,PK_PARENT"); + return baseMapper.selectById(pkMember); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java index 157c9f1f..b6f74543 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java @@ -21,4 +21,13 @@ public interface IMemberLoginService { **/ LoginMember passwordFreelogin(String username); + + /** + * 分享登录 + * + * @param username 用户名 + * @param password 密码 + * @return + */ + LoginMember shareLogin(String username, String password); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java index c2a8572d..948f122f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java @@ -11,6 +11,7 @@ import com.hzs.common.core.utils.ServletUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ip.IpUtils; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.detail.CuMemberLogin; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; @@ -157,6 +158,35 @@ public class MemberLoginServiceImpl implements IMemberLoginService { return loginMember; } + @Override + public LoginMember shareLogin(String username, String password) { + // 用户名或密码为空 错误 + if (StringUtils.isAnyBlank(username, password)) { + // 用户/密码必须填写 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_REQUIRED)); + } + // 查询用户信息 + R memberResult = iMemberServiceApi.getShareMemberInfo(username); + + if (R.FAIL == memberResult.getCode()) { + throw new ServiceException(memberResult.getMsg()); + } + + if (StringUtils.isNull(memberResult.getData())) { + // 登录用户: %s 不存在 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_NOT_EXIST, username)); + } + + LoginMember loginMember = memberResult.getData(); + CuMemberShare cuMemberShare = loginMember.getCuMemberShare(); + // 密码校验 + if (!SecurityUtils.matchesPassword(password, cuMemberShare.getLoginPwd())) { + // 用户不存在/密码错误 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_ERROR, username)); + } + + return loginMember; + } /** * 记录登录信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java index 1a3bbae4..86f2b363 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java @@ -174,4 +174,30 @@ public class ApiShareController extends BaseController { } + + + /** + * 获取188分享码(H5) + * + * @return + */ + @GetMapping("/fans-code-h5") + public AjaxResult fansCodeH5() { + Long userId = SecurityUtils.getUserId(); + // 188注册分享人就是自己 + R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() + .eShareType(EShareType.FANS) + .pkBusiness(userId) + .pkCountry(SecurityUtils.getPkCountry()) + .userId(userId) + .build()); + if (resultR.isSuccess()) { + Map resultMap = new HashMap<>(); + resultMap.put("dataUrl", resultR.getData()); + // 前端无法根据URL生成海报,此处需要转一下base64 + resultMap.put("dataStr", Base64Util.toUrlBase64(resultR.getData())); + return AjaxResult.success(resultMap); + } + return AjaxResult.error(); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java index 055fbc25..b12b401b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java @@ -1,13 +1,22 @@ package com.hzs.retail.login.controller; +import cn.hutool.core.codec.Base64Decoder; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMemberShare; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.auth.AuthMemberUtil; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.dto.LoginMember; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICuMemberShareService; +import com.hzs.member.login.param.AutoLoginParam; +import com.hzs.member.login.service.IMemberLoginService; import com.hzs.retail.login.param.RetailAutoLoginParam; import com.hzs.retail.login.param.RetailLoginParam; import com.hzs.retail.login.service.IRetailMemberLoginService; @@ -28,6 +37,13 @@ import javax.validation.Valid; @RestController public class RetailMemberTokenController { + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberShareService iCuMemberShareService; + @Autowired + private IMemberLoginService iMemberLoginService; + @Autowired private MemberTokenService memberTokenService; @Autowired @@ -50,14 +66,16 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + + /** - * 新零售会员自动登录 + * 新零售会员自动登录-分享注册后自动登录 * * @param param 自助登录参数 * @return */ - @PostMapping("/auto-login") - public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { + @PostMapping("/registered-auto-login") + public AjaxResult registeredAutoLogin(@Valid @RequestBody RetailAutoLoginParam param) { String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); if (!param.getUuid().equals(tmpUuid)) { // 没有自动登录标记 或者 标记不对,则不能自动登录 @@ -70,6 +88,60 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + /** + * 新零售会员自动登录 + * + * @param param 自助登录参数 + * @return + */ + @PostMapping("/auto-login") +// public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { +// String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); +// if (!param.getUuid().equals(tmpUuid)) { +// // 没有自动登录标记 或者 标记不对,则不能自动登录 +// return AjaxResult.error("当前会员已不能快递登录"); +// } +// +// // 用户登录 +// LoginMember loginMember = iRetailMemberLoginService.login(param.getUsername(), param.getPassword()); +// // 获取登录token +// return AjaxResult.success(memberTokenService.createToken(loginMember)); +// } + public AjaxResult autoLogin(@RequestBody AutoLoginParam param) { + if (StringUtils.isEmpty(param.getPkParent())) { + return AjaxResult.error("缺少注册信息!"); + } + + // 上级编码(推荐人) + Long pkParent = Long.parseLong(new String(Base64Decoder.decode(param.getPkParent()))); + // 查询上级信息 + CuMemberExt parentCuMember = iCuMemberService.getMemberById(pkParent); + if (null == parentCuMember) { + return AjaxResult.error("二维码已经失效!"); + } + + // 生成的会员编号 + String memberCode = iCuMemberService.createRetailMemberCode(SysConstants.RETAIL_PREFIX); +// iCuMemberService.createUserNameByPremix(parentCuMember.getPkSettleCountry(), MagicNumberConstants.DIGIT); + + CuMemberShare cuMemberShare = new CuMemberShare(); + cuMemberShare.setMemberCode(memberCode); + cuMemberShare.setPkParent(pkParent); + cuMemberShare.setLoginPassword(SysConstants.LOGIN_PASSWORD); + cuMemberShare.setLoginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)); + cuMemberShare.setPayPassword(SysConstants.PAY_PASSWORD); + cuMemberShare.setPayPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)); + cuMemberShare.setPkCreator(pkParent); + cuMemberShare.setPkCountry(parentCuMember.getPkSettleCountry()); + if (iCuMemberShareService.save(cuMemberShare)) { + // 会员登录 + LoginMember loginMember = iMemberLoginService.shareLogin(memberCode, SysConstants.LOGIN_PASSWORD); + + // 获取登录token + return AjaxResult.success(memberTokenService.createToken(loginMember)); + } + return AjaxResult.error(); + } /** * 会员登出 * diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index fd5d09fd..a705806e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2378,4 +2378,19 @@ + + + diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index bf52a76b..e06f04e4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,16 +6,23 @@ import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.EGrade; +import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; +import com.hzs.common.core.utils.CommonUtil; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; +import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.config.BdGrade; +import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.retail.sale.controller.service.IRetailOrderService; @@ -23,10 +30,13 @@ import com.hzs.retail.sale.param.*; import com.hzs.retail.sale.vo.*; import com.hzs.sale.order.param.*; import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.order.service.ISaOrderShareTmpService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import com.hzs.sale.shopping.vo.ShoppingCartVO; +import com.hzs.sale.wares.service.IBdWaresService; +import com.hzs.sale.wares.service.IBdWaresSpecsSkuService; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; @@ -40,6 +50,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 新零售订单控制器 @@ -58,12 +69,21 @@ public class ApiRetailOrderController { @Autowired private RedisService redisService; + @Autowired + private IBdWaresService iBdWaresService; + @Autowired + private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; + @Autowired + private ISaOrderShareTmpService iSaOrderShareTmpService; + @DubboReference IMemberServiceApi iMemberServiceApi; @DubboReference IGradeServiceApi iGradeServiceApi; @DubboReference IAreaServiceApi iAreaServiceApi; + @Autowired + private MemberTokenService memberTokenService; /** * 校验会员等级 @@ -590,4 +610,111 @@ public class ApiRetailOrderController { return null; } + + /** + * 确认注册订单 + * + * @param registerParam 订单入参 + * @param source 数据来源 + * @return + */ + @RepeatSubmit + @PostMapping("/fans-confirm-order") + public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, + @RequestHeader("Source") Integer source) { + // 设置数据来源 + registerParam.setSource(source); + // 会员ID + registerParam.setPkCreator(SecurityUtils.getUserId()); + // 新零售注册专区 + registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + // 系统类型 + registerParam.setSystemType(SecurityUtils.getSystemType()); + + // 获取等级列表 + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); + // 校验注册权限等 +// String checkStr = this.checkRegistrationPermission(registerParam, gradeList); +// if (null != checkStr) { +// return AjaxResult.error(checkStr); +// } + + // 手机号可以重复,不需要进行是否重复校验 -- 已经跳过,此处可以不需要当前判断 +// // 校验注册关系(是否跨团队) -- 2024.12.24 修改为校验手机号必须唯一 +// String relationStr = iMemberServiceApi.checkRegisterRelation(registerParam.getPhone(), registerParam.getParentCode()).getData(); +// if (relationStr != null) { +// return AjaxResult.error(relationStr); +// } + + // 购物车中获取商品信息 +// registerParam.setOrderItemsParams(convertShoppingCarToSku(registerParam.getPkCreator(), registerParam.getShopList())); + + // 遍历商品,封装订单明细 + // 订单金额 + BigDecimal orderAmount = BigDecimal.ZERO; + + // 生成订单编号 + String orderCode = CommonUtil.createSerialNumber(EOrderPrefix.ORDER_CODE); + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : registerParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + registerParam.setOrderItemsParams(orderItemsParams); + CuMemberShare memberShare = memberTokenService.getLoginMember().getCuMemberShare(); + registerParam.setCuMemberShare(memberShare); +// registerParam.setPkCreator(memberShare.getPkParent()); + // 确认订单 + String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount()); + } + + /** + * 确认订单返回 + * + * @param str 提示信息(null 为成功) + * @param pkCreator 订单创建人 + * @param shopList 购物车ID + * @param orderCode 订单编号 + * @return + */ + private AjaxResult confirmSharedOrderReturn(String str, Long pkCreator, List shopList, String orderCode, BigDecimal orderAmount) { + if (null == str) { + // 删除购物车商品数据 + if (CollectionUtil.isNotEmpty(shopList)) { + shoppingCartService.batchDelShopping(pkCreator, ShoppingCartVO.builder() + .deleteList(shopList) + .build()); + } + return AjaxResult.success(RetailOrderVO.builder() + .orderCode(orderCode) + .orderAmount(orderAmount) + .build()); + } + return AjaxResult.error(str); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index bd76d6ef..febd7feb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.controller.service.impl; import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; @@ -17,6 +18,7 @@ import com.hzs.common.core.utils.*; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -447,8 +449,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setCreationTime(new Date()); cuMember.setPkCreator(orderParam.getPkCreator()); + boolean isShared = false; if (null == orderParam.getCreatorMember()) { - orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + if(ObjectUtil.isNotEmpty(orderParam.getCuMemberShare())){ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getCuMemberShare().getPkParent(), null).getData()); + cuMember.setPkParent(orderParam.getCuMemberShare().getPkParent()); + isShared = true; + }else{ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + } } cuMember.setPkVertex(orderParam.getCreatorMember().getPkVertex()); cuMember.setPkTeamCode(orderParam.getCreatorMember().getPkTeamCode()); @@ -456,7 +465,12 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setSystemType(orderParam.getCreatorMember().getSystemType()); // 获取会员编号、会员主键 - cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + if(isShared){ + cuMember.setPkId(orderParam.getCuMemberShare().getPkId()); + cuMember.setMemberCode(orderParam.getCuMemberShare().getMemberCode()); + }else{ + cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + } return cuMember; } @@ -592,7 +606,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); + newMember.setPkSettleGrade(registerParam.getPkGrade()); + newMember.setPkAwards(registerParam.getPkAwards()); saOrderExt.setPkMember(newMember.getPkId()); + if(ObjectUtil.isNotEmpty(registerParam.getCuMemberShare())){ + saOrderExt.setPkReference(registerParam.getCuMemberShare().getPkParent()); + saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); + } resultStr = this.payRegOrder(saOrderExt, newMember, null); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java index a5587c9a..7cf9682d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java @@ -6,6 +6,7 @@ import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.AllArgsConstructor; @@ -113,6 +114,9 @@ public class RetailOrderParam implements Serializable { @JsonIgnore private CuMember creatorMember; +// @JsonIgnore + private CuMemberShare cuMemberShare; + /** * 订单编号 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java index 4982edcb..577d6a6b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java @@ -1,11 +1,12 @@ package com.hzs.retail.sale.param; -import lombok.Data; -import lombok.EqualsAndHashCode; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; +import lombok.*; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.Size; import java.io.Serializable; +import java.util.List; /** * 新零售注册订单入参 @@ -33,4 +34,9 @@ public class RetailOrderRegisterParam extends RetailOrderParam implements Serial @Size(max = 20, message = "推荐编号不能超过20位") private String parentCode; + + /** + * 商品列表 + */ + private List waresList; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java index a6b3e3c8..95e44578 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.math.BigDecimal; /** * 新零售订单返回VO @@ -48,4 +49,9 @@ public class RetailOrderVO implements Serializable { */ private String urlAddress; + /** + * 待支付金额 + */ + private BigDecimal orderAmount; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index feea16a2..2824171d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -1,6 +1,7 @@ package com.hzs.retail.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; @@ -10,10 +11,13 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EAccount; import com.hzs.common.core.enums.ELabelType; import com.hzs.common.core.enums.ESpecialArea; +import com.hzs.common.core.enums.EWaresType; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DistinctByKeyUtil; +import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; @@ -25,8 +29,11 @@ import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.retail.wares.param.RetailWaresDetailParam; import com.hzs.retail.wares.param.RetailWaresParam; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.retail.wares.vo.RetailWaresDetailVO; import com.hzs.retail.wares.vo.RetailWaresVO; +import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.service.IBdWaresLabelService; import com.hzs.sale.wares.service.IBdWaresRangeService; import com.hzs.sale.wares.service.IBdWaresService; @@ -38,10 +45,7 @@ import com.hzs.system.config.dto.AreaCurrencyDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; @@ -64,6 +68,8 @@ public class ApiRetailWaresController extends BaseController { private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; @Autowired private IBdWaresRangeService iBdWaresRangeService; + @Autowired + private ISaOrderService iSaOrderService; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @@ -378,4 +384,147 @@ public class ApiRetailWaresController extends BaseController { } + + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { + param.setSpecialArea(ESpecialArea.REGISTER_AREA.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } + + /** + * 查询团队配置是否展示该商品 + * + * @param pkWares + * @return + */ + public ShowWaresDTO getShowWares(Integer pkWares, Long loginMember, String loginMemberCode, Map> waresAuthorityMap) { + ShowWaresDTO showWaresDTO = new ShowWaresDTO(); + showWaresDTO.setPkWares(pkWares); + showWaresDTO.setLoginMember(loginMember); + showWaresDTO.setLoginMemberCode(loginMemberCode); + showWaresDTO.setWaresAuthorityList(waresAuthorityMap.get(pkWares)); + return showWaresDTO; + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java new file mode 100644 index 00000000..1e5e125b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java @@ -0,0 +1,31 @@ +package com.hzs.retail.wares.param; + +import lombok.Data; + +/** + * 分享商品查询条件 + */ +@Data +public class WaresShareParam { + + /** + * 分享会员编号 + */ + private String shareMemberCode; + + /** + * 所属专区 + */ + private Integer specialArea; + + /** + * 商品类型 + */ + private Integer isMakerGift; + + /** + * 国家 + */ + private Integer pkCountry; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java new file mode 100644 index 00000000..28aea898 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java @@ -0,0 +1,68 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单入参 + */ +@Data +public class FansConfirmOrderParam { + + /*** + * 自然国 + */ + private Integer pkCountry; + + /** + * 会员姓名 + */ + private String memberName; + + /** + * 联系方式 + */ + private String phone; + + /** + * 收货人 + */ + private String recName; + + /** + * 收货电话 + */ + private String recPhone; + + /** + * 收货省 + */ + private Integer recProvince; + + /** + * 收货市 + */ + private Integer recCity; + + /** + * 收货县 + */ + private Integer recCounty; + + /** + * 收货地址 + */ + private String recAddress; + + /** + * 备注 + */ + private String remark; + + /** + * 商品列表 + */ + private List waresList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java new file mode 100644 index 00000000..b533710b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java @@ -0,0 +1,21 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +/** + * 海粉确认订单产品入参 + */ +@Data +public class FansConfirmOrderSkuParam { + + /** + * SKU ID + */ + private Long pkWaresSku; + + /** + * 产品数量 + */ + private Integer quantity; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java new file mode 100644 index 00000000..e5cb4067 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java @@ -0,0 +1,28 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单商品入参 + */ +@Data +public class FansConfirmOrderWaresParam { + + /** + * 商品ID + */ + private Integer pkWares; + + /** + * 商品数量 + */ + private Integer quantity; + + /** + * 产品列表 + */ + private List skuList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index dc709de0..51f64430 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -1,6 +1,7 @@ package com.hzs.sale.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; @@ -27,6 +28,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.WaresItemWaresInfo; @@ -87,6 +89,133 @@ public class ApiBdWaresController extends BaseController { @Autowired protected StringRedisTemplate redisTemplate; + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } /** * 根据专区查找专区的商品 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index a8acbfec..bce4471f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -129,6 +129,7 @@ public interface BdWaresMapper extends BaseMapper { */ List listRetailWaresByCondition(@Param("param") RetailWaresParam param); + /** * 查询非在售商品 * @@ -137,4 +138,16 @@ public interface BdWaresMapper extends BaseMapper { */ List listWaresNoSale(@Param("param") WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(@Param("specialArea") Integer specialArea, + @Param("isMakerGift") Integer isMakerGift, + @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java index beaf1ad5..325c97ec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java @@ -109,4 +109,12 @@ public interface BdWaresSpecsSkuMapper extends BaseMapper { */ List selectByMinWaresSpecsSkuByPkWaresList(@Param("pkWaresIds") List pkWaresIds); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + List queryWaresSpecsSkuList(@Param("skuIdList") List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index 3538b0f8..cb0bee87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -203,4 +203,14 @@ public interface IBdWaresService extends IService { */ List listWaresNoSale(WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java index 5a73299d..1f801491 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java @@ -13,6 +13,7 @@ import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.param.SpecsSkuParam; import java.util.List; +import java.util.Map; /** * 规格sku表 服务类 @@ -107,4 +108,12 @@ public interface IBdWaresSpecsSkuService extends IService { */ RetailWaresDetailVO queryWaresDetail(RetailWaresDetailParam param, Integer pkGrade); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + Map queryWaresSpecsSkuList(List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 4e3388f6..cf4f8dd9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1161,4 +1161,9 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listWaresNoSale(param); } + + @Override + public List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry) { + return baseMapper.listWaresShare(specialArea, isMakerGift, pkCountry); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 213748ae..532e9668 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -578,4 +578,15 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl queryWaresSpecsSkuList(List skuIdList) { + Map resultMap = new HashMap<>(); + + List list = baseMapper.queryWaresSpecsSkuList(skuIdList); + for (BdWaresSpecsSkuExt waresSpecsSku : list) { + resultMap.put(waresSpecsSku.getPkId().longValue(), waresSpecsSku); + } + return resultMap; + } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 09231787..ce5fec98 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -471,4 +471,35 @@ order by bw.wares_name + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml index 06418e05..432196b4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml @@ -357,4 +357,23 @@ + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java index 553d7b8c..f19aea82 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/config/BdConfig.java @@ -24,18 +24,18 @@ public class BdConfig { * PC地址 */ private static String pc; -// /** -// * 公众号地址 -// */ -// private static String gzh; -// /** -// * IOS地址 -// */ -// private static String ios; -// /** -// * android地址 -// */ -// private static String android; + /** + * 公众号地址 + */ + private static String gzh; + /** + * IOS地址 + */ + private static String ios; + /** + * android地址 + */ + private static String android; /** * 商品同步是否开启(0=开启,1=不开启) @@ -70,29 +70,30 @@ public class BdConfig { BdConfig.pc = pc; } -// public static String getGzh() { -// return gzh; -// } -// -// public void setGzh(String gzh) { -// HzsConfig.gzh = gzh; -// } -// -// public static String getIos() { -// return ios; -// } -// -// public void setIos(String ios) { -// HzsConfig.ios = ios; -// } -// -// public static String getAndroid() { -// return android; -// } -// -// public void setAndroid(String android) { -// HzsConfig.android = android; -// } + + public static String getGzh() { + return gzh; + } + + public void setGzh(String gzh) { + BdConfig.gzh = gzh; + } + + public static String getIos() { + return ios; + } + + public void setIos(String ios) { + BdConfig.ios = ios; + } + + public static String getAndroid() { + return android; + } + + public void setAndroid(String android) { + BdConfig.android = android; + } public static Integer getProductSync() { return productSync; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index ba25e75a..86276117 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -9,6 +9,11 @@ import java.util.List; */ public class SysConstants { + + /** + * 嗨粉前缀 + */ + public static final String HAI_FUN_PREFIX = "HF"; /** * 众康系统前缀 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java new file mode 100644 index 00000000..a1147d03 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderTypeExtend.java @@ -0,0 +1,38 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 订单扩展类型枚举类 + */ +@AllArgsConstructor +@Getter +public enum EOrderTypeExtend { + + /** + * 正常 + */ + NORMAL(0, "正常", 0), + + /** + * 注册转复购 + */ + REG_REP(1, "注册转复购", 0), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + /** + * 是否启用(0=是,1=否) -- 来源EYesNo + */ + private final int enable; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java index bb0f12ab..8358cf86 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EShareType.java @@ -19,6 +19,11 @@ public enum EShareType { */ SHARE(1, "分享注册"), + /** + * 188注册 + */ + FANS(2, "188注册"), + ; /** diff --git a/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java b/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java index 62297b45..f3a45fb4 100644 --- a/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java +++ b/bd-common/bd-common-security/src/main/java/com/hzs/common/security/service/MemberTokenService.java @@ -8,6 +8,7 @@ import com.hzs.common.core.utils.ServletUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ip.IpUtils; import com.hzs.common.core.utils.uuid.IdUtils; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.dto.LoginMember; @@ -57,16 +58,26 @@ public class MemberTokenService { public Map createToken(LoginMember loginMember) { String token = IdUtils.fastUUID(); - // 注册用户处理 - CuMemberExt cuMember = loginMember.getCuMember(); // 用户ID - Long pkId = cuMember.getPkId(); + Long pkId; // 用户编号 - String memberCode = cuMember.getMemberCode(); + String memberCode; // 结算国 - Integer pkCountry = cuMember.getPkSettleCountry(); - // 系统类型 - Integer systemType = cuMember.getSystemType(); + Integer pkCountry; + + if (null != loginMember.getCuMember()) { + // 注册用户处理 + CuMemberExt cuMember = loginMember.getCuMember(); + pkId = cuMember.getPkId(); + memberCode = cuMember.getMemberCode(); + pkCountry = cuMember.getPkSettleCountry(); + } else { + // 分享用户处理(临时海粉) + CuMemberShare cuMemberShare = loginMember.getCuMemberShare(); + pkId = cuMemberShare.getPkId(); + memberCode = cuMemberShare.getMemberCode(); + pkCountry = cuMemberShare.getPkCountry(); + } loginMember.setToken(token); loginMember.setPkId(pkId); @@ -82,7 +93,6 @@ public class MemberTokenService { claimsMap.put(SecurityConstants.DETAILS_USERNAME, memberCode); claimsMap.put(SecurityConstants.DETAILS_USER_TYPE, loginMember.getLoginType()); claimsMap.put(SecurityConstants.DETAILS_USER_COUNTRY, pkCountry); - claimsMap.put(SecurityConstants.SYSTEM_TYPE, systemType); // 接口返回信息 Map rspMap = new HashMap<>(); diff --git a/bd-gateway/src/main/resources/bootstrap.yml b/bd-gateway/src/main/resources/bootstrap.yml index b36ebbd4..e069640c 100644 --- a/bd-gateway/src/main/resources/bootstrap.yml +++ b/bd-gateway/src/main/resources/bootstrap.yml @@ -175,6 +175,12 @@ security: - /system/manage/area/get-light-area # 新零售白名单 - /retail-member/api/retail-auth/* + # 188分享注册白名单 + - /member/api/member/fans-convert-code/* + - /member/api/member/fans-order/* + - /system/api/idempotent/generate + - /member/api/retail-auth/auto-login + - /member/api/retail-auth/registered-auto-login # 日志配置 logging: diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java index a0c2ca1e..04f31b7b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/manage/OnlinePaymentController.java @@ -2,6 +2,7 @@ package com.hzs.third.pay.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.EnumsPrefixConstants; @@ -21,6 +22,7 @@ import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; import com.hzs.third.pay.param.OnlinePaymentParam; import com.hzs.third.pay.param.OnlinePaymentRetryParam; +import com.hzs.third.pay.service.IJdPayService; import com.hzs.third.pay.service.IPayService; import com.hzs.third.pay.service.ITOnlinePaymentService; import com.hzs.third.pay.vo.OnlinePaymentVO; @@ -48,6 +50,8 @@ public class OnlinePaymentController extends BaseController { private ITOnlinePaymentService itOnlinePaymentService; @Autowired private IPayService iPayService; + @Autowired + private IJdPayService iJdPayService; @Autowired private ITransactionCommonService iTransactionCommonService; @@ -144,4 +148,16 @@ public class OnlinePaymentController extends BaseController { return toAjax(iPayService.retryHandle(tOnlinePayment, false)); } + /** + * 补偿支付回调 + * + * @param param 业务重试入参 + * @return + */ + @Log(module = EOperationModule.ONLINE_PAY_DETAIL, business = EOperationBusiness.ONLINE_PAY_DETAIL, method = EOperationMethod.SUBMIT) + @GetMapping("/compensationCallBack") + public AjaxResult compensationCallBack(@RequestParam("businessCode") String businessCode) { + return iJdPayService.compensationCallBack(businessCode); + } + } diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java new file mode 100644 index 00000000..96be5cad --- /dev/null +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderRequest.java @@ -0,0 +1,27 @@ +package com.hzs.third.pay.jdpay.dto; + + +import java.io.Serializable; + +public class JdPayQueryOrderRequest implements Serializable { + /** + * 商户订单号 + */ + private String outTradeNo; + + + public String getOutTradeNo() { + return outTradeNo; + } + + public void setOutTradeNo(String outTradeNo) { + this.outTradeNo = outTradeNo; + } + + @Override + public String toString() { + return "{ \"outTradeNo\":\"" + outTradeNo + "\"" + + "}" + ; + } +} diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java new file mode 100644 index 00000000..7900664a --- /dev/null +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayQueryOrderResponse.java @@ -0,0 +1,197 @@ +package com.hzs.third.pay.jdpay.dto; + +import java.io.Serializable; + +public class JdPayQueryOrderResponse implements Serializable { + /** + * 京东交易订单号 + */ + private String tradeNo; + /** + * 商户订单号 + */ + private String outTradeNo; + /** + * 订单总金额 + */ + private String tradeAmount; + /** + * 支付完成时间 + */ + private String finishDate; + /** + * 交易类型 + */ + private String tradeType; + /** + * 交易状态 + */ + private String tradeStatus; + /** + * 回传字段 + */ + private String returnParams; + /** + * 商户用户标识 + */ + private String userId; + /** + * 优惠金额 + */ + private String discountAmount; + /** + * 支付工具 + */ + private String payTool; + /** + * ] + * 掩码卡号 + */ + private String maskCardNo; + /** + * 卡类型 + */ + private String cardType; + /** + * 银行编码 + */ + private String bankCode; + /** + * 白条分期数 + */ + private String installmentNum; + + + public String getTradeNo() { + return tradeNo; + } + + public void setTradeNo(String tradeNo) { + this.tradeNo = tradeNo; + } + + public String getOutTradeNo() { + return outTradeNo; + } + + public void setOutTradeNo(String outTradeNo) { + this.outTradeNo = outTradeNo; + } + + public String getTradeAmount() { + return tradeAmount; + } + + public void setTradeAmount(String tradeAmount) { + this.tradeAmount = tradeAmount; + } + + public String getFinishDate() { + return finishDate; + } + + public void setFinishDate(String finishDate) { + this.finishDate = finishDate; + } + + public String getTradeType() { + return tradeType; + } + + public void setTradeType(String tradeType) { + this.tradeType = tradeType; + } + + public String getTradeStatus() { + return tradeStatus; + } + + public void setTradeStatus(String tradeStatus) { + this.tradeStatus = tradeStatus; + } + + public String getReturnParams() { + return returnParams; + } + + public void setReturnParams(String returnParams) { + this.returnParams = returnParams; + } + + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getDiscountAmount() { + return discountAmount; + } + + public void setDiscountAmount(String discountAmount) { + this.discountAmount = discountAmount; + } + + public String getPayTool() { + return payTool; + } + + public void setPayTool(String payTool) { + this.payTool = payTool; + } + + public String getMaskCardNo() { + return maskCardNo; + } + + public void setMaskCardNo(String maskCardNo) { + this.maskCardNo = maskCardNo; + } + + public String getCardType() { + return cardType; + } + + public void setCardType(String cardType) { + this.cardType = cardType; + } + + public String getBankCode() { + return bankCode; + } + + public void setBankCode(String bankCode) { + this.bankCode = bankCode; + } + + public String getInstallmentNum() { + return installmentNum; + } + + public void setInstallmentNum(String installmentNum) { + this.installmentNum = installmentNum; + } + + @Override + public String toString() { + return "{\"tradeNo\":\"" + tradeNo + "\"" + + ", \"outTradeNo\":\"" + outTradeNo + "\"" + + ", \"tradeAmount\":\"" + tradeAmount + "\"" + + ", \"finishDate\":\"" + finishDate + "\"" + + ", \"tradeType\":\"" + tradeType + "\"" + + ", \"tradeStatus\":\"" + tradeStatus + "\"" + + ", \"returnParams\":\"" + returnParams + "\"" + + ", \"userId\":\"" + userId + "\"" + + ", \"discountAmount\":\"" + discountAmount + "\"" + + ", \"payTool\":\"" + payTool + "\"" + + ", \"maskCardNo\":\"" + maskCardNo + "\"" + + ", \"cardType\":\"" + cardType + "\"" + + ", \"bankCode\":\"" + bankCode + "\"" + + ", \"installmentNum\":\"" + installmentNum + "\"" + + "}" + ; + } +} diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java index f5898780..82ac5acc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPay.java @@ -56,9 +56,9 @@ public class JdPay { // * @return JdPayQueryOrderResponse 返回数据 // * @throws Exception // */ -// public JdPayQueryOrderResponse queryOrder(JdPayQueryOrderRequest request) throws Exception { -// return this.baseExecute(JdPayConstant.TRADE_QUERY_URL, request, JdPayQueryOrderResponse.class); -// } + public JdPayQueryOrderResponse queryOrder(JdPayQueryOrderRequest request) throws Exception { + return this.baseExecute(JdPayConstant.TRADE_QUERY_URL, request, JdPayQueryOrderResponse.class); + } // // /** // * 作用:代扣 diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java index 23863944..1f353927 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java @@ -42,9 +42,9 @@ public class JdPayHttpClientProxy { log.info("1.{}接口请求参数:{}", apiName, request); // 请求参数加密和签名 String httpRequest = JdPayApiUtil.encryptAndSignature(jdPayNewConfig, reqNo, request); - log.info("2.{}远程调用请求参数:{}", apiName, httpRequest); +// log.info("2.{}远程调用请求参数:{}", apiName, httpRequest); String httpResponse = jdPayHttpClient.execute(jdPayNewConfig, urlSuffix, httpRequest); - log.info("3.{}远程调用返回参数:{}", apiName, httpResponse); +// log.info("3.{}远程调用返回参数:{}", apiName, httpResponse); // 验证和解析返回参数 response = JdPayApiUtil.decryptAndVerifySign(jdPayNewConfig, httpResponse); log.info("4.{}耗时:{},接口返回参数:{}", apiName, (System.currentTimeMillis() - startTimestampMs), response); diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java b/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java index ccd9a9d1..9b69a4b9 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/IJdPayService.java @@ -2,6 +2,7 @@ package com.hzs.third.pay.service; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDataSource; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.third.pay.TOnlinePayment; /** @@ -18,4 +19,12 @@ public interface IJdPayService { */ R cashRegister(TOnlinePayment onlinePayment, EDataSource dataSource); + /** + * 收银台支付 + * + * @param onlinePayment + * @param dataSource + * @return + */ + AjaxResult compensationCallBack(String businessCode); } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index a2c6b4ac..0aad0171 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -2,11 +2,12 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EDataSource; -import com.hzs.common.core.enums.EEnv; +import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.domain.third.pay.TOnlinePaymentSepAcc; import com.hzs.common.domain.third.pay.TOnlinePaymentSepAccD; @@ -15,16 +16,10 @@ import com.hzs.third.pay.config.JdPayBankProperties; import com.hzs.third.pay.config.JdPayConfig; import com.hzs.third.pay.config.JdPaySeparateAccountConfig; import com.hzs.third.pay.config.JdPayWechatAlipayProperties; -import com.hzs.third.pay.jdpay.dto.JdPayAggregateCreateOrderRequest; -import com.hzs.third.pay.jdpay.dto.JdPayAggregateCreateOrderResponse; -import com.hzs.third.pay.jdpay.dto.JdPayDivisionAccount; -import com.hzs.third.pay.jdpay.dto.JdPayDivisionAccountTradeInfo; +import com.hzs.third.pay.jdpay.dto.*; import com.hzs.third.pay.jdpay.sdk.JdPay; import com.hzs.third.pay.jdpay.util.GsonUtil; -import com.hzs.third.pay.service.IJdPayService; -import com.hzs.third.pay.service.ITOnlineCardService; -import com.hzs.third.pay.service.ITOnlinePaymentSepAccService; -import com.hzs.third.pay.service.ITOnlinePaymentService; +import com.hzs.third.pay.service.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; @@ -35,6 +30,7 @@ import java.math.BigDecimal; import java.net.InetAddress; import java.util.ArrayList; import java.util.Comparator; +import java.util.Date; import java.util.List; /** @@ -59,6 +55,8 @@ public class JdPayServiceImpl implements IJdPayService { @Autowired private ITOnlinePaymentService itOnlinePaymentService; + @Autowired + private IPayService iPayService; @Resource private JdPayWechatAlipayProperties jdPayWechatAlipayProperties; @@ -196,4 +194,94 @@ public class JdPayServiceImpl implements IJdPayService { } + + @Override + public AjaxResult compensationCallBack(String businessCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(TOnlinePayment::getBusinessCode, businessCode); + queryWrapper.eq(TOnlinePayment::getDelFlag, EDelFlag.UN_DELETE.getValue()); + TOnlinePayment tOnlinePayment = itOnlinePaymentService.getOne(queryWrapper, false); + if(ObjectUtil.isEmpty(tOnlinePayment)){ + return AjaxResult.error("订单不存在"); + } + JdPayQueryOrderRequest request = new JdPayQueryOrderRequest(); + request.setOutTradeNo(tOnlinePayment.getBusinessCode()); + JdPayQueryOrderResponse response = null; + try { + response = jdPay.queryOrder(request); + if (ObjectUtil.isEmpty(response.getTradeNo()) || EPayStatus.PAID.getValue() == tOnlinePayment.getPayStatus()) { + log.error("支付信息不存在或已支付"); + return AjaxResult.success("已支付订单 无需补偿回调!"); + } + log.info("queryOrder : {}", JSONUtil.toJsonStr(response)); + if ("FINI".equals(response.getTradeStatus())){ + // 支付成功处理 + + // 商户订单号 + String payNumber = response.getTradeNo(); + // 渠道流水号 + String channelNumber = ""; + // 支付完成时间 + Date payTime = DateUtils.parseDateOne(response.getFinishDate(), DateUtils.YAMMERERS); + + // 回调订单编号 + String thirdOrderCode = response.getOutTradeNo(); + // 订单编号 + String acqOrderId = "compensationCallBack"; + + // 订单金额 + int tradeAmount = Integer.parseInt(response.getTradeAmount()); + BigDecimal payMoney = new BigDecimal(tradeAmount).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP); + Integer payType = convertPayType(response.getPayTool()); + // 支付后续业务处理 + if (iPayService.notifyHandle(tOnlinePayment.getBusinessType().toString() , thirdOrderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) { + return AjaxResult.success(); + } + } + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); + } + + + /** + * 京东收银台处理成功返回 + */ + private static final String SUCCESS = "SUCCESS"; + /** + * 京东收银台处理失败返回 + */ + private static final String ERROR = "ERROR"; + private Integer convertPayType(String payName){ + Integer result = EPayType.WECHAT.getValue(); + switch (payName){ + case "XJK": + result = EPayType.MINI_TREASURY.getValue(); + break; + case "JIOU": + result = EPayType.CREDIT_LINE.getValue(); + break; + case "SJIOU": + result = EPayType.SUPER_CREDIT_LINE.getValue(); + break; + case "ACCT": + result = EPayType.WALLET_BALANCE.getValue(); + break; + case "EXPR": + result = EPayType.BANK_CARD.getValue(); + break; + case "WX": + result = EPayType.WECHAT.getValue(); + break; + case "ALIPAY": + result = EPayType.ALIPAY.getValue(); + break; + case "YSF": + result = EPayType.CLOUD_PAY.getValue(); + break; + + } + return result; + } } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 52524fdd..58c1bf2d 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -2,10 +2,12 @@ package com.hzs.third.pay.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RabbitMqConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.retail.sale.IRetailOrderServiceApi; @@ -33,6 +35,8 @@ public class PayServiceImpl implements IPayService { private ITOnlinePaymentService itOnlinePaymentService; @Autowired private RabbitTemplate rabbitTemplate; + @Autowired + private RedisService redisService; @DubboReference IRetailOrderServiceApi iRetailOrderServiceApi; @@ -118,8 +122,11 @@ public class PayServiceImpl implements IPayService { log.error("支付信息不存在或已支付"); return false; } - + String redisKey = CacheConstants.ONLINE_PAY_KEY + businessCode; try { + if(!redisService.lockKeyOnce(redisKey, 10)){ + return false; + } if (!PayUtil.checkAmount(onlinePayment.getBusinessMoney(), payMoney)) { // 业务金额 大于 实际支付金额 log.error("业务金额大于实际支付金额,支付编号:{}, 支付金额:{}", onlinePayment.getPaymentCode(), payMoney); @@ -156,6 +163,8 @@ public class PayServiceImpl implements IPayService { .set(TOnlinePayment::getCallbackStatus, ECallbackStatus.FAIL.getValue()) .set(TOnlinePayment::getCallbackInfo, e.getMessage()) ); + } finally { + redisService.unlock(redisKey); } return false; } diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java index db5c6cbc..911d8a75 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java @@ -61,6 +61,9 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl and account2 + #{account2} >= 0 + + and account4 + #{account4} >= 0 + - select mb.pk_id pkId, + select mb.pk_id pkId, mb.card_number cardNumber, mb.default_card defaultCard, b.pk_transaction pkBank, b.background_img backgroundImg, - b.bank_name bankName, + b.bank_name bankName, b.logo - from cu_member_bank mb - left join bd_bank b - on mb.pk_bank = b.pk_id - and b.del_flag = 0 - and b.enable_state = 0 - where mb.del_flag = 0 - and mb.pk_country = #{pkCountry} - and mb.pk_member = #{pkMember} - order by mb.default_card desc + from cu_member_bank mb + left join bd_bank b + on mb.pk_bank = b.pk_id + and b.del_flag = 0 + and b.enable_state = 0 + where mb.del_flag = 0 + and mb.pk_country = #{pkCountry} + and mb.pk_member = #{pkMember} + order by mb.default_card desc diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml index 05a3d358..6f10800f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml @@ -34,19 +34,6 @@ - - - DEL_FLAG - , - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, PK_MEMBER, WITHDRAW_CODE, PK_ACCOUNT, PK_BANK, PK_RATE, CASH_AMOUNT, SERVICE_CHARGE, INCOME_TAX, - ISSUED_AMOUNT,APPROVE_STATE, PAYMENT_TIME, PAYER, REMARKS, APPROVER, APPROVE_TIME, PK_ROLE, ROLE_NAME,STATUS,PAYER_REMARKS,APPROVE_REMARKS - - SELECT r.*, m.member_code memberCode, diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java index 775d54e6..13dbece2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java @@ -4,21 +4,15 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.system.sys.dto.LoginUser; /** - * @Description: 撤单的service - * @Author: sui q - * @Time: 2022/10/27 10:49 - * @Classname: ISaOrderRevokeService - * @PackageName: com.hzs.sale.order.service + * 撤单的service */ public interface ISaOrderRevokeService { /** * 撤销订单 - * @param saOrder 需要销售的订单信息 + * + * @param saOrder 需要销售的订单信息 * @param loginUser 登录用户 - * @return: void - * @Author: sui q - * @Date: 2022/10/27 10:51 - */ + */ void revokeSaOrder(SaOrder saOrder, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java index b3b219ed..1c4c8623 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java @@ -1,10 +1,8 @@ package com.hzs.sale.order.service.impl; import cn.hutool.json.JSONUtil; -import com.google.gson.JsonObject; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.order.service.ISaOrderRevokeService; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -13,17 +11,13 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.stereotype.Service; /** - * @Description: 撤单逻辑类 - * @Author: sui q - * @Time: 2022/10/27 10:50 - * @Classname: SaOrderRevokeServiceImpl - * @PackageName: com.hzs.sale.order.service.impl + * 撤单逻辑类 */ @Service public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { @DubboReference - private IApprovalServiceApi approvalServiceApi; + IApprovalServiceApi iApprovalServiceApi; @Override public void revokeSaOrder(SaOrder saOrder, LoginUser loginUser) { @@ -32,6 +26,6 @@ public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { .businessCode(saOrder.getOrderCode()) .businessData(JSONUtil.toJsonStr(saOrder)) .build(); - approvalServiceApi.submit(approvalSubmitDTO, loginUser); + iApprovalServiceApi.submit(approvalSubmitDTO, loginUser); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java index d5f146cc..314bf7b7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java @@ -13,12 +13,6 @@ import java.util.List; /** * 交易配置 - * - * @Description: - * @Author: ljc - * @Time: 2023/8/18 11:14 - * @Classname: BdTradeConfigVO - * @Package_name: com.hzs.system.config.vo */ @Data @AllArgsConstructor @@ -42,7 +36,6 @@ public class BdTradeConfigVO implements Serializable { /** * 1:提现 2:转账 (来源枚举EBusinessModule) */ - @Transaction(transactionKey = EnumsPrefixConstants.BUSINESS_MODULE) private Integer businessModule; private String businessModuleVal; diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index 954eb6b4..e862096d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -2305,15 +2305,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - @GetMapping("/get-grant-way") - public AjaxResult getGrantWay() { - List enumEntityList = new ArrayList<>(); - for (EGrantWay value : EGrantWay.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.GRANT_WAY_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 数据类型(安置) @@ -2410,7 +2401,7 @@ public class EnumsController extends BaseController { public AjaxResult businessModule() { List enumEntityList = new ArrayList<>(); for (EBusinessModule value : EBusinessModule.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.BUSINESS_MODULE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 095fc008..ef289eec 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -576,11 +576,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 交易配置 业务类型 - for (EBusinessModule value : EBusinessModule.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 点位状态 for (EPointStatus value : EPointStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml index 4f67ce1b..9404d999 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdWithdrawalAutoMapper.xml @@ -2,27 +2,4 @@ - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, PK_WITHDRAWAL, LOWER_BOUND, UPPER_BOUND - - diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java index a6c2032b..44f909c1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/EnumsPrefixConstants.java @@ -816,11 +816,6 @@ public class EnumsPrefixConstants { */ public static final String RATIO_TYPE = "ENU_R_T_"; - /** - * 抽奖奖品发放方式 - */ - public static final String GRANT_WAY_TYPE = "GRANT_WAY_TYPE_"; - /** * 数据类型(业绩查询) */ @@ -831,11 +826,6 @@ public class EnumsPrefixConstants { */ public static final String RECOMMEND_DADA_TYPE = "ENU_R_D_T_"; - /** - * 交易配置 业务类型 - */ - public static final String BUSINESS_MODULE = "ENU_B_M_"; - /** * 点位状态 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java index 27824c19..6d69423b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/FinanceMsgConstants.java @@ -125,11 +125,6 @@ public class FinanceMsgConstants { */ public static final String RECHAGER_IMPOR_CODE_ERROR = "编号导入有误,请核对!"; - /** - * 导入的编号未支付,请核对! -- 导入的编号未支付,请核对! - */ - public static final String RECHAGER_NO_PAY = "导入的编号未支付,请核对!"; - /** * 钱包明细导出 -- 钱包明细导出 */ @@ -198,56 +193,16 @@ public class FinanceMsgConstants { */ public static final String CONFIGURE_WITHDRAWAL_INFO = "请配置提现信息"; - /** - * 请绑定银行卡 -- 请绑定银行卡 - */ - public static final String BIND_BANK_CARD = "请绑定银行卡"; - - /** - * 暂时不请允许提现,请先升级 -- 暂时不请允许提现,请先升级 - */ - public static final String NOT_WITHDRAWAL_UPGRADE = "暂时不请允许提现,请先升级"; - /** * 请选择提现账户 -- 请选择提现账户 */ public static final String SELECT_WITHDRAWAL_ACCOUNT = "请选择提现账户"; - /** - * 不允许提现 -- 不允许提现 - */ - public static final String NOT_ALLOWED_WITHDRAWAL = "不允许提现"; - - /** - * 超过提现次数 -- 超过提现次数 - */ - public static final String EXCEEDING_WITHDRAWALS_NUMBER = "超过提现次数"; - - /** - * 请配置提现金额限制 -- 请配置提现金额限制 - */ - public static final String CONFIGURE_WITHDRAWAL_AMOUNT_LIMIT = "请配置提现金额限制"; - /** * 请输入提现金额 -- 请输入提现金额 */ public static final String ENTER_WITHDRAWAL_AMOUNT = "请输入提现金额"; - /** - * 请输入整数值 -- 请输入整数值 - */ - public static final String ENTER_INTEGER_VALUE = "请输入整数值"; - - /** - * 提现金额必须大于最低提现金额 -- 提现金额必须大于最低提现金额 - */ - public static final String WITHDRAWAL_AMOUNT_GREATER_MINIMUM_AMOUNT = "提现金额必须大于最低提现金额"; - - /** - * 提现金额必须小于最高提现金额 -- 提现金额必须小于最高提现金额 - */ - public static final String WITHDRAWAL_AMOUNT_LESS_MAXIMUM_AMOUNT = "提现金额必须小于最高提现金额"; - /** * 余额不足 -- 余额不足 */ @@ -263,11 +218,6 @@ public class FinanceMsgConstants { */ public static final String TRANSFER_OUT_ACCOUNT_NOT_EMPTY = "请选择要转出的账户"; - /** - * 转账金额有误 -- 转账金额有误 - */ - public static final String INCORRECT_TRANSFER_AMOUNT = "转账金额有误"; - /** * 转账金额不能低于0且小数位数最多只能有2位 @@ -293,11 +243,6 @@ public class FinanceMsgConstants { */ public static final String NOT_ALLOWED_TRANSFER = "该账号不允许转账"; - /** - * 请先实名认证 -- 请先实名认证 - */ - public static final String REAL_NAME_NOT_EXIST = "请先实名认证"; - /** * 实名认证的真实姓名与营业执照的法人姓名是不一致 -- 法人姓名与实名认证的真实姓名不一致 */ @@ -331,26 +276,11 @@ public class FinanceMsgConstants { */ public static final String RECHARGE_DETAILS_EXPORT = "充值明细导出"; - /** - * 银行卡号不能为空 -- 银行卡号不能为空! - */ - public static final String BANK_CARD_CANNOT_EMPTY = "银行卡号不能为空!"; - - /** - * 开户名不能为空 -- 开户名不能为空! - */ - public static final String ACCOUNT_NAME_CANNOT_EMPTY = "开户名不能为空!"; - /** * 验证码不能为空 -- 验证码不能为空! */ public static final String VERIFICATION_CODE_CANNOT_EMPTY = "验证码不能为空!"; - /** - * 开户支行不能为空 -- 开户支行不能为空! - */ - public static final String OPENING_BRANCH_CANNOT_EMPTY = "开户支行不能为空!"; - /** * 开户支行不能为空 -- 真实姓名不能为空! */ @@ -444,16 +374,6 @@ public class FinanceMsgConstants { */ public static final String BUSINESS_LICENSE_REFUSE_RESET = "营业执照审核未通过,请勿操作重置"; - /** - * 提现正在审批中,请稍后再试 -- 提现正在审批中,请稍后再试 - */ - public static final String WITHDRAWAL_APPROVAL = "提现正在审批中,请稍后再试"; - - /** - * 提现金额必须为100的整数倍 - */ - public static final String WITHDRAW_AMOUNT_MULTIPLE = "提现金额必须为100的整数倍"; - /** * 身份证的图片地址不能为空 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java index 61c190f4..410f9701 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBankCardStatus.java @@ -5,12 +5,6 @@ import lombok.Getter; /** * 银行卡默认状态 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/9 15:14 - * @Classname: EBankCardStatus - * @Package_name: com.hzs.common.core.enums */ @Getter @AllArgsConstructor diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java index 91130611..801297d0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBusinessModule.java @@ -1,17 +1,10 @@ package com.hzs.common.core.enums; -import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; /** * 交易配置 业务类型 - * - * @Description: - * @Author: ljc - * @Time: 2023/8/18 10:01 - * @Classname: EBusinessModule - * @Package_name: com.hzs.common.core.enums */ @AllArgsConstructor @Getter @@ -20,11 +13,11 @@ public enum EBusinessModule { /** * 1=提现 */ - WITHDRAWAL(1, "提现", 0, EnumsPrefixConstants.BUSINESS_MODULE + "1"), + WITHDRAWAL(1, "提现", 0), /** * 2=转账 */ - TRANSFER_ACCOUNTS(2, "转账", 0, EnumsPrefixConstants.BUSINESS_MODULE + "2"), + TRANSFER_ACCOUNTS(2, "转账", 0), ; @@ -40,9 +33,5 @@ public enum EBusinessModule { * 是否启用(0=是,1=否) -- 来源EYesNo */ private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java deleted file mode 100644 index afc00e92..00000000 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EGrantWay.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.common.core.enums; - -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.AllArgsConstructor; -import lombok.Getter; - -/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/15 10:57 - * @Classname: EGrantWay - * @PackageName: com.hzs.common.core.enums - */ -@AllArgsConstructor -@Getter -public enum EGrantWay { - /** - * 商品展示 - */ - TYPE_0(0, "实物", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "0"), - - TYPE_1(1, "消费账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "1"), - - TYPE_2(2, "现金账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "2"), - - TYPE_6(6, "积分账户", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "6"), - - TYPE_8(8, "复购券", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "8"), - - TYPE_11(11, "直播代金券", 0, EnumsPrefixConstants.GRANT_WAY_TYPE + "11"); - - - /** - * 实际值 - */ - private final int value; - /** - * 显示标签 - */ - private final String label; - /** - * 是否启用(0=是,1=否) -- 来源EYesNo - */ - private final int enable; - /** - * 国际化翻译key值 - */ - private final String key; -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java index eb961803..4b3bf74e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberBank.java @@ -11,12 +11,7 @@ import lombok.experimental.Accessors; import java.util.Date; /** - *

* 会员信息-银行卡信息 - *

- * - * @author hzs - * @since 2022-08-31 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java b/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java deleted file mode 100644 index 01228656..00000000 --- a/bd-third/src/main/java/com/hzs/third/bankcard/common/HttpConstant.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.hzs.third.bankcard.common; - -import lombok.Data; - -/** - * 银行卡验证返回状态 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/25 10:42 - * @Classname: HttpConstant - * @Package_name: com.hz.bankCard.common - */ -@Data -public class HttpConstant { - /** - * 一致 - */ - public static final String BANK_CARD_SAME = "1200"; - /** - * 不一致 - */ - public static final String BANK_CARD_DIFFERENT = "1201"; - - - /** - * 银行卡状态错误 - */ - public static final String BANK_CARD_STATUS_EEOR = "1203"; - - /** - * 验证失败 - */ - public static final String BANK_CARD_FAIL = "1206"; - - - /** - * 验证错误 - */ - public static final String BANK_CARD_EEOR = "1206"; - -} diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java b/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java index 6fa5497c..75e4560b 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/provider/BankCardValidateProvider.java @@ -4,29 +4,21 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.utils.StringUtils; import com.hzs.third.bankcard.IBankCardServiceApi; import com.hzs.third.bankcard.dto.BankCardParam; -import com.hzs.third.bankcard.service.BankCardService; +import com.hzs.third.bankcard.service.IBankCardService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** * 银行卡四要素验证服务 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/9 9:05 - * @Classname: BankCardValidateProvider - * @Package_name: com.hzs.third.bankCard.provider */ - @DubboService public class BankCardValidateProvider implements IBankCardServiceApi { @Autowired - BankCardService bankCardService; + private IBankCardService iBankCardService; @Override - public R verifyBankCard(BankCardParam bankCardParam) { - + public R verifyBankCard(BankCardParam bankCardParam) { if (StringUtils.isEmpty(bankCardParam.getIdCard())) { return R.fail("身份证号码不能为空!"); } @@ -36,12 +28,10 @@ public class BankCardValidateProvider implements IBankCardServiceApi { if (StringUtils.isEmpty(bankCardParam.getMobile())) { return R.fail("手机号不能为空!"); } - if (StringUtils.isEmpty(bankCardParam.getBankCard())) { return R.fail("银行卡号不能为空!"); } - return bankCardService.verifyBankCard(bankCardParam); + return iBankCardService.verifyBankCard(bankCardParam); } - } diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java b/bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java similarity index 55% rename from bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java rename to bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java index d799a331..bf98d7a7 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/service/BankCardService.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/service/IBankCardService.java @@ -5,14 +5,8 @@ import com.hzs.third.bankcard.dto.BankCardParam; /** * 银行卡验证接口 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/24 18:03 - * @Classname: BankCardService - * @Package_name: com.hz.bankCard.service.impl */ -public interface BankCardService { +public interface IBankCardService { /** * 银行卡四要素校验 @@ -20,5 +14,6 @@ public interface BankCardService { * @param bankCardParam 入参 * @return BankCardVO */ - R verifyBankCard(BankCardParam bankCardParam); + R verifyBankCard(BankCardParam bankCardParam); + } diff --git a/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java b/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java index e046de5e..f5743b06 100644 --- a/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/bankcard/service/impl/BankCardServiceImpl.java @@ -1,16 +1,14 @@ package com.hzs.third.bankcard.service.impl; - import cn.hutool.http.Header; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.domain.R; -import com.hzs.third.bankcard.common.HttpConstant; import com.hzs.third.bankcard.dto.BankCardParam; -import com.hzs.third.bankcard.service.BankCardService; +import com.hzs.third.bankcard.service.IBankCardService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -20,16 +18,10 @@ import java.util.Map; /** * 银行卡验证接口 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/24 18:14 - * @Classname: BankCardServiceImpl - * @Package_name: com.hz.bankCard.service.impl */ @Slf4j @Service -public class BankCardServiceImpl implements BankCardService { +public class BankCardServiceImpl implements IBankCardService { @Value("${bankCard.url}") private String url; @@ -39,65 +31,53 @@ public class BankCardServiceImpl implements BankCardService { private String appCode; @Override - public R verifyBankCard(BankCardParam bankCardParam) { - String authorization = "APPCODE " + appCode; - HttpResponse response = HttpRequest.post(url) - .header(Header.AUTHORIZATION, authorization) - .header(Header.CONTENT_TYPE, "application/x-www-form-urlencoded; charset=UTF-8") - .form(getInParam(bankCardParam)) - .timeout(20000) - .execute(); - return parseResult(response, bankCardParam); - } + public R verifyBankCard(BankCardParam bankCardParam) { + Map param = new HashMap<>(); + param.put("bankcard", bankCardParam.getBankCard()); + param.put("idcard", bankCardParam.getIdCard()); + param.put("name", bankCardParam.getName()); + param.put("mobile", bankCardParam.getMobile()); + HttpResponse response = HttpRequest.post(url) + .header(Header.AUTHORIZATION, "APPCODE " + appCode) + .header(Header.CONTENT_TYPE, "application/x-www-form-urlencoded; charset=UTF-8") + .form(param) + .timeout(10000) + .execute(); + return parseResult(response); + } /** * 解析返回的结果集 - *

- * 1200 银行卡验证一致 收费 - * 1201 银行卡验证不一致 收费 - * 1203 银行卡状态错误 收费 - * 1206 验证失败 免费 - * - * @param response 响应信息 - * @return bankCardVO */ - private R parseResult(HttpResponse response, BankCardParam bankCardParam) { + private R parseResult(HttpResponse response) { String result = response.body(); - log.info("调用接口返回信息: " + result); - if (response.getStatus() == HttpStatus.SUCCESS) { - JsonObject resultJson = JsonParser.parseString(result).getAsJsonObject(); - //状态码 - String code = resultJson.get("code").getAsString(); - //返回信息 - String message = resultJson.get("message").getAsString(); - if (code.equals(HttpConstant.BANK_CARD_SAME)) { - return R.ok(); + log.info("调用银行卡认证接口返回信息: " + result); + + if (HttpStatus.SUCCESS == response.getStatus()) { + JSONObject resultObj = JSONUtil.parseObj(result); + if ("200".equals(resultObj.getStr("code"))) { + // 返回成功 + JSONObject dataObj = resultObj.getJSONObject("data"); + int resultInt = dataObj.getInt("result"); + if (resultInt == 0) { + // 一致 + return R.ok(); + } else if (resultInt == 1) { + // 不一致 + return R.fail("银行卡预留信息不一致,请确认后重试"); + } else { + // 查不到卡信息 + return R.fail("银行卡信息不存在,请确认银行卡是否有效"); + } } else { - log.info("银行卡四要素校验接口正常返回状态值: {},信息为: {}", code, message); - return R.fail(message); + // 返回失败 + return R.fail(resultObj.getStr("msg")); } } else { - String message = "认证失败"; - log.info("银行卡四要素校验接口异常返回状态值: {},信息为: {}", response.getStatus(), message); - return R.fail(message); + log.error("调用银行卡认证接口失败"); + return R.fail("银行卡认证失败,请重试"); } } - /** - * 获取入参 - * - * @param bankCardParam 银行卡入参 - * @return String - */ - private Map getInParam(BankCardParam bankCardParam) { - JsonObject jsonObject = new JsonObject(); - jsonObject.addProperty("name", bankCardParam.getName()); - jsonObject.addProperty("mobile", bankCardParam.getMobile()); - jsonObject.addProperty("bankcard", bankCardParam.getBankCard()); - jsonObject.addProperty("idcard", bankCardParam.getIdCard()); - Map param = new HashMap<>(); - param.put("biz_content", jsonObject.toString()); - return param; - } } diff --git a/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java b/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java index c194b376..88def8ca 100644 --- a/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/express/service/impl/ExpressServiceImpl.java @@ -20,12 +20,8 @@ import java.util.List; import java.util.Map; /** - * @Description: 快递100 - * @Author: ljc - * @Date: 2022/8/24 14:38 - * @Version:1.0 + * 快递100 */ - @Service @Slf4j public class ExpressServiceImpl implements IExpressService { @@ -33,7 +29,6 @@ public class ExpressServiceImpl implements IExpressService { @Autowired private ExpressConfig expressConfig; - @Override public R expressTrackInfo(String trackingNumber, String mobile) { String customer = expressConfig.getCustomer(); @@ -41,7 +36,6 @@ public class ExpressServiceImpl implements IExpressService { String url = expressConfig.getUrl(); QueryTrackParam queryTrackParam = new QueryTrackParam(); - // queryTrackParam.setCom("JD"); queryTrackParam.setNum(trackingNumber); queryTrackParam.setPhone(mobile); String param = new Gson().toJson(queryTrackParam); @@ -119,10 +113,9 @@ public class ExpressServiceImpl implements IExpressService { * @return String */ private String querySign(String param, String key, String customer) { - StringBuilder sb = new StringBuilder(); - sb.append(param); - sb.append(key); - sb.append(customer); - return sign(sb.toString()); + String sb = param + + key + + customer; + return sign(sb); } } From 6267b5fb07223c030b88a52ed43756efd285d96a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 17 Sep 2025 13:49:51 +0800 Subject: [PATCH 169/362] =?UTF-8?q?##=20=E6=AF=8F=E5=A4=A9=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E7=BB=93=E7=AE=97=E6=98=8E=E7=BB=86=E8=A1=A8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../achieve/mapper/CuMemberTreeMapper.java | 16 +++- .../service/impl/CuMemberTreeServiceImpl.java | 9 +- .../bonus/achieve/CuMemberTreeMapper.xml | 57 +++++++++++- .../core/constant/TableNameConstants.java | 6 +- .../member/achieve/CuMemberRetailDetail.java | 92 +++++++++++++++++++ 5 files changed, 174 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 0483be60..3dc69543 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -21,12 +21,26 @@ public interface CuMemberTreeMapper extends BaseMapper { void createCuMemberTreeTable(String tableName); /** - * 创建会员网体结算记录表(按照日记录,每天一条,记录30天的) + * 创建会员结算记录表(按照日记录,每天一条) * * @param tableName 日期 */ void createCuMemberSettleTable(String tableName); + /** + * 创建结算明细表 + * + * @param tableName + */ + void createCuMemberRetailDetail(String tableName); + + /** + * 创建结算明细表会员索引 + * + * @param tableName + */ + void createCuMemberRetailDetailMemberIndex(String tableName); + /* * 创建会员网体复购极差结算表 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index b4dddc1f..4e3a2ac0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -54,8 +54,13 @@ public class CuMemberTreeServiceImpl extends ServiceImpl - period - NUMBER(6) default 0 not null, + period NUMBER(6) default 0 not null, pk_member NUMBER(20) not null, pk_parent NUMBER(20) not null, pk_place_parent NUMBER(20), @@ -289,6 +288,60 @@ ) + + + create table ${tableName} + ( + pk_id NUMBER(20) primary key, + pk_member NUMBER(20) not null, + child_node NUMBER(8) not null, + pk_parent NUMBER(20) not null, + stage NUMBER(1) default 1 not null, + stage_status NUMBER(1) default 1 not null, + stage_date DATE, + point_11 NUMBER(20), + point_12 NUMBER(20), + point_21 NUMBER(20), + point_22 NUMBER(20), + point_23 NUMBER(20), + point_24 NUMBER(20), + point_31 NUMBER(20), + point_32 NUMBER(20), + point_33 NUMBER(20), + point_34 NUMBER(20), + point_35 NUMBER(20), + point_36 NUMBER(20), + point_37 NUMBER(20), + point_38 NUMBER(20), + point_member_11 NUMBER(20), + point_member_12 NUMBER(20), + point_member_21 NUMBER(20), + point_member_22 NUMBER(20), + point_member_23 NUMBER(20), + point_member_24 NUMBER(20), + point_member_31 NUMBER(20), + point_member_32 NUMBER(20), + point_member_33 NUMBER(20), + point_member_34 NUMBER(20), + point_member_35 NUMBER(20), + point_member_36 NUMBER(20), + point_member_37 NUMBER(20), + point_member_38 NUMBER(20), + point_type NUMBER(1) default 0 not null, + point_gift NUMBER(1) default 0 not null, + creation_time DATE + ) + + + + + create index ${tableName}_MEMBER + on ${tableName} + ( + PK_MEMBER + ) + + create index ${tableName}_parent on diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java index 59771dc9..fd74ffa2 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/TableNameConstants.java @@ -31,9 +31,13 @@ public class TableNameConstants { public static final String CU_MEMBER_SETTLE = "cu_member_settle"; /** - * 会员级差计算表 + * 会员结算表 */ public static final String CU_MEMBER_RETAIL_RANGE = "CU_MEMBER_RETAIL"; + /** + * 会员结算明细表 + */ + public static final String CU_MEMBER_RETAIL_RANGE_DETAIL = "CU_MEMBER_RETAIL_DETAIL"; /** * 会员结算秒结表 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index eb417641..5d262b07 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -7,6 +7,8 @@ import java.util.Date; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.web.domain.BaseEntity; import lombok.Data; import lombok.EqualsAndHashCode; @@ -147,6 +149,90 @@ public class CuMemberRetailDetail extends BaseEntity { @TableField("POINT_38") private Long point38; + /** + * 点位1-1会员 + */ + @TableField("POINT_MEMBER_11") + private Long pointMember11; + + /** + * 点位1-2会员 + */ + @TableField("POINT_MEMBER_12") + private Long pointMember12; + + /** + * 点位2-1会员 + */ + @TableField("POINT_MEMBER_21") + private Long pointMember21; + + /** + * 点位2-2会员 + */ + @TableField("POINT_MEMBER_22") + private Long pointMember22; + + /** + * 点位2-3会员 + */ + @TableField("POINT_MEMBER_23") + private Long pointMember23; + + /** + * 点位2-4会员 + */ + @TableField("POINT_MEMBER_24") + private Long pointMember24; + + /** + * 点位3-1会员 + */ + @TableField("POINT_MEMBER_31") + private Long pointMember31; + + /** + * 点位3-2会员 + */ + @TableField("POINT_MEMBER_32") + private Long pointMember32; + + /** + * 点位3-3会员 + */ + @TableField("POINT_MEMBER_33") + private Long pointMember33; + + /** + * 点位3-4会员 + */ + @TableField("POINT_MEMBER_34") + private Long pointMember34; + + /** + * 点位3-5会员 + */ + @TableField("POINT_MEMBER_35") + private Long pointMember35; + + /** + * 点位3-6会员 + */ + @TableField("POINT_MEMBER_36") + private Long pointMember36; + + /** + * 点位3-7会员 + */ + @TableField("POINT_MEMBER_37") + private Long pointMember37; + + /** + * 点位3-8会员 + */ + @TableField("POINT_MEMBER_38") + private Long pointMember38; + /** * 点位类型(0=普通,1=赠送点位) */ @@ -159,5 +245,11 @@ public class CuMemberRetailDetail extends BaseEntity { @TableField("POINT_GIFT") private Integer pointGift; + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @TableField("CREATION_TIME") + private Date creationTime; } From 3a2f7c4f264e0a3302e8fed664094ef81bdaf9e2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 17 Sep 2025 14:21:29 +0800 Subject: [PATCH 170/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=AD=97=E6=AE=B5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/common/domain/member/achieve/CuMemberRetailDetail.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 5d262b07..57431fa7 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -18,11 +18,10 @@ import lombok.experimental.Accessors; * 日结算阶段表 */ @Data -@EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") @TableName("CU_MEMBER_RETAIL_DETAIL") -public class CuMemberRetailDetail extends BaseEntity { +public class CuMemberRetailDetail { private static final long serialVersionUID = 1L; From d0f3f55271c09309d4607fa0758c31bf11b44f51 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 17 Sep 2025 14:21:29 +0800 Subject: [PATCH 171/362] =?UTF-8?q?##=20=E5=8E=BB=E6=8E=89=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E5=AD=97=E6=AE=B5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/common/domain/member/achieve/CuMemberRetailDetail.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 5d262b07..57431fa7 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -18,11 +18,10 @@ import lombok.experimental.Accessors; * 日结算阶段表 */ @Data -@EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") @TableName("CU_MEMBER_RETAIL_DETAIL") -public class CuMemberRetailDetail extends BaseEntity { +public class CuMemberRetailDetail { private static final long serialVersionUID = 1L; From 1a4357ba26d7c0290edbcc03a901f58f4787fde9 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 09:02:44 +0800 Subject: [PATCH 172/362] =?UTF-8?q?##=20Opt=20-=20=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E6=B3=A8=E5=86=8C=E6=B5=81=E7=A8=8B-?= =?UTF-8?q?=E9=80=82=E9=85=8D=E5=95=86=E5=9F=8E=E4=B8=93=E5=8C=BA=E9=82=AE?= =?UTF-8?q?=E8=B4=B9&=E5=A4=9A=E5=95=86=E5=93=81=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 98 ++++++++++++++++++- .../service/impl/RetailOrderServiceImpl.java | 6 ++ .../sale/param/RetailOrderPostageParam.java | 7 ++ .../controller/api/ApiBdWaresController.java | 2 +- .../pay/controller/api/PayController.java | 4 +- .../pay/service/impl/PayServiceImpl.java | 7 +- 6 files changed, 118 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index e06f04e4..895081eb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -2,6 +2,7 @@ package com.hzs.retail.sale.controller.api; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; @@ -21,6 +22,7 @@ import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.wares.BdWares; +import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; @@ -38,6 +40,7 @@ import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.sale.wares.service.IBdWaresSpecsSkuService; import com.hzs.system.base.IAreaServiceApi; +import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -82,6 +85,8 @@ public class ApiRetailOrderController { IGradeServiceApi iGradeServiceApi; @DubboReference IAreaServiceApi iAreaServiceApi; + @DubboReference + IAwardsServiceApi iAwardsServiceApi; @Autowired private MemberTokenService memberTokenService; @@ -200,6 +205,82 @@ public class ApiRetailOrderController { } } + /** + * 查询邮费 + * + * @param postageParam 邮费入参 + * @return + */ + @PostMapping("/query-reg-order-postage") + public AjaxResult queryRegOrderPostage(@RequestBody RetailOrderPostageParam postageParam) { + // 当前会员ID + postageParam.setPkCreator(SecurityUtils.getUserId()); + + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { + // 注册包邮 + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(BigDecimal.ZERO) + .build()); + } else { + CuMember buyMember; + if (StringUtils.isNotEmpty(postageParam.getBuyMemberCode())) { + // 购买人不为空,则需要查询重新赋一下 + buyMember = iMemberServiceApi.getRetailMember(null, postageParam.getBuyMemberCode()).getData(); + if (null == buyMember) { + return AjaxResult.error("会员编号不存在"); + } + } else { + buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); + } + + // 查询邮费 + RetailOrderParam orderParam = BeanUtil.copyProperties(postageParam, RetailOrderParam.class); + // 购物车中获取商品信息 + BigDecimal orderAmount = BigDecimal.ZERO; + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : postageParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + if(ObjectUtil.isEmpty(buyMember)){ + buyMember = new CuMember(); + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); +// Map awardsMap = iAwardsServiceApi.getAwards().getData(); + buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); + buyMember.setPkSettleCountry(1); + buyMember.setPkAwards(1); + } + orderParam.setOrderItemsParams(orderItemsParams); + iRetailOrderService.createSaOrderItems(orderParam, null, buyMember, null, null); + + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(orderParam.getPostage()) + .build()); + } + } + /** * 确认注册订单 * @@ -618,7 +699,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ - @RepeatSubmit +// @RepeatSubmit @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { @@ -627,7 +708,8 @@ public class ApiRetailOrderController { // 会员ID registerParam.setPkCreator(SecurityUtils.getUserId()); // 新零售注册专区 - registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + registerParam.setSpecialArea(registerParam.getSpecialArea()); // 系统类型 registerParam.setSystemType(SecurityUtils.getSystemType()); @@ -683,6 +765,16 @@ public class ApiRetailOrderController { .build()); } registerParam.setOrderItemsParams(orderItemsParams); +// if (ESpecialArea.RETAIL_REPURCHASE.getValue() == registerParam.getSpecialArea()) { +// CuMember buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); +// if(ObjectUtil.isEmpty(buyMember)){ +// buyMember = new CuMember(); +// buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); +// buyMember.setPkSettleCountry(1); +// buyMember.setPkAwards(1); +// } +// iRetailOrderService.createSaOrderItems(registerParam, null, buyMember, null, null); +// } CuMemberShare memberShare = memberTokenService.getLoginMember().getCuMemberShare(); registerParam.setCuMemberShare(memberShare); // registerParam.setPkCreator(memberShare.getPkParent()); @@ -690,7 +782,7 @@ public class ApiRetailOrderController { String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); // redis 拿金额 SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); - return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount()); + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount().add(saOrder.getPostage())); } /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index febd7feb..6776a5ad 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -109,6 +109,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { CuMember newMember = new CuMember(); newMember.setMemberName(registerParam.getMemberName()); newMember.setPhone(registerParam.getPhone()); + newMember.setPkSettleGrade(gradeList.get(0).getPkId()); + newMember.setPkSettleCountry(1); + newMember.setPkAwards(1); // 封装订单信息 SaOrderExt saOrderExt = this.createSaOrder(registerParam, gradeList, newMember); @@ -214,6 +217,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } } + }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ +// saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); + saOrderExt.setPostage(orderParam.getPostage()); } return saOrderExt; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java index f8e29233..473f366a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.param; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.Data; @@ -66,4 +67,10 @@ public class RetailOrderPostageParam implements Serializable { */ private Integer tranType = ETransportType.LAND.getValue(); + + /** + * 商品列表 + */ + private List waresList; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index 51f64430..5e14ce30 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -94,7 +94,7 @@ public class ApiBdWaresController extends BaseController { */ @GetMapping("/list-wares-share") public AjaxResult listWaresShare(WaresShareParam param) { - param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); param.setIsMakerGift(EWaresType.ORDINARY.getValue()); param.setPkCountry(CountryConstants.CHINA_COUNTRY); diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java index 6af4c408..62a6ecbc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java @@ -106,7 +106,9 @@ public class PayController { if (EPayStatus.PAID.getValue() == onlinePayment.getPayStatus()) { return AjaxResult.error("该订单已支付"); } - + if(ObjectUtil.isEmpty(onlinePayment.getPayMoney())){ + return AjaxResult.error("当前订单已经发起过支付,如需再次购买,请重新下单!"); + } // 同一业务订单多次使用不同支付数据,以最新一次为准 onlinePayment.setPayChannel(payChannel.getValue()); onlinePayment.setPayType(payType.getValue()); diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 58c1bf2d..79badb8c 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -70,8 +70,11 @@ public class PayServiceImpl implements IPayService { log.error("支付信息不存在或已支付"); return false; } - + String redisKey = CacheConstants.ONLINE_PAY_KEY + businessCode; try { + if(!redisService.lockKeyOnce(redisKey, 10)){ + return false; + } if (!PayUtil.checkAmount(onlinePayment.getBusinessMoney(), payMoney)) { // 业务金额 大于 实际支付金额 log.error("业务金额大于实际支付金额,支付编号:{}, 支付金额:{}", onlinePayment.getPaymentCode(), payMoney); @@ -106,6 +109,8 @@ public class PayServiceImpl implements IPayService { .set(TOnlinePayment::getCallbackStatus, ECallbackStatus.FAIL.getValue()) .set(TOnlinePayment::getCallbackInfo, e.getMessage()) ); + } finally { + redisService.unlock(redisKey); } return false; } From e66054c52604e08d8f145d70b46a753a6cf7ee18 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 09:02:44 +0800 Subject: [PATCH 173/362] =?UTF-8?q?##=20Opt=20-=20=E8=BF=81=E7=A7=BB?= =?UTF-8?q?=E5=88=86=E4=BA=AB=E6=B3=A8=E5=86=8C=E6=B5=81=E7=A8=8B-?= =?UTF-8?q?=E9=80=82=E9=85=8D=E5=95=86=E5=9F=8E=E4=B8=93=E5=8C=BA=E9=82=AE?= =?UTF-8?q?=E8=B4=B9&=E5=A4=9A=E5=95=86=E5=93=81=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 98 ++++++++++++++++++- .../service/impl/RetailOrderServiceImpl.java | 6 ++ .../sale/param/RetailOrderPostageParam.java | 7 ++ .../controller/api/ApiBdWaresController.java | 2 +- .../pay/controller/api/PayController.java | 4 +- .../pay/service/impl/PayServiceImpl.java | 7 +- 6 files changed, 118 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index e06f04e4..895081eb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -2,6 +2,7 @@ package com.hzs.retail.sale.controller.api; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; @@ -21,6 +22,7 @@ import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.wares.BdWares; +import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; @@ -38,6 +40,7 @@ import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.sale.wares.service.IBdWaresSpecsSkuService; import com.hzs.system.base.IAreaServiceApi; +import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -82,6 +85,8 @@ public class ApiRetailOrderController { IGradeServiceApi iGradeServiceApi; @DubboReference IAreaServiceApi iAreaServiceApi; + @DubboReference + IAwardsServiceApi iAwardsServiceApi; @Autowired private MemberTokenService memberTokenService; @@ -200,6 +205,82 @@ public class ApiRetailOrderController { } } + /** + * 查询邮费 + * + * @param postageParam 邮费入参 + * @return + */ + @PostMapping("/query-reg-order-postage") + public AjaxResult queryRegOrderPostage(@RequestBody RetailOrderPostageParam postageParam) { + // 当前会员ID + postageParam.setPkCreator(SecurityUtils.getUserId()); + + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { + // 注册包邮 + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(BigDecimal.ZERO) + .build()); + } else { + CuMember buyMember; + if (StringUtils.isNotEmpty(postageParam.getBuyMemberCode())) { + // 购买人不为空,则需要查询重新赋一下 + buyMember = iMemberServiceApi.getRetailMember(null, postageParam.getBuyMemberCode()).getData(); + if (null == buyMember) { + return AjaxResult.error("会员编号不存在"); + } + } else { + buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); + } + + // 查询邮费 + RetailOrderParam orderParam = BeanUtil.copyProperties(postageParam, RetailOrderParam.class); + // 购物车中获取商品信息 + BigDecimal orderAmount = BigDecimal.ZERO; + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : postageParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + if(ObjectUtil.isEmpty(buyMember)){ + buyMember = new CuMember(); + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); +// Map awardsMap = iAwardsServiceApi.getAwards().getData(); + buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); + buyMember.setPkSettleCountry(1); + buyMember.setPkAwards(1); + } + orderParam.setOrderItemsParams(orderItemsParams); + iRetailOrderService.createSaOrderItems(orderParam, null, buyMember, null, null); + + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(orderParam.getPostage()) + .build()); + } + } + /** * 确认注册订单 * @@ -618,7 +699,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ - @RepeatSubmit +// @RepeatSubmit @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { @@ -627,7 +708,8 @@ public class ApiRetailOrderController { // 会员ID registerParam.setPkCreator(SecurityUtils.getUserId()); // 新零售注册专区 - registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + registerParam.setSpecialArea(registerParam.getSpecialArea()); // 系统类型 registerParam.setSystemType(SecurityUtils.getSystemType()); @@ -683,6 +765,16 @@ public class ApiRetailOrderController { .build()); } registerParam.setOrderItemsParams(orderItemsParams); +// if (ESpecialArea.RETAIL_REPURCHASE.getValue() == registerParam.getSpecialArea()) { +// CuMember buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); +// if(ObjectUtil.isEmpty(buyMember)){ +// buyMember = new CuMember(); +// buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); +// buyMember.setPkSettleCountry(1); +// buyMember.setPkAwards(1); +// } +// iRetailOrderService.createSaOrderItems(registerParam, null, buyMember, null, null); +// } CuMemberShare memberShare = memberTokenService.getLoginMember().getCuMemberShare(); registerParam.setCuMemberShare(memberShare); // registerParam.setPkCreator(memberShare.getPkParent()); @@ -690,7 +782,7 @@ public class ApiRetailOrderController { String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); // redis 拿金额 SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); - return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount()); + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount().add(saOrder.getPostage())); } /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index febd7feb..6776a5ad 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -109,6 +109,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { CuMember newMember = new CuMember(); newMember.setMemberName(registerParam.getMemberName()); newMember.setPhone(registerParam.getPhone()); + newMember.setPkSettleGrade(gradeList.get(0).getPkId()); + newMember.setPkSettleCountry(1); + newMember.setPkAwards(1); // 封装订单信息 SaOrderExt saOrderExt = this.createSaOrder(registerParam, gradeList, newMember); @@ -214,6 +217,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } } } + }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ +// saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); + saOrderExt.setPostage(orderParam.getPostage()); } return saOrderExt; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java index f8e29233..473f366a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.param; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.Data; @@ -66,4 +67,10 @@ public class RetailOrderPostageParam implements Serializable { */ private Integer tranType = ETransportType.LAND.getValue(); + + /** + * 商品列表 + */ + private List waresList; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index 51f64430..5e14ce30 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -94,7 +94,7 @@ public class ApiBdWaresController extends BaseController { */ @GetMapping("/list-wares-share") public AjaxResult listWaresShare(WaresShareParam param) { - param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); param.setIsMakerGift(EWaresType.ORDINARY.getValue()); param.setPkCountry(CountryConstants.CHINA_COUNTRY); diff --git a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java index 6af4c408..62a6ecbc 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java +++ b/bd-third/src/main/java/com/hzs/third/pay/controller/api/PayController.java @@ -106,7 +106,9 @@ public class PayController { if (EPayStatus.PAID.getValue() == onlinePayment.getPayStatus()) { return AjaxResult.error("该订单已支付"); } - + if(ObjectUtil.isEmpty(onlinePayment.getPayMoney())){ + return AjaxResult.error("当前订单已经发起过支付,如需再次购买,请重新下单!"); + } // 同一业务订单多次使用不同支付数据,以最新一次为准 onlinePayment.setPayChannel(payChannel.getValue()); onlinePayment.setPayType(payType.getValue()); diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java index 58c1bf2d..79badb8c 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/PayServiceImpl.java @@ -70,8 +70,11 @@ public class PayServiceImpl implements IPayService { log.error("支付信息不存在或已支付"); return false; } - + String redisKey = CacheConstants.ONLINE_PAY_KEY + businessCode; try { + if(!redisService.lockKeyOnce(redisKey, 10)){ + return false; + } if (!PayUtil.checkAmount(onlinePayment.getBusinessMoney(), payMoney)) { // 业务金额 大于 实际支付金额 log.error("业务金额大于实际支付金额,支付编号:{}, 支付金额:{}", onlinePayment.getPaymentCode(), payMoney); @@ -106,6 +109,8 @@ public class PayServiceImpl implements IPayService { .set(TOnlinePayment::getCallbackStatus, ECallbackStatus.FAIL.getValue()) .set(TOnlinePayment::getCallbackInfo, e.getMessage()) ); + } finally { + redisService.unlock(redisKey); } return false; } From d4e4a42bd1b352a768cd7503935f05bd2efea7d5 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 11:30:32 +0800 Subject: [PATCH 174/362] =?UTF-8?q?##=20Opt=20-=20=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E5=A5=96=E8=A1=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 6776a5ad..37ebf6eb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -205,17 +205,18 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 会员信息 if (null != cuMember) { cuMember.setPkSettleGrade(newGrade.getPkId()); - if (null == cuMember.getPkAwards()) { - // 新会员没有奖衔,则进行赋值 - cuMember.setPkAwards(newGrade.getPkAwards()); - } else { - // 老会员奖衔如果为无,也进行赋值 - BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() - && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { - cuMember.setPkAwards(newGrade.getPkAwards()); - } - } + cuMember.setPkAwards(newGrade.getPkAwards()); +// if (null == cuMember.getPkAwards()) { +// // 新会员没有奖衔,则进行赋值 +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } else { +// // 老会员奖衔如果为无,也进行赋值 +// BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); +// if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() +// && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } +// } } }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ // saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); From 3bf75a5fb64cde198f2b9bfe291fb6a1c8d47791 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 11:30:32 +0800 Subject: [PATCH 175/362] =?UTF-8?q?##=20Opt=20-=20=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E5=A5=96=E8=A1=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RetailOrderServiceImpl.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 6776a5ad..37ebf6eb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -205,17 +205,18 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 会员信息 if (null != cuMember) { cuMember.setPkSettleGrade(newGrade.getPkId()); - if (null == cuMember.getPkAwards()) { - // 新会员没有奖衔,则进行赋值 - cuMember.setPkAwards(newGrade.getPkAwards()); - } else { - // 老会员奖衔如果为无,也进行赋值 - BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() - && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { - cuMember.setPkAwards(newGrade.getPkAwards()); - } - } + cuMember.setPkAwards(newGrade.getPkAwards()); +// if (null == cuMember.getPkAwards()) { +// // 新会员没有奖衔,则进行赋值 +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } else { +// // 老会员奖衔如果为无,也进行赋值 +// BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); +// if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() +// && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } +// } } }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ // saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); From 900129db57c4efba8f774dfd10ac3f34efe77da4 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 18 Sep 2025 14:18:20 +0800 Subject: [PATCH 176/362] =?UTF-8?q?##=20=E7=B2=BE=E5=93=81=E4=B8=93?= =?UTF-8?q?=E5=8C=BA=E7=9B=B4=E6=8E=A8=E6=94=B6=E7=9B=8A=EF=BC=9B=E5=95=86?= =?UTF-8?q?=E5=9F=8E=E4=B8=93=E5=8C=BA=E8=A7=81=E7=82=B9=E6=94=B6=E7=9B=8A?= =?UTF-8?q?=EF=BC=9B=E5=95=86=E5=93=81=E5=9F=BA=E7=A1=80=E8=A7=84=E6=A0=BC?= =?UTF-8?q?=E7=AD=89=E9=85=8D=E7=BD=AE=E5=8E=BB=E6=8E=89=E7=BC=93=E5=AD=98?= =?UTF-8?q?=EF=BC=9B=E5=8E=BB=E6=8E=89=E9=83=A8=E5=88=86=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E4=BB=A3=E7=A0=81=E5=92=8C=E6=9E=9A=E4=B8=BE=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/account/IBusinessCommission.java | 6 - .../account/ICuMemberTradeServiceApi.java | 22 +- .../IMemberAccountAuditServiceApi.java | 7 +- .../account/IMemberAccountServiceApi.java | 40 +- .../member/account/IMemberBankServiceApi.java | 8 +- .../account/IMemberTradeServiceApi.java | 26 +- .../account/dto/BusinessCommissionDTO.java | 6 - .../member/account/dto/MemberBalanceDTO.java | 6 - .../account/dto/MemberBusinessBalanceDTO.java | 6 - .../address/ICuMemberGiftServiceApi.java | 24 -- .../base/ICuMemberAchieveLogServiceApi.java | 8 +- .../member/base/IMemberLevelServiceApi.java | 26 -- .../hzs/member/base/IMemberServiceApi.java | 37 -- .../member/base/dto/CuAwardsControlDTO.java | 8 +- .../base/dto/CuMemberAchieveLogDTO.java | 51 +-- .../ICuHandleBusinessServiceApi.java | 5 - .../member/self/dto/SelfModifyAddressDTO.java | 199 --------- .../activity/base/IActivityServiceApi.java | 15 - .../pick/IAcRetailPickLogServiceApi.java | 24 -- .../sale/order/ISaOrderItemsServiceApi.java | 37 +- .../hzs/sale/order/ISaOrderServiceApi.java | 8 - .../hzs/sale/postage/IPostageServiceApi.java | 6 +- .../hzs/sale/product/IProductServiceApi.java | 49 --- .../com/hzs/sale/product/dto/ProductDTO.java | 7 - .../hzs/sale/product/dto/ProductParamDTO.java | 252 ------------ .../hzs/sale/pub/ISaleApprovalServiceApi.java | 11 +- .../hzs/sale/refund/ISaRefundServiceApi.java | 25 -- .../hzs/sale/ticket/ITicketServiceApi.java | 6 +- .../com/hzs/sale/wares/IWaresServiceApi.java | 12 +- .../hzs/system/base/IApprovalPushInfo.java | 9 +- .../hzs/system/base/IBarCodeServiceApi.java | 6 +- .../system/base/INoticeAuditServiceApi.java | 7 +- .../hzs/system/base/dto/TransactionDTO.java | 147 ------- .../config/IAreaCurrencyServiceApi.java | 17 +- .../config/IAreaFreePostageServiceApi.java | 6 +- .../system/config/IBdBarCodeServiceApi.java | 29 -- .../hzs/system/config/ILabelServiceApi.java | 17 +- .../hzs/system/config/IRangeServiceApi.java | 25 +- .../system/config/IRetailRangeServiceApi.java | 12 - .../hzs/system/config/IShareServiceApi.java | 26 -- .../hzs/system/config/IShopServiceApi.java | 27 -- .../system/config/ITradeConfigServiceApi.java | 8 - .../system/config/ITransferServiceApi.java | 16 +- .../hzs/system/config/IVertexServiceApi.java | 7 - .../config/IWithdrawalProcessServiceApi.java | 14 +- .../config/IWithdrawalSpecialServiceApi.java | 34 -- .../config/IWithdrawalTaxServiceApi.java | 22 +- .../com/hzs/system/sys/IBusinessLogApi.java | 6 +- .../java/com/hzs/system/sys/ICubasdocApi.java | 8 +- .../hzs/system/sys/IMenuColumnServiceApi.java | 6 +- .../system/sys/IOperationLogServiceApi.java | 6 +- .../hzs/system/sys/dto/ThaliConfigDTO.java | 46 --- .../third/delivery/IDeliveryServiceApi.java | 6 +- .../com/hzs/third/pay/IRefundServiceApi.java | 6 +- .../com/hzs/third/share/IShareServiceApi.java | 6 +- .../manage/CuMemberBonusController.java | 1 + .../bonus/mapper/CuMemberBonusPushMapper.java | 7 + .../bonus/service/IBonusSettleService.java | 5 +- .../bonus/service/impl/BonusSettleHandle.java | 27 ++ .../service/impl/BonusSettleRangeHandle.java | 330 +++++++++------ .../service/impl/BonusSettleServiceImpl.java | 18 +- .../impl/CuMemberBonusPushServiceImpl.java | 12 +- .../impl/CuMemberBonusServiceImpl.java | 22 +- .../impl/CuMemberAwardsServiceImpl.java | 7 - .../bonus/order/mapper/BonusOrderMapper.java | 29 +- .../order/service/IBonusOrderService.java | 19 +- .../service/impl/BonusOrderServiceImpl.java | 26 +- .../achieve/CuMemberRetailRangeMapper.xml | 228 ++++++----- .../bonus/bonus/CuMemberBonusPushMapper.xml | 204 ++++++++-- .../bonus/bonus/CuMemberBonusRangeMapper.xml | 10 +- .../mapper/bonus/order/BonusOrderMapper.xml | 252 +----------- .../account/mapper/CuMemberTradeMapper.java | 51 --- .../IBusinessCommissionServiceProvider.java | 17 +- .../ICuHandleBusinessServiceProvider.java | 135 ------- .../ICuMemberTradeServiceProvider.java | 21 +- .../IMemberAccountAuditServiceProvider.java | 47 +-- .../provider/IMemberTradeServiceProvider.java | 51 +-- .../MemberAccountServiceProvider.java | 46 +-- .../provider/MemberBankServiceProvider.java | 10 +- .../service/ICuMemberTradeService.java | 64 +-- .../impl/CuMemberTradeServiceImpl.java | 81 +--- .../member/account/vo/ApprovalDetailVO.java | 7 +- .../hzs/member/account/vo/CuMemberBankVO.java | 1 - .../account/vo/CuMemberTradeDetailVO.java | 5 - .../member/account/vo/CuMemberTradeVO.java | 5 - .../address/mapper/CuMemberGiftMapper.java | 11 +- .../mapper/CuMemberGiftRecordMapper.java | 8 - .../provider/CuMemberGiftServiceProvider.java | 110 ----- .../service/ICuMemberGiftRecordService.java | 6 - .../address/service/ICuMemberGiftService.java | 19 +- .../impl/CuMemberGiftRecordServiceImpl.java | 5 - .../service/impl/CuMemberGiftServiceImpl.java | 53 +-- .../manage/CuMemberTeamController.java | 103 +---- .../base/mapper/CuMemberAgentMapper.java | 5 - .../member/base/mapper/CuMemberMapper.java | 9 - .../base/mapper/CuMemberShareMapper.java | 16 +- .../CuAwardsControlServiceProvider.java | 31 +- .../ICuMemberAchieveLogServiceProvider.java | 57 +-- .../provider/MemberLevelServiceProvider.java | 29 -- .../base/provider/MemberServiceProvider.java | 31 -- .../UpPolicyCurrencyServiceProvider.java | 27 +- .../service/ICuMemberAchieveLogService.java | 84 +--- .../base/service/ICuMemberAgentService.java | 12 - .../service/ICuMemberBusinessService.java | 20 - .../service/ICuMemberRegisterService.java | 7 - .../member/base/service/ICuMemberService.java | 14 - .../base/service/ICuMemberShareService.java | 20 - .../impl/CuMemberAchieveLogServiceImpl.java | 378 ++++-------------- .../impl/CuMemberAgentServiceImpl.java | 33 -- .../impl/CuMemberBusinessServiceImpl.java | 216 +--------- .../impl/CuMemberRegisterServiceImpl.java | 9 - .../service/impl/CuMemberServiceImpl.java | 20 - .../impl/CuMemberShareServiceImpl.java | 25 -- .../mapper/CuMemberBonusPushHisMapper.java | 5 - .../bonus/mapper/CuMemberBonusPushMapper.java | 22 - .../service/ICuMemberBonusPushHisService.java | 14 - .../service/ICuMemberBonusPushService.java | 26 -- .../impl/CuMemberBonusPushHisServiceImpl.java | 17 - .../impl/CuMemberBonusPushServiceImpl.java | 31 -- .../detail/service/ICuMemberLevelService.java | 9 - .../impl/CuMemberLevelServiceImpl.java | 10 - .../controller/api/MarketNewsController.java | 161 +------- .../marketnews/param/MarketNewsParam.java | 7 - .../marketnews/param/SeaFlourParam.java | 67 ---- .../param/TripleCycleListParam.java | 68 ---- .../hzs/member/marketnews/vo/SeaFlourVo.java | 61 --- .../marketnews/vo/UserInvestmentVo.java | 7 - .../swing/param/CuMemberSwingNetParam.java | 7 +- .../member/account/CuMemberTradeMapper.xml | 125 ++---- .../member/address/CuMemberGiftMapper.xml | 30 +- .../address/CuMemberGiftRecordMapper.xml | 14 - .../member/base/CuMemberAgentMapper.xml | 16 - .../mapper/member/base/CuMemberMapper.xml | 9 - .../member/base/CuMemberShareMapper.xml | 33 -- .../bonus/CuMemberBonusPushHisMapper.xml | 14 - .../member/bonus/CuMemberBonusPushMapper.xml | 123 ------ .../base/mapper/AcBaseConfigMapper.java | 24 +- .../provider/ActivityServiceProvider.java | 31 +- .../base/service/IAcBaseConfigService.java | 30 +- .../service/impl/AcBaseConfigServiceImpl.java | 8 - .../pick/mapper/AcRetailPickLogMapper.java | 29 -- .../pick/mapper/AcRetailPickMapper.java | 16 +- .../AcRetailPickProductConfigMapper.java | 5 - .../AcRetailPickLogServiceProvider.java | 44 -- .../pick/service/IAcRetailPickLogService.java | 14 - .../IAcRetailPickProductConfigService.java | 21 +- .../pick/service/IAcRetailPickService.java | 12 - .../impl/AcRetailPickLogServiceImpl.java | 86 ---- .../AcRetailPickProductConfigServiceImpl.java | 63 +-- .../service/impl/AcRetailPickServiceImpl.java | 9 - .../AcRepurCouponsRuleConfigMapper.java | 16 - .../mapper/AcRepurSharRuleConfigMapper.java | 27 -- .../IAcRepurCouponsRuleConfigService.java | 8 - .../IAcRepurSharRuleConfigService.java | 14 - .../AcRepurCouponsRuleConfigServiceImpl.java | 22 - .../AcRepurSharRuleConfigServiceImpl.java | 9 - .../sale/order/mapper/SaOrderItemsMapper.java | 8 - .../hzs/sale/order/mapper/SaOrderMapper.java | 10 - .../provider/SaOrderItemsServiceProvider.java | 38 +- .../provider/SaOrderServiceProvider.java | 5 - .../order/service/ISaOrderItemsService.java | 18 - .../sale/order/service/ISaOrderService.java | 8 - .../service/impl/SaOrderItemsServiceImpl.java | 34 -- .../service/impl/SaOrderServiceImpl.java | 5 - .../provider/IPostageServiceProvider.java | 6 +- .../manage/BdClassifyController.java | 102 ++--- .../controller/manage/BdSpecsController.java | 109 ++--- .../product/mapper/BdAreaClassifyMapper.java | 9 +- .../sale/product/mapper/BdClassifyMapper.java | 5 - .../sale/product/mapper/BdProductMapper.java | 5 - .../sale/product/mapper/BdSpecsMapper.java | 6 - .../product/mapper/BdSpecsTypeMapper.java | 9 +- .../provider/IProductServiceProvider.java | 75 +--- .../service/IBdAreaClassifyService.java | 11 +- .../product/service/IBdClassifyService.java | 9 +- .../product/service/IBdProductService.java | 14 - .../sale/product/service/IBdSpecsService.java | 13 +- .../product/service/IBdSpecsTypeService.java | 13 +- .../impl/BdAreaClassifyServiceImpl.java | 125 ++---- .../service/impl/BdClassifyServiceImpl.java | 27 +- .../service/impl/BdProductServiceImpl.java | 120 ++---- .../service/impl/BdSpecsServiceImpl.java | 34 +- .../service/impl/BdSpecsTypeServiceImpl.java | 134 ++----- .../hzs/sale/product/vo/WaresDetailVo.java | 31 -- .../SaleApprovalBusinessProvider.java | 13 +- .../sale/refund/mapper/SaRefundMapper.java | 17 - .../sale/refund/param/RefundQueryParam.java | 62 --- .../provider/SaRefundServiceProvider.java | 38 -- .../service/IRefundBusinessService.java | 23 -- .../sale/refund/service/ISaRefundService.java | 16 - .../impl/RefundBusinessServiceImpl.java | 59 --- .../service/impl/SaRefundServiceImpl.java | 12 - .../com/hzs/sale/refund/vo/RefundQueryVO.java | 129 ------ .../provider/TicketServiceProvider.java | 6 +- .../wares/mapper/BdWaresDetailMapper.java | 9 - .../hzs/sale/wares/param/CuWaresParams.java | 6 - .../wares/provider/WaresServiceProvider.java | 44 +- .../wares/service/IBdWaresDetailService.java | 9 - .../impl/BdWaresDetailServiceImpl.java | 6 - .../hzs/sale/wares/vo/SaTWaresQueryVO.java | 196 --------- .../com/hzs/sale/wares/vo/SaTWaresSkuVo.java | 99 ----- .../com/hzs/sale/wares/vo/TWaresQueryVO.java | 136 ------- .../activity/base/AcBaseConfigMapper.xml | 28 -- .../activity/pick/AcRetailPickLogMapper.xml | 41 -- .../activity/pick/AcRetailPickMapper.xml | 21 - .../AcRepurCouponsRuleConfigMapper.xml | 27 -- .../recommend/AcRepurSharRuleConfigMapper.xml | 44 -- .../mapper/sale/order/SaOrderItemsMapper.xml | 16 - .../mapper/sale/order/SaOrderMapper.xml | 82 +--- .../sale/product/BdAreaClassifyMapper.xml | 66 ++- .../mapper/sale/product/BdClassifyMapper.xml | 15 - .../mapper/sale/product/BdProductMapper.xml | 16 - .../mapper/sale/product/BdSpecsTypeMapper.xml | 43 +- .../mapper/sale/refund/SaRefundMapper.xml | 83 ---- .../mapper/sale/wares/BdWaresDetailMapper.xml | 13 - .../system/base/mapper/BdNoticeMapper.java | 5 - .../base/provider/NoticeServiceProvider.java | 13 +- .../PlatformMessageServiceProvider.java | 10 +- .../system/base/service/IBdNoticeService.java | 17 +- .../service/impl/BdNoticeServiceImpl.java | 3 - .../controller/manage/BdBankController.java | 90 ++--- .../controller/manage/BdLabelController.java | 76 +--- .../controller/manage/BdRangeController.java | 105 ++--- .../manage/BdRetailRangeController.java | 101 ++--- .../controller/manage/BdShareController.java | 141 +++---- .../controller/manage/BdShopController.java | 7 - .../system/config/mapper/BdBarCodeMapper.java | 12 - .../system/config/mapper/BdLabelMapper.java | 17 +- .../config/mapper/BdRangeDetailsMapper.java | 13 +- .../system/config/mapper/BdShareMapper.java | 6 - .../system/config/mapper/BdShopMapper.java | 8 +- .../mapper/BdTradeWhiteConfigMapper.java | 8 - .../config/mapper/BdTransferMapper.java | 12 +- .../mapper/BdWithdrawalProcessMapper.java | 6 - .../mapper/BdWithdrawalSpecialMapper.java | 6 - .../config/mapper/BdWithdrawalTaxMapper.java | 6 - .../param/BdAreaCurrencyDetailParam.java | 113 ------ .../config/param/BdAreaCurrencyParam.java | 96 ----- .../system/config/param/BdBarCodeParam.java | 86 ---- .../config/param/BdWithdrawalParam.java | 137 ------- .../provider/AreaCurrencyServiceProvider.java | 22 +- .../provider/AreaFreePostageProvider.java | 19 +- .../provider/BdBarCodeServiceProvider.java | 39 -- .../provider/ITradeConfigServiceProvider.java | 5 - .../provider/IVertexServiceProvider.java | 22 +- .../config/provider/LabelServiceProvider.java | 19 +- .../config/provider/RangeServiceProvider.java | 5 - .../provider/RetailRangeServiceProvider.java | 15 - .../config/provider/ShareServiceProvider.java | 39 -- .../config/provider/ShopServiceProvider.java | 40 -- .../provider/TransferServiceProvider.java | 17 +- .../WithdrawalProcessServiceProvider.java | 19 +- .../WithdrawalSpecialServiceProvider.java | 44 -- .../WithdrawalTaxServiceProvider.java | 21 +- .../system/config/service/IBdBankService.java | 3 - .../config/service/IBdBarCodeService.java | 34 +- .../config/service/IBdLabelService.java | 14 - .../service/IBdRangeDetailsService.java | 14 +- .../config/service/IBdShareService.java | 14 - .../system/config/service/IBdShopService.java | 28 -- .../service/IBdTradeWhiteConfigService.java | 10 - .../config/service/IBdTransferService.java | 25 +- .../service/IBdWithdrawalProcessService.java | 14 +- .../service/IBdWithdrawalSpecialService.java | 24 -- .../service/IBdWithdrawalTaxService.java | 14 +- .../service/impl/BdBankServiceImpl.java | 3 - .../service/impl/BdBarCodeServiceImpl.java | 57 +-- .../service/impl/BdLabelServiceImpl.java | 67 +--- .../impl/BdRangeDetailsServiceImpl.java | 13 +- .../service/impl/BdShareServiceImpl.java | 39 -- .../service/impl/BdShopServiceImpl.java | 91 +---- .../impl/BdTradeWhiteConfigServiceImpl.java | 5 - .../service/impl/BdTransferServiceImpl.java | 46 +-- .../impl/BdWithdrawalProcessServiceImpl.java | 22 +- .../impl/BdWithdrawalSpecialServiceImpl.java | 62 --- .../impl/BdWithdrawalTaxServiceImpl.java | 150 +++---- .../config/vo/BdAgreementRenewalWhiteVO.java | 102 ----- .../com/hzs/system/config/vo/BdLabelVO.java | 12 +- .../system/config/vo/TemplateAgreementVO.java | 31 -- .../enums/controller/EnumsController.java | 46 +-- .../enums/controller/EnumsInitController.java | 16 - .../mapper/system/config/BdBarCodeMapper.xml | 16 - .../mapper/system/config/BdLabelMapper.xml | 22 +- .../system/config/BdRangeDetailsMapper.xml | 32 +- .../mapper/system/config/BdShareMapper.xml | 29 -- .../mapper/system/config/BdShopMapper.xml | 29 -- .../config/BdTradeWhiteConfigMapper.xml | 15 - .../mapper/system/config/BdTransferMapper.xml | 38 +- .../config/BdWithdrawalProcessMapper.xml | 25 -- .../config/BdWithdrawalSpecialMapper.xml | 24 -- .../system/config/BdWithdrawalTaxMapper.xml | 26 -- .../common/core/constant/CacheConstants.java | 47 --- .../core/constant/EnumsPrefixConstants.java | 42 -- .../core/constant/MemberFieldConstants.java | 26 -- .../common/core/constant/RetailConstants.java | 8 +- .../core/constant/msg/BonusMsgConstants.java | 9 +- .../com/hzs/common/core/enums/EAreaType.java | 18 +- .../hzs/common/core/enums/EBonusItems.java | 21 +- .../com/hzs/common/core/enums/ECalType.java | 1 + .../hzs/common/core/enums/ECurrencyType.java | 10 +- .../hzs/common/core/enums/EExpireStatus.java | 58 --- .../com/hzs/common/core/enums/ELabelType.java | 30 +- .../com/hzs/common/core/enums/EOrderType.java | 4 +- .../hzs/common/core/enums/ERegionType.java | 22 +- .../common/core/enums/ETransactionKey.java | 24 -- .../domain/activity/base/AcBaseConfig.java | 3 - .../domain/activity/pick/AcRetailPick.java | 3 - .../domain/activity/pick/AcRetailPickLog.java | 5 - .../pick/AcRetailPickProductConfig.java | 5 - .../recommend/AcRepurCouponsRuleConfig.java | 5 - .../recommend/AcRepurSharRuleConfig.java | 5 - .../ext/AcRepurSharRuleConfigExt.java | 9 +- .../member/account/CuMemberTradeExt.java | 3 - .../member/achieve/CuMemberRetailRange.java | 22 +- .../achieve/ext/CuMemberRetailRangeExt.java | 14 +- .../domain/member/address/CuMemberGift.java | 5 - .../member/address/CuMemberGiftRecord.java | 6 - .../domain/member/base/CuMemberShare.java | 5 - .../domain/member/bonus/CuMemberBonus.java | 4 +- .../member/bonus/CuMemberBonusRange.java | 2 +- .../member/business/SignOnlineInfoVo.java | 6 +- .../member/ext/CuMemberBonusPushExt.java | 7 - .../domain/sale/classify/BdClassify.java | 10 - .../common/domain/sale/classify/BdSpecs.java | 6 +- .../domain/sale/classify/BdSpecsType.java | 8 - .../common/domain/sale/ext/BdProductExt.java | 9 +- .../common/domain/sale/ext/SaOrderExt.java | 15 - .../domain/sale/ext/SaOrderItemsExt.java | 19 +- .../domain/sale/ext/SaOrderWaresExt.java | 14 - .../common/domain/sale/order/SaRefund.java | 3 - .../common/domain/sale/postage/BdPostage.java | 3 - .../domain/sale/product/BdAreaClassify.java | 8 +- .../domain/sale/product/BdProductSpecs.java | 5 - .../common/domain/system/base/BdNotice.java | 3 - .../common/domain/system/config/BdBank.java | 7 - .../domain/system/config/BdBarCode.java | 8 - .../common/domain/system/config/BdLabel.java | 5 - .../domain/system/config/BdTransfer.java | 24 +- .../system/config/BdWithdrawalProcess.java | 9 +- .../system/config/BdWithdrawalSpecial.java | 5 - .../domain/system/config/BdWithdrawalTax.java | 11 - .../domain/system/config/ext/BdShopExt.java | 10 +- .../system/config/ext/BdWithdrawalTaxExt.java | 22 +- .../common/domain/vertex/ext/BdVertexExt.java | 6 +- .../provider/DeliveryServiceProvider.java | 6 +- .../java/com/hzs/third/job/MemberJob.java | 11 - .../pay/provider/RefundServiceProvider.java | 9 +- .../pay/service/impl/RefundServiceImpl.java | 20 - .../share/provider/ShareServiceProvider.java | 6 +- 349 files changed, 1622 insertions(+), 9975 deletions(-) delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java delete mode 100644 bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java delete mode 100644 bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java delete mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyDetailParam.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyParam.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdBarCodeParam.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdWithdrawalParam.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BdBarCodeServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RetailRangeServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShareServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShopServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalSpecialServiceProvider.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdAgreementRenewalWhiteVO.java delete mode 100644 bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/TemplateAgreementVO.java delete mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EExpireStatus.java diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java index b99fc79f..aabe76bd 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java @@ -6,14 +6,8 @@ import com.hzs.member.account.dto.MemberBalanceDTO; import java.util.List; - /** * 业务办理扣费 - * @Description: - * @Author: ljc - * @Time: 2023/1/7 15:38 - * @Classname: IBusinessCommission - * @Package_name: com.hzs.member.account */ public interface IBusinessCommission { diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java index 6280bf34..60f0a83c 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java @@ -1,31 +1,21 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.member.account.dto.BusinessCommissionDTO; /** - * @description: 会员交易明细API - * @author: zhang jing - * @date: 2023/7/28 14:37 - * @param: - * @return: + * 会员交易明细API **/ public interface ICuMemberTradeServiceApi { + /** - * @description: 业务办理扣费提交 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R + * 业务办理扣费提交 **/ R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO); + /** - * @description: 业务办理扣费驳回 - * @author: zhang jing - * @date: 2023/7/29 11:55 - * @param: [businessCommissionDTO] - * @return: com.hzs.common.core.domain.R + * 业务办理扣费驳回 **/ R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java index fc0dc4d3..a5014e9a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java @@ -3,13 +3,8 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - /** - * @Description: 会员钱包审核接口 - * @Author: ljc - * @Time: 2022/9/24 13:48 - * @Classname: IMemberAccountAuditServiceApi - * @Package_name: com.hzs.member.account + * 会员钱包审核接口 */ public interface IMemberAccountAuditServiceApi { diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java index 37bf5c98..c939b485 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java @@ -9,11 +9,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 会员账户提供api操作实体 - * @Author: sui q - * @Time: 2022/9/5 14:27 - * @Classname: IMemberAccountServiceApi - * @PackageName: com.hzs.member.account + * 会员账户提供api操作实体 */ public interface IMemberAccountServiceApi { @@ -21,9 +17,6 @@ public interface IMemberAccountServiceApi { * 查询会员账户状态,账户信息 * * @param cuMemberAccount 会员账户条件信息 - * @return: List - * @Author: sui q - * @Date: 2022/9/5 11:57 */ R> queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); @@ -31,21 +24,9 @@ public interface IMemberAccountServiceApi { * 根据会员id 列表查询账户信息 * * @param pkMemberList 列表 - * @return: List - * @Author: sui q - * @Date: 2023/3/25 16:28 */ R> queryCuMemberAccountByPkMembers(List pkMemberList); - /** - * 校验订单调换货物余额是否足够 - * - * @param saOrder 订单 - * @param updateOrder 新订单 - * @return - */ - R orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder); - /** * 订单调换货物扣费处理 * @@ -57,17 +38,6 @@ public interface IMemberAccountServiceApi { */ R orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj); - /** - * 订单退单 - * - * @param saOrder 退单订单 - * @param userId 操作用户ID - * @param changeAmount 变动金额(除订单退回外,又追加的补偿或者扣款) -- 非必传 - * @param changeRemark 变动备注 -- 非必传 - * @return - */ - R orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark); - /** * 订单退单注册会员 * @@ -88,12 +58,4 @@ public interface IMemberAccountServiceApi { */ R orderSelfDeliver(Long pkMember, Integer pkRate, Integer pkCountry, BigDecimal postage, Long userId); - /** - * 扣款并插入明细 - * - * @param saOrder 订单 - * @param cuMemberAccount 会员账户 - */ - R insertMemberTrade(SaOrder saOrder, CuMemberAccountExt cuMemberAccount); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java index 8490773a..69a3e06a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java @@ -4,13 +4,10 @@ import com.hzs.common.core.domain.R; import com.hzs.member.account.dto.CuMemberBankParam; /** - * @Description: 银行卡操作API - * @Author: ljc - * @Time: 2022/11/11 17:07 - * @Classname: IMemberBankServiceApi - * @Package_name: com.hzs.member.account + * 银行卡操作API */ public interface IMemberBankServiceApi { + /** * 添加银行卡信息 * @@ -18,4 +15,5 @@ public interface IMemberBankServiceApi { * @return R */ R addBankInfo(CuMemberBankParam cuMemberBankParam); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java index 2868b6d7..93d25b98 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java @@ -4,7 +4,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.domain.member.account.CuMemberRecharge; import com.hzs.common.domain.member.account.CuMemberTrade; -import com.hzs.common.domain.member.account.CuMemberTradeExt; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.MemberBalanceDTO; @@ -12,22 +11,8 @@ import java.util.List; /** * 会员端在线支付 回调插入交易流水、更新余额 - * - * @Description: - * @Author: ljc - * @Time: 2023/3/8 18:23 - * @Classname: IMemberTradeServiceApi - * @Package_name: com.hzs.member.account */ public interface IMemberTradeServiceApi { - /** - * 会员端在线支付 回调插入交易流水、更新余额 - * - * @param rechargeCode 充值单号 - * @return R - */ - R saveMemberOnlineTradeAndAccount(String rechargeCode); - /** * 会员端在线支付更新审批状态 @@ -47,6 +32,7 @@ public interface IMemberTradeServiceApi { * @return R */ R selectMemberRechargeByCodeAndPkMember(String rechargeCode, Long pkMember); + /** * 查询余额不足的用户信息 * @@ -63,14 +49,4 @@ public interface IMemberTradeServiceApi { */ R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 - * @return - */ - R> querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java index 0b80d858..4e92b831 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java @@ -10,12 +10,6 @@ import java.util.List; /** * 业务手续费扣款 - * - * @Description: - * @Author: ljc - * @Time: 2023/1/6 15:15 - * @Classname: BusinessCommissionDTO - * @Package_name: com.hzs.member.account.dto */ @Data @Builder diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java index c7561ba0..afb45a9a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java @@ -9,12 +9,6 @@ import java.math.BigDecimal; /** * 用户余额 - * - * @Description: - * @Author: ljc - * @Time: 2023/1/7 15:12 - * @Classname: MemberBalanceDTO - * @Package_name: com.hzs.member.account.dto */ @Data @AllArgsConstructor diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java index 7f4e33a0..bea93ae5 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java @@ -10,12 +10,6 @@ import java.util.List; /** * 办理业务专用会员余额 - * - * @Description: - * @Author: zhangjing - * @Time: 2023/1/7 15:12 - * @Classname: MemberBalanceDTO - * @Package_name: com.hzs.member.account.dto */ @Data @AllArgsConstructor diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java deleted file mode 100644 index c3cbe3dd..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.member.address; - -import com.hzs.common.core.domain.R; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - - -/** - * @description: 会员礼包收货地址修改回调接口 - * @author: zhang jing - * @date: 2022/10/22 15:04 - * @param: - * @return: - **/ -public interface ICuMemberGiftServiceApi { - - /** - * 审核流程(审批流调用业务模块) - * - * @param approvalBusinessResultDTO 业务审批操作DTO - * @return Integer - */ - R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java index 12adf52a..74a97971 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java @@ -1,22 +1,16 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.business.SignOnlineInfoVo; import com.hzs.member.base.dto.CuMemberAchieveLogDTO; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import java.util.List; /** - * @description: 特殊业务-注水业绩 - * @author: zhang jing - * @date: 2023/3/28 16:41 - * @param: - * @return: + * 特殊业务-注水业绩 **/ public interface ICuMemberAchieveLogServiceApi { - /** * 解析注水业绩诉求信息 * diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java deleted file mode 100644 index 4b066ccd..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.member.base; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberLevel; - -import java.util.List; - -/** - * @Description: 会员等级相关dubbo服务 - * @Author: jiang chao - * @Time: 2025/2/27 9:25 - * @Classname: IMemberLevelServiceApi - * @PackageName: com.hzs.member.base - */ -public interface IMemberLevelServiceApi { - - /** - * 获取会员升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID -- 可为空 - * @return - */ - R> listMemberLevel(Long pkMember, Long pkOrder); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index f7e3544f..f216f4f4 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -2,8 +2,6 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; -import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -140,11 +138,6 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember); - /* - * 查询网体是否存在推荐人 - **/ - R queryCuMemberByPkMember(Long pkReference); - /** * 修改会员信息,确认订单信息,流水(升级订单、复购订单) * @@ -172,13 +165,6 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember, SaOrderExt saOrder, Boolean isPay, CuMemberAccountExt cuMemberAccountExt); - /** - * 处理新会员,生成主键,跟会员编号 - * - * @param cuMember 会员 - */ - R createMemberIdAndCode(CuMember cuMember); - /** * 创建注册会员编号(放入会员编号批次占用) * @@ -220,13 +206,6 @@ public interface IMemberServiceApi { */ R> findMemberByMemberId(List pkMemberList, Integer pkCountry); - /** - * 根据会员主键查询会员注册信息 - * - * @param pkMember 会员主键 - */ - R queryCuMemberRegister(Long pkMember); - /* * 会员编号,账户类型,抽奖金额 **/ @@ -247,15 +226,6 @@ public interface IMemberServiceApi { */ R updateMemberLevel(CuMember cuMember, SaOrder saOrder, Integer pkOldLevel); - /** - * 校验是否血缘关系(返回true则有血缘关系) - * - * @param topCode 顶点编号 - * @param userId 当前会员 - * @return - */ - R checkParent(String topCode, Long userId); - /** * 获取奖衔的翻译KEY值 **/ @@ -386,11 +356,4 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); - - /** - * 查询分享会员 - * - * @param pkMember 主键 - */ - R queryCuMemberShare(Long pkMember); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java index 02f136d3..3d901856 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java @@ -13,12 +13,7 @@ import java.math.BigDecimal; import java.util.Date; /** - *

* 真实奖衔控制表DTO - *

- * - * @author hzs - * @since 2022-08-22 */ @Data public class CuAwardsControlDTO implements Serializable { @@ -130,7 +125,7 @@ public class CuAwardsControlDTO implements Serializable { /** * 创建时间 */ - @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; @@ -190,5 +185,4 @@ public class CuAwardsControlDTO implements Serializable { private String pkAccountKeyVal; - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java index 180173c1..68fcbe8e 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java @@ -10,12 +10,7 @@ import java.math.BigDecimal; import java.util.Date; /** - *

* 注水业绩记录表DTO - *

- * - * @author hzs - * @since 2022-08-22 */ @Data public class CuMemberAchieveLogDTO implements Serializable { @@ -31,130 +26,130 @@ public class CuMemberAchieveLogDTO implements Serializable { /** * 会员编号 */ - @Excel(name = "会员编号",sort = 1) + @Excel(name = "会员编号", sort = 1) private String memberCode; /** * 会员姓名 */ - @Excel(name = "会员姓名",sort = 2) + @Excel(name = "会员姓名", sort = 2) private String memberName; /** * A左区结余 左区首购结余 */ - @Excel(name = "变更前左区首购结余",sort = 17) + @Excel(name = "变更前左区首购结余", sort = 17) private BigDecimal abalance; /** * B右区结余 右区首购结余 */ - @Excel(name = "变更前右区首购结余",sort = 18) + @Excel(name = "变更前右区首购结余", sort = 18) private BigDecimal bbalance; /** * A左区累计 左区真实业绩 */ - @Excel(name = "变更前左区真实业绩(PV)",sort = 13) + @Excel(name = "变更前左区真实业绩(PV)", sort = 13) private BigDecimal asumRealPv; /** * 变更后A左区累计 变更后左区真实业绩 */ - @Excel(name = "变更后左区真实业绩(PV)",sort = 3) + @Excel(name = "变更后左区真实业绩(PV)", sort = 3) private BigDecimal asumRealModifyPv; /** * B右区累计 右区真实业绩 */ - @Excel(name = "变更前右区真实业绩(PV)",sort = 14) + @Excel(name = "变更前右区真实业绩(PV)", sort = 14) private BigDecimal bsumRealPv; /** * 变更后B右区累计 更后右区真实业绩 */ - @Excel(name = "变更后右区真实业绩(PV)",sort = 4) + @Excel(name = "变更后右区真实业绩(PV)", sort = 4) private BigDecimal bsumRealModifyPv; /** * A左区首购业绩 */ - @Excel(name = "变更前左区首购业绩(PV)",sort = 15) + @Excel(name = "变更前左区首购业绩(PV)", sort = 15) private BigDecimal afirstPv; /** * 变更后A左区 变更后左区首购业绩 */ - @Excel(name = "变更后左区首购业绩(PV)",sort = 5) + @Excel(name = "变更后左区首购业绩(PV)", sort = 5) private BigDecimal afirstModifyPv; /** * B右区首购业绩 */ - @Excel(name = "变更前右区首购业绩(PV)",sort = 16) + @Excel(name = "变更前右区首购业绩(PV)", sort = 16) private BigDecimal bfirstPv; /** * 变更后B右区 变更后右区首购业绩 */ - @Excel(name = "变更后右区首购业绩(PV)",sort = 6) + @Excel(name = "变更后右区首购业绩(PV)", sort = 6) private BigDecimal bfirstModifyPv; /** * 变更后A左区首购结余 */ - @Excel(name = "变更后左区首购结余",sort = 7) + @Excel(name = "变更后左区首购结余", sort = 7) private BigDecimal repAFirstModifyBalance; /** * 变更后B右区首购结余 */ - @Excel(name = "变更后右区首购结余",sort = 8) + @Excel(name = "变更后右区首购结余", sort = 8) private BigDecimal repBFirstModifyBalance; /** * A左区复购结余 左区复购结余 */ - @Excel(name = "变更前左区复购结余",sort = 21) + @Excel(name = "变更前左区复购结余", sort = 21) private BigDecimal repABalance; /** * 变更后A左区复购结余 */ - @Excel(name = "变更后左区复购结余",sort = 11) + @Excel(name = "变更后左区复购结余", sort = 11) private BigDecimal repAModifyBalance; /** * B右区复购结余 右区复购结余 */ - @Excel(name = "变更前右区复购结余",sort = 22) + @Excel(name = "变更前右区复购结余", sort = 22) private BigDecimal repBBalance; /** * 变更后B右区复购结余 */ - @Excel(name = "变更后右区复购结余",sort = 12) + @Excel(name = "变更后右区复购结余", sort = 12) private BigDecimal repBModifyBalance; /** * A左区复购业绩累计业绩 左区复购业绩 */ - @Excel(name = "变更前左区复购业绩(PV)",sort = 19) + @Excel(name = "变更前左区复购业绩(PV)", sort = 19) private BigDecimal repASumPv; /** * 变更后A左区复购业绩累计业绩 */ - @Excel(name = "变更后左区复购业绩(PV)",sort = 9) + @Excel(name = "变更后左区复购业绩(PV)", sort = 9) private BigDecimal repAModifySumPv; /** * B右区复购业绩累计业绩 右区复购业绩 */ - @Excel(name = "变更前右区复购业绩(PV)",sort = 20) + @Excel(name = "变更前右区复购业绩(PV)", sort = 20) private BigDecimal repBSumPv; /** * 变更后B右区复购业绩累计业绩 */ - @Excel(name = "变更后右区复购业绩(PV)",sort = 10) + @Excel(name = "变更后右区复购业绩(PV)", sort = 10) private BigDecimal repBModifySumPv; /** @@ -197,6 +192,4 @@ public class CuMemberAchieveLogDTO implements Serializable { private String dueDateStr; - - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java index 1785e86b..0def3529 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java @@ -22,9 +22,4 @@ public interface ICuHandleBusinessServiceApi { */ R signForApproval(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /** - * 特殊业务审批处理 - **/ - String auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java deleted file mode 100644 index 4c46d423..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.hzs.member.self.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.web.domain.BaseApprovalEntity; -import com.hzs.member.account.dto.MemberAmountDTO; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import java.util.Set; - -/** - *

- * 自助服务日志表VO - *

- * - * @author hzs - * @since 2023-04-17 - */ -@Data -public class SelfModifyAddressDTO extends BaseApprovalEntity { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - private Long pkId; - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 审批业务类型来源于 枚举: EApprovalBusiness - */ - private Integer editType; - - /** - * 原值 - */ - private String oldValue; - - /** - * 新值 - */ - private String newValue; - - /** - * 业务单号 - */ - private String businessNo; - - /** - * 审核状态 0 待审核 1 审核通过 2 审核驳回 枚举 : EModifyRecordStatus - */ - private Integer approveStatus; - - /** - * 审核次数 - */ - private Integer approveNumber; - - /** - * 支付业务类型来源于枚举 - */ - private Integer editTypePay; - - /** - * 扣费金额 - */ - private BigDecimal singleAmount; - - - /** - * 订单编号 - */ - private String orderCode; - /** - * 订单id - */ - private Long pkOrder; - - /** - * 创建人ID - */ - private Long pkCreator; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 修改人ID - */ - private Long pkModified; - - /** - * 修改时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date modifiedTime; - - /** - * 逻辑删除 (0=未删除,1已删除) - */ - private Integer delFlag; - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 支付时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date payTime; - /** - * 收货地址ID - */ - private Long pkReceiving; - /** - * 收货人 - */ - private String recName; - /** - * 手机 - */ - private String recPhone; - - /** - * 收货省 - */ - private Integer recProvince; - /** - * 收货市 - */ - private Integer recCity; - /** - * 收货县 - */ - private Integer recCounty; - /** - * 详细地址 - */ - private String recAddress; - - /** - * 会员手续费 - */ - List memberAmountDTOList; - /** - * 错误信息 - */ - private String errorMsg; - /** - * 业务涉及会员ID列表 -- 提交审核必传 - */ - private Set pkMemberList; - /** - * 旧邮费 - */ - private BigDecimal oldPostage; - /** - * 新邮费 - */ - private BigDecimal newPostage; - /** - * 邮费 - */ - private BigDecimal postage; - /** - * 备注 - */ - private String selfRemark; - /** - * 扣款币种类型 - */ - private Integer pkAccount; - /** - * 扣款币种翻译key - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_ACC) - private Integer pkAccountKey; - /** - * 扣款币种翻译 - */ - private String pkAccountKeyVal; - - - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java index 3f6fe50a..34298ece 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java @@ -2,13 +2,8 @@ package com.hzs.activity.base; import com.hzs.activity.dto.AcRecommendUpgradeDTO; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.Date; -import java.util.List; - /** * 所有活动的生效,获得赠品入口 */ @@ -24,16 +19,6 @@ public interface IActivityServiceApi { **/ R backGiveMemberDrawNum(SaOrderExt saOrderExt); - /* - * 查询目前所有启用的复购券规则 - **/ - R> queryAcRepurchaseCouponsRule(Date settleDate); - - /* - * 查询复购券均分收益 - **/ - R> queryRepurSharRuleConfig(Date startDate, Date endDate); - /** * 调用调用直推升级接口 * diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java deleted file mode 100644 index 2f6ad9e5..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.activity.pick; - -import com.hzs.common.core.domain.R; - -/** - * @description: 会员提货赠送活动日志接口服务 - * @author: zhang jing - * @date: 2025/1/15 16:58 - * @param: - * @return: - **/ -public interface IAcRetailPickLogServiceApi { - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:13 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R deliveryLog(); - - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java index ce3efb60..f5df33a3 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java @@ -7,49 +7,18 @@ import com.hzs.sale.order.dto.WaresOrderDTO; import java.util.List; /** - * @Description: 销售订单-明细表 - * @Author: zhangjing - * @Time: 2023/11/16 20:06 - * @Classname: ISaOrderItemsServiceApi - * @PackageName: com.hzs.sale.order.dto + * 销售订单-明细表 */ public interface ISaOrderItemsServiceApi { - /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/11/16 9:23 - * @param: [orderIdList] - * @return: com.hzs.common.core.domain.R> + * 根据订单id查询订单商品列表 **/ R> waresListByOrderId(List orderIdList); /** - * 根据订单ID查询订单明细商品列表(不添加删除标记) - * - * @param orderId 订单ID - * @return - */ - R> waresListByOrderId(Long orderId); - - /** - * @description: 根据订单ID查询订单明细列表 - * @author: zhang jing - * @date: 2023/11/16 9:33 - * @param: [orderIdList, tOrderIdList] - * @return: com.hzs.common.core.domain.R> + * 根据订单ID查询订单明细列表 **/ R> queryListByOrderId(List orderIdList, List tOrderIdList); - /** - * 订单明细退货 - * - * @param orderItemsIdList 订单明细ID列表 - * @param userId 操作人ID - * @param pkCountry 所属国家(可为空) - * @return - */ - R orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry); - } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index 6994222d..719d2d23 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -17,14 +17,6 @@ import java.util.List; */ public interface ISaOrderServiceApi { - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /** * 空单注册审核通过 * diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java index 77916c01..801a5b94 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java @@ -7,11 +7,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 邮费服务API - * @Author: jiang chao - * @Time: 2023/4/25 14:40 - * @Classname: IPostageServiceApi - * @PackageName: com.hzs.sale.postage + * 邮费服务API */ public interface IPostageServiceApi { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java index d3c45705..a3e99f38 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java @@ -1,26 +1,8 @@ package com.hzs.sale.product; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.ext.BdProductExt; -import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.dto.ProductDTO; -import com.hzs.sale.product.dto.ProductParamDTO; -import com.hzs.system.sys.dto.LoginUser; -import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:52 - * @Classname: IProductServiceApi - * @PackageName: com.hzs.sale.product - */ public interface IProductServiceApi { /** @@ -31,14 +13,6 @@ public interface IProductServiceApi { */ R getProduct(Integer productId); - /* - * @description: 根据规格、主键查询产品 - * @author: sui q - * @date: 2023/11/27 15:52 - * @param: null null - **/ - R> queryProductDtoById(List productSpecsList, Integer pkCountry); - /** * 根据产品编号查询产品 * @@ -46,27 +20,4 @@ public interface IProductServiceApi { * @return */ R getProduct(String productCode); - - /* - * @description: 根据主键List查询规格 - * @author: sui q - * @date: 2023/11/30 15:18 - * @param: null null - **/ - R> queryBdSpecsByIdList(List idList); - - /** - * 产品新增 - * @param productParamDTO - * @return 编号 - */ - R saveProduct(ProductParamDTO productParamDTO, LoginUser loginUser); - - - /** - * 根据产品主键修改所关联商品是下架/预售 - * @param productDTOList - * @return - */ - R updateWaresPreSaleStatus(List productDTOList); } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java index 14f44527..f71c471c 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java @@ -5,13 +5,6 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:53 - * @Classname: ProductDTO - * @PackageName: com.hzs.sale.product.dto - */ @Data public class ProductDTO implements Serializable { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java deleted file mode 100644 index e0953162..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java +++ /dev/null @@ -1,252 +0,0 @@ -package com.hzs.sale.product.dto;/** - * @Description: - * @Author: yuhui - * @Time: 2024/3/23 16:27 - * @Classname: ProductParamDTO - * @PackageName: com.hzs.sale.product.dto - */ - -import com.baomidou.mybatisplus.annotation.TableField; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.product.dto - *@Author: yh - *@CreateTime: 2024-03-23 16:27 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class ProductParamDTO implements Serializable { - - /** - * 商品主键 - */ - private Integer pkId; - /** - * 产品编号 - */ - private String productCode; - - /** - * 产品名称 - */ - private String productName; - - /** - * 翻译key - */ - private Integer transactionKey; - - /** - * 规格分类 - */ - private Integer pkClassify; - - /** - * 单位 来源于枚举:单位 - */ - private Integer unit; - - /** - * 重量 以千克作为单位 - */ - private BigDecimal weight; - - /** - * 长 以厘米作为单位 - */ - private BigDecimal length; - - /** - * 宽 以厘米作为单位 - */ - private BigDecimal width; - - /** - * 高 以厘米作为单位 - */ - private BigDecimal height; - - /** - * 邮费重量 以千克作为单位 - */ - private BigDecimal postageWeight; - - /** - * 建议零售价 - */ - private BigDecimal retailPrice; - - /** - * 启用状态 来源于枚举:是否,默认是 - */ - private Integer enableState; - - /** - * 封面图 - */ - private String cover; - - /** - * 保质期 - */ - private Integer shelfLife; - - /** - * 是否冷链 - */ - private Integer isFresh; - - - /** - * 是否提货 来源于枚举:是否,默认否 - */ - private Integer isPickUp; - - /** - * 是否抽奖奖品 来源于枚举:是否,默认否 - */ - private Integer isPrize; - - /** - * 是否条码管理 来源于枚举:是否,默认否 - */ - private Integer isBarCode; - - /** - * 能否合并发货 来源于枚举:是否,默认是 - */ - private Integer isMerge; - - /** - * 来源于枚举:是否,默认是 - */ - private Integer isGift; - - /** - * 库存预警数量 - */ - // private Long warningQuantity; - - /** - * 是否陆运 - */ - private Integer isLandTrans; - - /** - * 是否空运 - */ - private Integer isAirTrans; - - /** - * 是否海运 - */ - private Integer isOceanTrans; - - /** - * 产品属性 枚举:商品属性,1=实物商品、2=虚拟商品 - */ - private Integer productAttr; - - /** - * 产品规格类型列表 - */ - private List pkSpecsType; - - /** - * 排序值 - */ - - private Integer sort; - - /** - * 发货渠道 1 总仓发货 2 一件代发 - */ - - private Integer shippingChannel; - - - /** - * 产品主键id列表 - */ - List productIds; - - - - /** - * 海陆空运输方式筛选 - */ - private Integer shippingType; - - /** - * 开始创建时间 - */ - private Date startCreateDate; - /** - * 结束创建时间 - */ - private Date endCreateDate; - - - /** - * 产品编号 - */ - List productCodes; - - private Integer pkCountry; - - /** - * 复购类型 - */ - - private Integer repurchaseType; - - /** - * 是否存在规格 - */ - private Integer isExistSpecs; - - /** - * 查询产品信息 - */ - private String queryInfo; - - /** - * 产品基础档案主键 - */ - private Integer pkProductBas; - - /** - * 数量 - */ - private Integer quantity; - - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 供应商 - */ - private Integer pkSupplier; - - - /** - * 供应商主键 - */ - private Integer pkCubasdoc; -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java index 5135f745..30bac7f8 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** - * @Description: 统一的销售服务回调审批成功入口 - * @Author: sui q - * @Time: 2022/10/25 13:45 - * @Classname: ISaleApprovalServiceApi - * @PackageName: com.hzs.sale.pub + * 统一的销售服务回调审批成功入口 */ public interface ISaleApprovalServiceApi { @@ -17,13 +13,9 @@ public interface ISaleApprovalServiceApi { * 提供销售模块统一的审核回调方法 * * @param approvalBusinessResultDTO - * @return: void - * @Author: sui q - * @Date: 2022/10/22 14:48 */ R approvalCallback(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /** * 销售模块签呈查询 * @@ -34,5 +26,4 @@ public interface ISaleApprovalServiceApi { */ R queryApprovalData(EApprovalBusiness eApprovalBusiness, String businessCode, String toLanguageTag); - } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java deleted file mode 100644 index 0de7f3d9..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.sale.refund; - -import com.hzs.common.core.domain.R; - -/** - * @Description: 订单退款对外服务api - * @Author: jiang chao - * @Time: 2023/8/26 14:44 - * @Classname: ISaRefundServiceApi - * @PackageName: com.hzs.sale.order - */ -public interface ISaRefundServiceApi { - - /** - * 直销订单退款回调 - * - * @param orderCode 订单编号 - * @param refundCode 退款编号 - * @param refundStatus 退款状态 - * @param refundMsg 退款信息 - * @return - */ - R onlinePayRefundCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg); - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java index d9eceee1..d52a7926 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.domain.R; import java.math.BigDecimal; /** - * @Description: 购票对外dubbo服务 - * @Author: jiang chao - * @Time: 2025/1/14 15:44 - * @Classname: ITicketServiceApi - * @PackageName: com.hzs.sale.ticket + * 购票对外dubbo服务 */ public interface ITicketServiceApi { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java index 16947098..c0dbaf8f 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.domain.R; import java.util.Date; /** - * @Description: 商品对外提供接口 - * @Author: sui q - * @Time: 2022/9/15 15:04 - * @Classname: IWaresServiceApi - * @PackageName: com.hzs.sale.wares + * 商品对外提供接口 */ public interface IWaresServiceApi { @@ -29,11 +25,7 @@ public interface IWaresServiceApi { void updateByAutoStartAndAutoStart(Date currentTime); /** - * @description: 修改商品预售状态 - * @author: zhang jing - * @date: 2024/10/24 16:09 - * @param: [] - * @return: void + * 修改商品预售状态 **/ void waresPreSale(); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java index 7591468a..efc635c9 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java @@ -5,14 +5,8 @@ import com.hzs.system.base.dto.ApprovalPushInfoDTO; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/4/5 21:29 - * @Classname: IApprovalPushInfo - * @Package_name: com.hzs.system.base - */ public interface IApprovalPushInfo { + /** * 审批推送站内信信息 * @@ -20,4 +14,5 @@ public interface IApprovalPushInfo { * @return R */ R approvalPushInfo(List approvalPushInfoDTOList); + } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java index 82e572fc..0b7e1f6b 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java @@ -6,11 +6,7 @@ import com.hzs.system.base.dto.BarCodeDTO; import java.util.List; /** - * @Description: 条码服务接口 - * @Author: jiang chao - * @Time: 2022/11/2 11:46 - * @Classname: IBarCodeServiceApi - * @PackageName: com.hzs.system.base + * 条码服务接口 */ public interface IBarCodeServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java index 969c2093..149abd94 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java @@ -3,13 +3,8 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - /** - * @Description: 公告、站内信审批 - * @Author: ljc - * @Time: 2022/9/24 13:48 - * @Classname: IMemberAccountAuditServiceApi - * @Package_name: com.hzs.member.account + * 公告、站内信审批 */ public interface INoticeAuditServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java deleted file mode 100644 index 2ae38027..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.hzs.system.base.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.Date; - -/** - * 翻译操作DTO - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class TransactionDTO implements Serializable { - - private static final long serialVersionUID = -8568364427570993930L; - - /** - * 主键 - */ - private Integer pkId; - - /** - * 中文 - */ - private String chinese; - - /** - * 中文繁体 - */ - private String traditional; - - /** - * 英文 - */ - private String english; - - /** - * 俄文 - */ - private String russian; - - /** - * 哈萨克斯坦文 - */ - private String kazakh; - - /** - * 印度尼西亚文 - */ - private String indonesia; - - /** - * 法文 - */ - private String french; - - /** - * 葡萄牙文 - */ - private String portuguese; - - /** - * 西班牙文 - */ - private String spanish; - - /** - * 阿拉伯文 - */ - private String arabic; - - /** - * 自定义1 - */ - private String custom1; - - /** - * 自定义2 - */ - private String custom2; - - /** - * 自定义3 - */ - private String custom3; - - /** - * 自定义4 - */ - private String custom4; - - /** - * 自定义5 - */ - private String custom5; - - /** - * 自定义6 - */ - private String custom6; - - /** - * 自定义7 - */ - private String custom7; - - /** - * 自定义8 - */ - private String custom8; - - /** - * 自定义9 - */ - private String custom9; - - /** - * 自定义10 - */ - private String custom10; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 修改人 - */ - private Long pkModified; - - /** - * 修改时间 - */ - private Date modifiedTime; - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java index f3ab5555..3c950755 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java @@ -7,11 +7,7 @@ import java.util.List; import java.util.Set; /** - * @Description: 专区币种配置提供的公共api - * @Author: sui q - * @Time: 2022/9/6 10:13 - * @Classname: IAreaCurrency - * @PackageName: com.hzs.system.config + * 专区币种配置提供的公共api */ public interface IAreaCurrencyServiceApi { @@ -19,9 +15,6 @@ public interface IAreaCurrencyServiceApi { * 根据条件查询国家的所有币种 * * @param pkCountry 国家 - * @return: R> - * @Author: sui q - * @Date: 2022/9/6 10:37 */ R> queryAreaCurrencyByPkCountry(Integer pkCountry); @@ -30,9 +23,6 @@ public interface IAreaCurrencyServiceApi { * * @param specialArea 所属专区 * @param pkCountry 国家 - * @return: R> - * @Author: sui q - * @Date: 2022/9/6 10:37 */ R> queryAreaCurrencyByCondition(Integer specialArea, Integer pkCountry); @@ -46,10 +36,7 @@ public interface IAreaCurrencyServiceApi { R> queryMemberCurrency(Integer specialArea, Long userId); /* - * @description: 根据条件查找对应的币种配置 - * @author: sui q - * @date: 2023/7/19 14:18 - * @param: null null + * 根据条件查找对应的币种配置 **/ R> queryAreaCurrencyByCondition(Integer pkSpecialAccount); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java index bcc1e5ed..41924350 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdAreaFreePostage; /** - * @Description: 专区免邮服务 - * @Author: jiang chao - * @Time: 2023/12/1 11:23 - * @Classname: AreaFreePostageServiceApi - * @PackageName: com.hzs.system.config + * 专区免邮服务 */ public interface IAreaFreePostageServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java deleted file mode 100644 index 60bfe927..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.ext.BdAwardsExt; - -import java.util.List; -import java.util.Map; - -/** - * @description: 根据国家查询奖衔配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: - **/ -public interface IBdBarCodeServiceApi { - - /** - * @description: 定时初始化条形码配置 - * @author: zhang jing - * @date: 2024/5/8 11:19 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R updatWarehouseLog(); - - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java index 89080384..c384cee0 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java @@ -3,18 +3,11 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.system.config.dto.LabelConfigDTO; -import java.util.List; - /** * 标签配置接口 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/1 19:02 - * @Classname: ILabelServiceApi - * @Package_name: com.hzs.system.config */ public interface ILabelServiceApi { + /** * 根据ID查询标签信息 * @@ -23,12 +16,4 @@ public interface ILabelServiceApi { */ R getByPkId(Integer labelId); - /** - * 根据类型查询标签信息 - * - * @param labelType 标签类型 - * @param pkCountry 国家 - * @return R> - */ - R> getLabelByType(Integer labelType, Integer pkCountry); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java index d9a94c78..64b1a494 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java @@ -1,7 +1,6 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.system.config.dto.RangeDTO; @@ -9,41 +8,21 @@ import java.util.List; import java.util.Map; /** - * @description: 根据国家查询极差配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: + * 根据国家查询极差配置列表api **/ public interface IRangeServiceApi { /** - * @description: 根据国家查询极差配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询极差配置列表 **/ R> queryRange(Integer pkCountry); - /** - * 查询各个国家极差的配置 键为 国家+极差类型+等级主键 - * - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 - */ - R> queryRangeDto(); - /** * 查询各个国家极差的配置 键为 国家+极差类型+等级主键 * * @param pkCountry 国家 * @param rangeType 极差类型 * @param pkLevel 等级 - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 */ R queryRangeDtoByCondition(Integer pkCountry, Integer rangeType, Integer pkLevel); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java deleted file mode 100644 index f21a22b0..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.hzs.system.config; - -/** - * @Description: 新零售极差dubbo服务接口 - * @Author: jiang chao - * @Time: 2025/2/17 9:46 - * @Classname: IRetailRangeServiceApi - * @PackageName: com.hzs.system.config - */ -public interface IRetailRangeServiceApi { - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java deleted file mode 100644 index d7f2abc3..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAccount; -import com.hzs.common.domain.system.config.BdShare; - -import java.util.List; - -/** - * @Description: 币种公共的api - * @Author: sui q - * @Time: 2022/9/9 14:07 - * @Classname: IGradeServiceApi - * @PackageName: com.hzs.system.config - */ -public interface IShareServiceApi { - - /** - * @description: 根据分红pkid查询分配配置 - * @author: zhang jing - * @date: 2022/9/22 10:03 - * @param: [accountProperty, pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R getBdShareById(Integer id); -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java deleted file mode 100644 index 4ad977e1..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; -import com.hzs.common.domain.system.config.ext.BdShopExt; - -import java.util.List; - -/** - * @description: 根据国家查询奖项配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: - **/ -public interface IShopServiceApi { - - /** - * @description: 根据国家查询奖项配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryShop(Integer pkCountry); - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java index 9f694946..dd83c1fb 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java @@ -34,12 +34,4 @@ public interface ITradeConfigServiceApi { */ R> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry); - /** - * 查询配置伞下白名单的会员 - * - * @param tradeConfigDTO 入参 - * @return List - */ - R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java index 3c6d6ce6..4e50944c 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java @@ -2,25 +2,15 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdTransfer; -import com.hzs.common.domain.system.config.BdWithdrawal; - -import java.util.List; /** - * @description: 根据国家查询提现配置明细列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现配置明细列表api **/ public interface ITransferServiceApi { /** - * @description: 根据国家查询转账配置列表 - * @author: zhang jing - * @date: 2022/9/28 10:32 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询转账配置列表 **/ R queryTransfer(Integer pkCountry); + } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java index 51ce9234..ad0cfb80 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java @@ -5,13 +5,6 @@ import com.hzs.system.config.dto.VertexDTO; import java.util.List; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/16 15:55 - * @Classname: IVertexServiceApi - * @PackageName: com.hzs.sale.vertex - */ public interface IVertexServiceApi { /** diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java index 8dacd146..b2e545c8 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java @@ -3,23 +3,13 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdWithdrawalProcess; - - /** - * @description: 根据国家查询提现手续费配置列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现手续费配置列表api **/ public interface IWithdrawalProcessServiceApi { /** - * @description: 根据国家查询提现手续费配置列表 - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询提现手续费配置列表 **/ R queryBdWithdrawalProcess(Integer pkCountry); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java deleted file mode 100644 index e0efe580..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalSpecial; - -import java.util.List; - -/** - * @description: 提现设置特殊配置api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: - **/ -public interface IWithdrawalSpecialServiceApi { - - /** - * @description: 根据国家查询提现设置特殊配置列表 - * @author: zhang jing - * @date: 2022/9/27 16:24 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalSpecial(Integer pkCountry); - /** - * @description: 根据国家会员编号查询提现设置特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:27 - * @param: [pkCountry, memberCode] - * @return: com.hzs.common.core.domain.R - **/ - R getWithdrawalSpecial(Integer pkCountry,String memberCode); - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java index 3ac8992a..d6bb319a 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java @@ -1,27 +1,15 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalTax; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; -import java.util.List; - /** - * @description: 个税明细api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 个税明细api **/ public interface IWithdrawalTaxServiceApi { - - /** - * @description: 根据国家查询个税明细 - * @author: zhang jing - * @date: 2022/9/27 16:13 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R queryWithdrawalTax(Integer pkCountry); + /** + * 根据国家查询个税明细 + **/ + R queryWithdrawalTax(Integer pkCountry); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java index 7b60a2d9..4f857b84 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java @@ -6,11 +6,7 @@ import com.hzs.system.sys.dto.BusinessLogDTO; import java.util.List; /** - * @Description: 业务操作明细接口 - * @Author: jiang chao - * @Time: 2023/8/3 18:14 - * @Classname: IBusinessLogApi - * @PackageName: com.hzs.system.sys + * 业务操作明细接口 */ public interface IBusinessLogApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java index 31e9ab5e..4f118e4e 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java @@ -3,17 +3,11 @@ package com.hzs.system.sys; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.CubasdocDTO; -/** - * @Description: - * @Author: yuhui - * @Time: 2024/5/8 16:05 - * @Classname: ICubasdocApi - * @PackageName: com.hzs.system.sys - */ public interface ICubasdocApi { /** * 根据id 查询 + * * @return */ R getCubasdoc(Integer pkCubasdoc); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java index 7a2aa12b..6f24442e 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java @@ -6,11 +6,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 菜单列服务 - * @Author: jiang chao - * @Time: 2023/6/8 11:21 - * @Classname: IMenuColumnServiceApi - * @PackageName: com.hzs.system.sys + * 菜单列服务 */ public interface IMenuColumnServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java index d1f1c24d..57d0267b 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.sys.SysOperationLog; /** - * Description: 后台操作日志服务接口 - * Author: jiang chao - * Time: 2022/9/14 15:48 - * Classname: IOperationLogService - * PackageName: com.hzs.system.sys + * 后台操作日志服务接口 */ public interface IOperationLogServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java deleted file mode 100644 index 086d99ad..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.system.sys.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @Description: 能量仓套餐DTO - * @Author: jiang chao - * @Time: 2023/8/10 17:53 - * @Classname: ThaliConfigDTO - * @PackageName: com.hzs.system.sys.dto - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class ThaliConfigDTO implements Serializable { - - private static final long serialVersionUID = 3316294777261662729L; - - /** - * 套餐ID - */ - private Integer pkId; - - /** - * 三方套餐ID - */ - private Long packageId; - - /** - * 套餐时长 - */ - private Integer time; - - /** - * 套餐价格 - */ - private BigDecimal price; - -} diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java index 992c6c92..226b3bcc 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java @@ -3,11 +3,7 @@ package com.hzs.third.delivery; import com.hzs.third.delivery.dto.DeliveryDTO; /** - * @Description: 新零售地址识别dubbo接口 - * @Author: jiang chao - * @Time: 2024/12/26 16:57 - * @Classname: IDeliveryServiceApi - * @PackageName: com.hzs.third.delivery + * 新零售地址识别dubbo接口 */ public interface IDeliveryServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java index d7b42789..c4d902f4 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.third.pay.dto.RefundDTO; /** - * @Description: 退款dubbo服务 - * @Author: jiang chao - * @Time: 2023/8/17 18:57 - * @Classname: IRefundServiceApi - * @PackageName: com.hzs.third.pay + * 退款dubbo服务 */ public interface IRefundServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java index 4cad8c9e..f3f4fad1 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.third.share.dto.ShareServiceDTO; /** - * @Description: 分享码服务 - * @Author: jiang chao - * @Time: 2023/3/15 11:31 - * @Classname: IShareServiceApi - * @PackageName: com.hzs.third.share + * 分享码服务 */ public interface IShareServiceApi { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java index 0b5f95a3..b8aa11f6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java @@ -240,4 +240,5 @@ public class CuMemberBonusController extends BaseController { bonusParam.setTeamList(userAuthorityDto.getUserTeamList()); bonusParam.setSystemType(SecurityUtils.getSystemType()); } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java index cbd2db07..36f06fc1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java @@ -41,4 +41,11 @@ public interface CuMemberBonusPushMapper extends BaseMapper { */ void insertCuMemberBonusPush(@Param("item") CuMemberBonusPush cuMemberBonusPush); + /** + * 根据查询条件查询固定的奖金明细 + * + * @param bonusParam 查询条件 + */ + List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java index 89ab7099..79822525 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java @@ -2,8 +2,6 @@ package com.hzs.bonus.bonus.service; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.List; - /** * 奖金结算服务类 */ @@ -13,9 +11,8 @@ public interface IBonusSettleService { * 计算会员奖金 * * @param date 结算日期 - * @param saOrderExtList 订单 */ - void calculateCuMemberBonus(String date, List saOrderExtList); + void calculateCuMemberBonus(String date); /** * 根据订单计算新零售奖金 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 512fa1cf..616125b9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -52,6 +52,33 @@ public abstract class BonusSettleHandle { return bonusConfigDTO.getBonusItemsExtMap().get(pkCountry.toString() + bonusItems).getPkId(); } + /** + * 获得 直推收益 备注 + */ + protected void directIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusPush cuMemberBonusPush, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember) { + String remark = String.format(BonusMsgConstants.DIRECT_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusPush.getCalAchieve(), cuMemberBonusPush.getCalValue()); + cuMemberBonusPush.setRemark(remark); + } + + /** + * 获得 见点收益 备注 + */ + protected void repurDirectIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusPush cuMemberBonusPush, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember, + Integer algebra) { + String remark = String.format(BonusMsgConstants.REPUR_DIRECT_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + algebra + 1, + cuMemberBonusPush.getCalAchieve(), cuMemberBonusPush.getCalValue()); + cuMemberBonusPush.setRemark(remark); + } + + /** * 获得 直推级差收益的备注 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 283b7678..e6ae9523 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -8,6 +8,7 @@ import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; +import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; @@ -16,12 +17,14 @@ import com.hzs.common.domain.bonus.BdBonusDeduct; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; +import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.system.config.dto.BonusConfigDTO; +import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -99,17 +102,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 奖金处理 List cuMemberBonusRangeList = new ArrayList<>(); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - ) { - // 注册,计算奖金: 直推级差收益 + 平级收益 - for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { - if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { - // 指定盒数商品 - // 计算直推级差收益 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); - } - } - } +// if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { +// // 注册,计算奖金: 直推级差收益 + 平级收益 +// for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { +// if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { +// // 指定盒数商品 +// // 计算直推级差收益 + 平级收益 +// cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); +// } +// } +// } if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 复购订单 @@ -258,54 +260,40 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 日结: - * 计算新零售团队的奖金,极差、平级、福利、福利分红、区域 + * 计算奖金,直推、阶段、级差、平级收益 */ - void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, BonusRecordDetailVO bonusRecordDetailVO, - Integer period, Integer yesterdayPeriod, Boolean isSameMonth) { + void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, + BonusRecordDetailVO bonusRecordDetailVO, Integer period, Integer yesterdayPeriod, Boolean isSameMonth) { // 结算期间日期 Date settleStartDate = DateUtils.parseStringToDate(settleDate); // 结算期间日期后一天 Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); - // 所有有效订单列表 - List retailOrderList = new ArrayList<>(); - // 复购订单列表 - List repurchaseOrderList = new ArrayList<>(); // 新零售订单 - List orderList = iBonusOrderService.queryRetailSaOrderByDay(settleStartDate, settleEndDate, null); - for (SaOrderExt saOrderExt : orderList) { - if (saOrderExt.getDelFlag() == EYesNo.YES.getIntValue()) { - retailOrderList.add(saOrderExt); - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单 - repurchaseOrderList.add(saOrderExt); - } - } - } + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; // 结算期间前一天表 String yesterdayRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + yesterdayPeriod; + // 结算明细表 + String rangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + period; + // 结算明细前一天表 + String yesterdayRangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + yesterdayPeriod; - // 回退奖衔,将奖衔回退到结算前状态 + // TODO 回退奖衔,将奖衔回退到结算前状态 iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName); // 更新网体 iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); - if (retailOrderList.size() > 0) { + if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 - List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); + List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 奖衔 - Map retailAwardsMap = new HashMap<>(); - List awardsList = bonusConfigDTO.getAwardsList(); - awardsList.forEach(bdAwards -> retailAwardsMap.put(bdAwards.getAwardsValue(), bdAwards)); - // 会员转map for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { @@ -313,69 +301,49 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } + // 奖衔 + Map retailAwardsMap = new HashMap<>(); + List awardsList = bonusConfigDTO.getAwardsList(); + awardsList.forEach(bdAwards -> retailAwardsMap.put(bdAwards.getAwardsValue(), bdAwards)); + // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 平级收益 + 复购级差收益 + // 精品直推收益、复购见点收益 + List cuMemberBonusPushList = new ArrayList<>(); + // 复购级差收益 List cuMemberBonusRangeList = new ArrayList<>(); // 会员奖金明细 List cuMemberBonusDetailList = new ArrayList<>(); - // 上面更新网体,按会员表是否激活进行处理 - for (SaOrderExt saOrderExt : retailOrderList) { - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); + for (SaOrderExt saOrderExt : orderList) { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { - // 注册、升级才能算激活状态 - sourceMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); + // 精品专区 + // 直推收益 -- 来源订单金额,直推拿金额的10% + this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, + bonusConfigDTO, period, cuMemberBonusMap); + // TODO 阶段收益 -- 来源订单金额 + + + // TODO 领导级差收益 -- 来源PV + // TODO 领导平差收益 -- 来源PV + } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + // 商城专区 + // TODO 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% + this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, + bonusConfigDTO, period, cuMemberBonusMap); + // TODO 阶段收益 -- 来源订单业绩 + } } - for (SaOrderExt saOrderExt : retailOrderList) { - // 计算自消费奖衔 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - - // 个人累计消费pv - BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - // 复购、重消,业绩算个人累计数据(业绩) - sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); - sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); - sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); - - // 计算自己奖衔等 - calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - null, cuMemberAwardsList, sourceMemberRangeExt); - // 计算团队业绩、计算奖衔 - cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, - retailAwardsMap, null)); - - // 计算奖金 直推级差 + 平级收益 - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { - // 注册或升级订单并且存在盒数产品,才有 直推级差收益 和 平级收益 - for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { - if (EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { - // 盒数商品 计算 直推级差 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); - } - } - } - - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单 - } + if (cuMemberBonusPushList.size() > 0) { + bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); } - if (cuMemberBonusRangeList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusRangeList() == null) { - bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); - } else { - bonusRecordDetailVO.getCuMemberBonusRangeList().addAll(cuMemberBonusRangeList); - } + bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); } if (cuMemberBonusDetailList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusDetailList() == null) { - bonusRecordDetailVO.setCuMemberBonusDetailList(cuMemberBonusDetailList); - } else { - bonusRecordDetailVO.getCuMemberBonusDetailList().addAll(cuMemberBonusDetailList); - } + bonusRecordDetailVO.setCuMemberBonusDetailList(cuMemberBonusDetailList); } if (cuMemberAwardsList.size() > 0) { // 批量插入会员奖衔记录 @@ -408,20 +376,17 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve)); targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve)); - // 激活的账号才能累计业绩和盒数(有注册、升级订单) - if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) { - // 累计业绩 - targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); - targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); - targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 累计金额 - targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); - targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); - targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 计算 - calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberAwardsList, targetMemberRangeExt); - } + // 累计业绩 + targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); + targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); + targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); + // 累计金额 + targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); + targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); + targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); + // 计算 + calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, + secondRangeTableName, cuMemberAwardsList, targetMemberRangeExt); targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } return cuMemberAwardsList; @@ -563,21 +528,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().subtract(orderAchieve)); } - // 激活的账号才能累计业绩和盒数(有注册、升级订单) - if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) { - // 累计金额 - targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); - targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); - targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 累计业绩 - targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); - targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); - targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 计算 - calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); - cuMemberRetailRangeExtList.add(targetMemberRangeExt); - } + // 累计金额 + targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); + targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); + targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); + // 累计业绩 + targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); + targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); + targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); + // 计算 + calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, + cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); + cuMemberRetailRangeExtList.add(targetMemberRangeExt); // 计算 targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } @@ -714,7 +676,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { // 停算收益、非正常会员、未激活、停止收益,直接跳过 continue; @@ -808,5 +769,144 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return cuMemberAwards; } + /** + * 计算直推收益 -- 精品专区 + */ + private void calculateDirectIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, + BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + if (null == sourceMember) { + log.warn("直推收益:订单会员不存在, pkMember: {}", saOrderExt.getPkMember()); + return; + } + + // 订单会员推荐人 + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent()); + if (null == targetMember) { + log.warn("直推收益:订单会员推荐人不存在, pkParent: {}", sourceMember.getPkParent()); + return; + } + // 死点 或 停算收益 或 顾客 没有奖金 + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + log.warn("直推收益:订单会员推荐人不满足计算奖金条件, memberCode: {}, category: {}, accountStatus: {}", targetMember.getMemberCode(), targetMember.getCategory(), targetMember.getAccountStatus()); + return; + } + // 订单金额 + BigDecimal orderAmount = saOrderExt.getOrderAmount(); + // 奖金金额 + BigDecimal bonusIncome = orderAmount.multiply(RetailConstants.DIRECT_BONUS_RATIO); + + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 直推奖金明细 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.DIRECT_INCOME.getValue()); + // 直推收益明细 + CuMemberBonusPush cuMemberBonusPush = getCuMemberBonusPush(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusPush.setCalAchieve(orderAmount); + cuMemberBonusPush.setCalValue(RetailConstants.DIRECT_BONUS_RATIO); + cuMemberBonusPush.setPretaxIncome(bonusIncome); + directIncomeRemark(saOrderExt, cuMemberBonusPush, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusPush, orderAmount, saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusPush.getIncomeStatus()) { + cuMemberBonus.setDirectIncome(ComputeUtil.computeAdd(cuMemberBonus.getDirectIncome(), cuMemberBonusPush.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusPush); + } + cuMemberBonusPushList.add(cuMemberBonusPush); + } + + /** + * 获取直推、见点收益信息 + */ + CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() + .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(saOrderExt.getPkId()) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.RATIO.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) + .pretaxIncome(BigDecimal.ZERO) + .incomeTax(BigDecimal.ZERO) + .realIncome(BigDecimal.ZERO) + .round(-1) + .second(-1) + .incomeRatio(BigDecimal.ZERO) + .incomeDialRatio(BigDecimal.ZERO) + .orderDialRatio(BigDecimal.ZERO) + .build(); + cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusPush; + } + + /** + * 计算见点收益 -- 商城专区 + */ + private void calculateRepurDirectIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, + BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + if (null == sourceMember) { + log.warn("订单会员不存在, pkMember: {}", saOrderExt.getPkMember()); + return; + } + // 推荐人 + long pkParent = sourceMember.getPkParent(); + // 代数 + int algebra = 0; + + while (true) { + if (algebra >= RetailConstants.REPUR_DIRECT_ALGEBRA) { + // 20代拿完,则结束 + break; + } + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 推荐人不存在则结束 + log.warn("见点收益:订单会员血缘上推荐人不存在, pkParent: {}", sourceMember.getPkParent()); + break; + } + // 死点 或 停算收益 或 顾客 没有奖金 + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + log.warn("见点收益:订单会员血缘上推荐人不满足计算奖金条件, memberCode: {}, category: {}, accountStatus: {}", targetMember.getMemberCode(), targetMember.getCategory(), targetMember.getAccountStatus()); + return; + } + pkParent = targetMember.getPkParent(); + + // 订单业绩 + BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); + // 奖金金额 + BigDecimal bonusIncome = orderAchieve.multiply(RetailConstants.DIRECT_BONUS_RATIO); + + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 直推奖金明细 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.REPUR_DIRECT_INCOME.getValue()); + // 直推收益明细 + CuMemberBonusPush cuMemberBonusPush = getCuMemberBonusPush(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusPush.setCalAchieve(orderAchieve); + cuMemberBonusPush.setCalValue(RetailConstants.DIRECT_BONUS_RATIO); + cuMemberBonusPush.setPretaxIncome(bonusIncome); + repurDirectIncomeRemark(saOrderExt, cuMemberBonusPush, sourceMember, targetMember, algebra); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusPush, orderAchieve, saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusPush.getIncomeStatus()) { + cuMemberBonus.setGlobalPoints(ComputeUtil.computeAdd(cuMemberBonus.getGlobalPoints(), cuMemberBonusPush.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusPush); + } + cuMemberBonusPushList.add(cuMemberBonusPush); + + // 代数 + 1 + algebra++; + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index 7b62c281..efd75032 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -76,7 +76,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Override @Transactional(rollbackFor = Exception.class) - public void calculateCuMemberBonus(String settleDate, List saOrderExtList) { + public void calculateCuMemberBonus(String settleDate) { try { // 结算期间 Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); @@ -84,8 +84,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 结算期间前一天期间 Integer yesterdayPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId(); - // 将删除的订单的点位变为死点 - //********************************* 更新当天最新的业绩*************************/ // 获取所有国家的奖金项 key = 国家 + 奖金项的值 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 会员奖金map(key:会员ID, @@ -95,9 +93,9 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 今天和昨天是否同月 Boolean isSameMonth = DateUtils.getMonth(settleDate).equals(DateUtils.getMonth(yesterday)); - // 计算新零售团队奖金 - bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, recordDetailVO, - period, yesterdayPeriod, isSameMonth); + // 计算奖金 + bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, + recordDetailVO, period, yesterdayPeriod, isSameMonth); // 保存当日计算的奖金 insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO); @@ -112,7 +110,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 查询奖金参数 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 需要处理的订单 - List retailOrderList = iBonusOrderService.queryRetailSaOrderByDay(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode); + List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode); if (CollectionUtil.isNotEmpty(retailOrderList)) { // 会员奖金map @@ -169,12 +167,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService { public void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt) { Integer updateType = null; String symbol = orderExt.getCancelBool() ? "-" : "+"; - if(orderExt.getOrderType().equals(EOrderType.RETAIL_REGISTER.getValue())){ + if (orderExt.getOrderType().equals(EOrderType.RETAIL_REGISTER.getValue())) { updateType = 1; - }else if(orderExt.getOrderType().equals(EOrderType.RETAIL_REPURCHASE.getValue())){ + } else if (orderExt.getOrderType().equals(EOrderType.RETAIL_REPURCHASE.getValue())) { updateType = 2; } - if(ObjectUtil.isEmpty(updateType)){ + if (ObjectUtil.isEmpty(updateType)) { return; } // 今天结算期数 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java index d82a5da1..c4505f47 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java @@ -18,12 +18,8 @@ import java.util.Set; @Service public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusPushService { - private CuMemberBonusSettle cuMemberBonusSettle; - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private CuMemberBonusSettle cuMemberBonusSettle; @Override public void deleteCuMemberBonusPush(Integer period) { @@ -32,16 +28,16 @@ public class CuMemberBonusPushServiceImpl extends ServiceImpl cuMemberBonusPushList, Set memberIdSet) { - if(cuMemberBonusPushList.size() == 0){ + if (cuMemberBonusPushList.size() == 0) { return; } List addMemberBonusPushList = new ArrayList<>(); for (CuMemberBonusPush cuMemberBonusPush : cuMemberBonusPushList) { - if(memberIdSet.contains(cuMemberBonusPush.getPkBonus())){ + if (memberIdSet.contains(cuMemberBonusPush.getPkBonus())) { addMemberBonusPushList.add(cuMemberBonusPush); } } - if(addMemberBonusPushList.size() ==0){ + if (addMemberBonusPushList.size() == 0) { return; } List> lists = cuMemberBonusSettle.handleCutList(addMemberBonusPushList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 5c5d7b8b..8f3edff8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -26,7 +26,6 @@ import com.hzs.common.domain.member.ext.*; import com.hzs.common.domain.system.config.BdBonusItems; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IBonusItemsServiceApi; import lombok.extern.slf4j.Slf4j; @@ -385,15 +384,20 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusRangeList); - cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusRange, MemberBonusDetailSerVO.class); + || EBonusItems.REPUR_DIRECT_INCOME.getValue() == bonusItemsValue) { + // 直推收益、见点收益 + List cuMemberBonusPushList = cuMemberBonusPushMapper.queryMemberBonusPushByBonusItemsFoServer(bonusParam); + dataTable = getDataTable(cuMemberBonusPushList); + cuMemberBonusPushList.forEach(cuMemberBonusPush -> { + MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusPush, MemberBonusDetailSerVO.class); memberBonusDetailSerVoS.add(memberBonusDetailVO); }); +// List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); +// dataTable = getDataTable(cuMemberBonusRangeList); +// cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { +// MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusRange, MemberBonusDetailSerVO.class); +// memberBonusDetailSerVoS.add(memberBonusDetailVO); +// }); } else { // 其他收益 区域分红、月度分红平均、月度分红加权 List cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItemsForServer(bonusParam); @@ -505,7 +509,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryRetailSaOrderByDay(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - - /** - * 查询时间范围内的订单,需要查询出del_flag = 1的值 - * - * @param startDate 开始时间 - * @param endDate 结束时间 - */ - List querySaOrderByTime(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - - /** - * 查询订单列表 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - * @param orderType 订单类型列表 - */ - List listSaOrderByTime(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderType") List orderType); + List listRetailSaOrder(@Param("startDate") Date startDate, + @Param("endDate") Date endDate, + @Param("orderCode") String orderCode); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index e1d60639..d0b6d013 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -1,12 +1,9 @@ package com.hzs.bonus.order.service; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.order.SaOrder; import java.util.Date; import java.util.List; -import java.util.Map; public interface IBonusOrderService { @@ -16,20 +13,6 @@ public interface IBonusOrderService { * @param startDate 开始日期 * @param endDate 结束日期 */ - List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - - /** - * 查询订单编号 - */ - SaOrderExt querySaOrderByDay(Date startDate, Date endDate, String orderCode); - - /** - * 查询订单列表 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - * @param orderType 订单类型列表 - */ - List listSaOrderByTime(Date startDate, Date endDate, List orderType); + List listRetailSaOrder(Date startDate, Date endDate, String orderCode); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index b48d0481..7e0fb9a8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -1,14 +1,8 @@ package com.hzs.bonus.order.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.order.mapper.BonusOrderMapper; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.order.SaOrder; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -19,26 +13,10 @@ public class BonusOrderServiceImpl implements IBonusOrderService { @Resource private BonusOrderMapper bonusOrderMapper; - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; @Override - public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return bonusOrderMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); - } - - @Override - public SaOrderExt querySaOrderByDay(Date startDate, Date endDate, String orderCode) { - List saOrderList = bonusOrderMapper.querySaOrderByTime(startDate, endDate, orderCode); - if (CollectionUtil.isNotEmpty(saOrderList)) { - return saOrderList.get(0); - } - return null; - } - - @Override - public List listSaOrderByTime(Date startDate, Date endDate, List orderType) { - return bonusOrderMapper.listSaOrderByTime(startDate, endDate, orderType); + public List listRetailSaOrder(Date startDate, Date endDate, String orderCode) { + return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode); } } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 14efc713..1d3ef1a3 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -26,10 +26,12 @@ - + + + @@ -38,20 +40,27 @@ - - - + + + + + + + + + + + + + - - - - - + + @@ -60,46 +69,57 @@ update ${rangeTableName} - set new_consume_pv = 0, - consume_pv = 0, - month_consume_pv = 0, - team_new_pv = 0, - team_consume_pv = 0, - team_month_pv = 0, - team_new_amount = 0, - team_consume_amount = 0, - team_month_amount = 0, - recommend_num = 0, - team_num = 0, - enable_status = 1, - pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20), - big_team_pv = 0, - small_team_pv = 0 + set pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 30), + new_consume_pv = 0, + consume_pv = 0, + month_consume_pv = 0, + new_consume_amount = 0, + consume_amount = 0, + month_consume_amount = 0, + team_new_pv = 0, + team_consume_pv = 0, + team_month_pv = 0, + team_new_amount = 0, + team_consume_amount = 0, + team_month_amount = 0, + recommend_num = 0, + team_num = 0, + big_team_pv = 0, + small_team_pv = 0, + reg_consume_new_amount = 0, + reg_consume_new_pv = 0, + reg_team_new_amount = 0, + reg_team_new_pv = 0, + rep_consume_new_amount = 0, + rep_consume_new_pv = 0, + rep_team_new_amount = 0, + rep_team_new_pv = 0 merge into ${rangeTableName} a using( - select pk_member, pk_grade, pk_awards, pk_share_awards, enable_status, - new_consume_pv, consume_pv, month_consume_pv, - team_new_pv, team_consume_pv, team_month_pv, - team_new_amount, team_consume_amount, team_month_amount, - recommend_num, team_num, - big_team_pv, small_team_pv + select pk_member, pk_grade, pk_awards, pk_share_awards, + consume_pv, month_consume_pv, + consume_amount, month_consume_amount, + team_consume_pv, team_month_pv, + team_consume_amount, team_month_amount, + recommend_num, team_num, big_team_pv, small_team_pv from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) when matched then update set + a.pk_grade = b.pk_grade, a.consume_pv = b.consume_pv, + a.consume_amount = b.consume_amount, a.team_consume_pv = b.team_consume_pv, a.team_consume_amount = b.team_consume_amount, a.recommend_num = b.recommend_num, a.team_num = b.team_num, - a.pk_grade = b.pk_grade, - a.enable_status = b.enable_status, a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv ,a.month_consume_pv = b.month_consume_pv + ,a.month_consume_amount = b.month_consume_amount ,a.team_month_pv = b.team_month_pv ,a.team_month_amount = b.team_month_amount @@ -109,21 +129,31 @@ merge into ${rangeTableName} a using ( - select #{item.pkMember} pk_member, #{item.pkAwards} pk_awards, #{item.pkGrade} pk_grade, #{item.pkShareAwards} pk_share_awards, + select #{item.pkMember} pk_member, #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv, + #{item.newConsumeAmount} new_consume_amount, #{item.consumeAmount} consume_amount, #{item.monthConsumeAmount} month_consume_amount, #{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv, #{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount, - #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status + #{item.recommendNum} recommend_num, #{item.teamNum} team_num, + #{item.regConsumeNewAmount} reg_consume_new_amount, #{item.regConsumeNewPv} reg_consume_new_pv, + #{item.regTeamNewAmount} reg_team_new_amount, #{item.regTeamNewPv} reg_team_new_pv, + #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, + #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv from dual ) b on (a.pk_member = b.pk_member) when matched then - update set a.pk_awards = b.pk_awards, a.pk_grade = b.pk_grade, a.pk_share_awards = b.pk_share_awards, + update set a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv, + a.new_consume_amount = b.new_consume_amount, a.consume_amount = b.consume_amount, a.month_consume_amount = b.month_consume_amount, a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv, a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount, - a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status + a.recommend_num = b.recommend_num, a.team_num = b.team_num, + a.reg_consume_new_amount = b.reg_consume_new_amount, a.reg_consume_new_pv = b.reg_consume_new_pv, + a.reg_team_new_amount = b.reg_team_new_amount, a.reg_team_new_pv = b.reg_team_new_pv, + a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, + a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv @@ -135,7 +165,6 @@ a.pk_settle_grade pk_grade, a.pk_awards, a.pk_range_awards, - a.is_activate enable_status, a.system_type from (select * from cu_member @@ -147,20 +176,19 @@ ) b on (a.pk_member = b.pk_member) when not matched then - insert (pk_member, pk_parent, pk_grade, pk_awards, pk_share_awards, enable_status, system_type) - values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.pk_range_awards, b.enable_status, b.system_type) + insert (pk_member, pk_parent, pk_grade, pk_awards, pk_share_awards, system_type) + values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.pk_range_awards, b.system_type) merge into ${secondRangeTableName} a using ( - select a.pk_id pk_member, + select a.pk_id pk_member, a.pk_parent, - a.pk_settle_grade pk_grade, + a.pk_settle_grade pk_grade, a.pk_awards, - a.pk_range_awards, - nvl(b.enable_status, 1) enable_status + a.pk_range_awards from (select * from cu_member where del_flag = 0 @@ -170,11 +198,10 @@ ) a left join ${rangeTableName} b on a.pk_id = b.pk_member - where b.enable_status = 0 ) b on (a.pk_member = b.pk_member) when matched then - update set a.enable_status = b.enable_status, a.pk_grade = b.pk_grade + update set a.pk_grade = b.pk_grade @@ -187,7 +214,7 @@ #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newConsumePv} new_consume_pv, #{item.teamNewPv} team_new_pv, - #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status + #{item.teamNewAmount} team_new_amount from dual ) b @@ -197,7 +224,7 @@ a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, a.new_consume_pv = b.new_consume_pv, a.team_new_pv = b.team_new_pv, - a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status + a.team_new_amount = b.team_new_amount @@ -218,20 +245,20 @@ UPDATE ${tableName} SET - PK_GRADE = ${cuMember.pkSettleGrade}, - PK_AWARDS = ${cuMember.pkAwards}, - - REG_CONSUME_NEW_AMOUNT = REG_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, - REG_CONSUME_NEW_PV = REG_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, - - - REP_CONSUME_NEW_AMOUNT = REP_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, - REP_CONSUME_NEW_PV = REP_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, - - ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, - ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} + PK_GRADE = ${cuMember.pkSettleGrade}, + PK_AWARDS = ${cuMember.pkAwards}, + + REG_CONSUME_NEW_AMOUNT = REG_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_CONSUME_NEW_PV = REG_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_CONSUME_NEW_AMOUNT = REP_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_CONSUME_NEW_PV = REP_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} WHERE - PK_MEMBER = #{pkMember} + PK_MEMBER = #{pkMember} UPDATE ${tableName} @@ -257,27 +284,25 @@ select a.pk_member, + a.pk_parent, a.member_code, a.member_name, - a.pk_parent, - a.pk_settle_country, - a.category, - a.account_status, a.pk_grade, a.pk_awards, a.pk_share_awards, - a.income_status, - a.consume_pv, + a.account_status, a.pay_time, - a.pk_rate, - a.system_type, + a.category, a.income_status, - a.pk_country, + a.pk_vertex, a.pk_settle_country, - a.enable_status, + a.pk_rate, new_consume_pv, consume_pv, month_consume_pv, + new_consume_amount, + consume_amount, + month_consume_amount, team_new_pv, team_consume_pv, team_month_pv, @@ -286,33 +311,31 @@ team_month_amount, recommend_num, team_num, - ba.grade_value, - ba.grade_name, + big_team_pv, + small_team_pv, + reg_consume_new_amount, + reg_consume_new_pv, + reg_team_new_amount, + reg_team_new_pv, + rep_consume_new_amount, + rep_consume_new_pv, + rep_team_new_amount, + rep_team_new_pv, bw.awards_value, bw.awards_name, bwa.awards_value share_awards_value, - a.big_team_pv, - a.small_team_pv, - bw.range_ratio, - bw.month_repurchase_ratio, - bw.benefit_avg_ratio, - bw.benefit_share_ratio, - a.pk_vertex, - bv.region_vertex_pk_id + bwa.awards_name share_awards_name from ( select * from ${tableName} start with pk_member = #{item} connect by pk_member = prior pk_parent ) a - inner join bd_grade ba - on a.pk_grade = ba.pk_id inner join bd_awards bw - on bw.pk_id = a.pk_awards + on bw.pk_id = a.pk_awards and bw.del_flag = 0 left join bd_awards bwa on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 left join bd_vertex bv on bv.pk_id = a.pk_vertex - where ba.del_flag = 0 and bw.del_flag = 0 @@ -348,8 +371,6 @@ team_month_amount, recommend_num, team_num, - ba.grade_value, - ba.grade_name, bw.awards_value, bw.awards_name, bws.awards_value share_awards_value, @@ -363,7 +384,7 @@ inner join bd_awards bw on bw.pk_id = a.pk_awards and bw.del_flag = 0 inner join bd_awards bws - on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 + on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 where ba.del_flag = 0 and a.pk_parent = #{pkParent} @@ -382,30 +403,26 @@ cm.income_status, cm.pay_time, cm.pk_vertex, - nvl(b.pk_rate, bt.pk_id) pk_rate, - nvl(cm.is_activate, a.enable_status) enable_status, + nvl(b.pk_rate, bt.pk_id) pk_rate, a.new_consume_pv, - nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, - nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, + nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, + nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, a.team_new_pv, - nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, - nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, + nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, + nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, a.team_new_amount, - nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, - nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, - nvl(b.big_team_pv, 0) big_team_pv, - nvl(b.small_team_pv, 0) small_team_pv, + nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, + nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, + nvl(b.big_team_pv, 0) big_team_pv, + nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - bg.grade_value, - bg.grade_name, bw.awards_value, bw.awards_name, bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - bws.awards_value share_awards_value, - bv.region_vertex_pk_id + bws.awards_value share_awards_value from ( select * from ${secondTableName} start with pk_member = #{pkMember} @@ -429,10 +446,10 @@ select cm.* from cu_member cm - start with cm.pk_id = #{pkMember} + start + with cm.pk_id = #{pkMember} connect by cm.pk_id = prior cm.pk_parent order by level diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml index ba93896e..5fcb2d37 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml @@ -56,44 +56,6 @@ - - insert ALL - - into cu_member_bonus_push(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,round,second,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.round},#{item.second}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, - cal_type, cal_achieve, cal_value, pretax_income, - income_tax, real_income, round, second, remark, - income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) - values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, - #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, - #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, - #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, - #{item.pkCountry}, #{item.pkCreator}) - - - delete - from CU_MEMBER_BONUS_PUSH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} and grant_status <= 2) - - + + delete + from CU_MEMBER_BONUS_PUSH + where PK_BONUS in ( + select pk_id + from cu_member_bonus + where period = #{period} + and grant_status <= 2) + + + + insert ALL + + into cu_member_bonus_push ( + pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, + pretax_income, income_tax, real_income, + round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, + pk_country, pk_creator) + values ( + #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, + #{item.round}, #{item.second}, #{item.remark}, + #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + SELECT 1 FROM dual + + + + insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, pretax_income, + income_tax, real_income, round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) + values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, + #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, + #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml index e43aca15..fc0abe67 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml @@ -156,13 +156,15 @@ tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name, b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,bct.short_name settle_country from ( - select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_order + select pk_id, pk_member, order_code, order_type, pk_rate, pk_country, order_amount, order_achieve + from sa_order so + where so.del_flag = 0 ) so inner join ( select cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income, - cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio from - cu_member_bonus cb + cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio + from cu_member_bonus cb inner join CU_MEMBER_BONUS_RANGE cr on cb.pk_id = cr.pk_bonus where 1=1 @@ -180,7 +182,7 @@ select 1 from ( select pk_id from cu_member - where del_flag=0 and PAY_STATUS=1 + where del_flag = 0 and PAY_STATUS = 1 start with pk_id = #{item} connect by pk_parent = prior pk_id diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 9f270851..e38404e8 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -52,84 +52,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select so.pk_id, so.pk_member, so.order_code, @@ -145,187 +70,22 @@ so.pk_reference, so.pk_vertex, so.pk_country, - so.del_flag, so.pay_time, so.pk_creator, so.consume_amount, - so.box_num, - nvl(st.pk_id,0) items_id, - nvl(st.pk_order,0) pk_order, - nvl(st.pk_wares,0) pk_wares, - nvl(st.wares_price,0) wares_price, - nvl(st.wares_quantity,0) wares_quantity, - nvl(bw.wares_code,'~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num + bc.in_exchange_rate from sa_order so - left join sa_order_wares st - on so.pk_id = st.pk_order and st.wares_price > 0 - left join bd_wares bw - on bw.pk_id = st.pk_wares and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (41, 42) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - union - select so.pk_id, - so.pk_member, - so.order_code, - so.order_type, - so.pk_rate, - so.rec_province, - so.rec_city, - so.rec_county, - so.order_amount, - so.order_achieve, - so.order_ass_achieve, - so.upload_achieve, - so.pk_reference, - so.pk_vertex, - so.pk_country, - so.del_flag, - so.pay_time, - so.pk_creator, - so.consume_amount, - so.box_num, - soi.items_id, - soi.pk_order, - soi.pk_wares, - soi.wares_price, - soi.wares_quantity, - nvl(bw.wares_code, '~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num - from sa_order so - left join ( - select max(soi.pk_id) items_id, - nvl(soi.pk_order, 0) pk_order, - nvl(soi.pk_wares, 0) pk_wares, - sum(soi.achievement * soi.quantity) wares_price, - max(soi.wares_quantity) wares_quantity - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - group by soi.pk_order, soi.pk_wares - ) soi - on soi.pk_order = so.pk_id - left join bd_wares bw - on bw.pk_id = soi.pk_wares - and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - ) od left join bd_currency bc - on od.pk_rate = bc.pk_id - order by pay_time, wares_price desc - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java index d85d98d6..99c85eb8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberTradeExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberTradeMapper extends BaseMapper { @@ -24,13 +18,9 @@ public interface CuMemberTradeMapper extends BaseMapper { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(@Param("pkMember") Long pkMember, @Param("sourceCode") String sourceCode); - /** * 查询列表信息 * @@ -39,14 +29,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ List selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** - * 根据条件查询提现总金额、余额 - * - * @param cuMemberTradeVO 交易明细信息 - * @return CuMemberTradeExt - */ - CuMemberTradeExt selectMemberTradeListCount(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -80,39 +62,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(@Param("pkMember") Long pkMember, - @Param("sourceCode") String sourceCode, - @Param("tradeClassify") Integer tradeClassify); - - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java index 50a0cdfd..9ef6b55b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java @@ -1,6 +1,5 @@ package com.hzs.member.account.provider; - import com.hzs.common.core.domain.R; import com.hzs.member.account.IBusinessCommission; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -12,27 +11,21 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; - /** - * @Description: 办理业务扣费 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 办理业务扣费 */ @Slf4j @DubboService public class IBusinessCommissionServiceProvider implements IBusinessCommission { - @Autowired - ICuMemberTradeService cuMemberTradeService; + private ICuMemberTradeService iCuMemberTradeService; @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 提交扣费失败", tradeType, e); return R.fail("提交扣费失败!"); @@ -43,7 +36,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionReject(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 驳回扣费失败", tradeType, e); return R.fail("驳回扣费失败!"); @@ -52,7 +45,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { @Override public R> selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(cuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java index 4d1568d9..c84f863c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java @@ -2,13 +2,10 @@ package com.hzs.member.account.provider; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.business.SignOnlineInfoVo; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.common.domain.member.empty.CuMemberEmpty; @@ -16,9 +13,6 @@ import com.hzs.common.domain.member.empty.CuMemberEmptyLog; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.service.ICuMemberAchieveLogService; -import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.empty.service.ICuMemberEmptyLogService; import com.hzs.member.empty.service.ICuMemberEmptyService; @@ -27,7 +21,6 @@ import com.hzs.member.handlebusiness.ICuHandleBusinessServiceApi; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import com.hzs.member.handlebusiness.dto.MemberEmptyDTO; import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; @@ -37,8 +30,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.time.ZoneId; @@ -60,17 +51,11 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic @Autowired private ICuHandleBusinessService handleBusinessService; @Autowired - private ICuMemberService cuMemberService; - @Autowired private IMemberEmptyService iMemberEmptyService; @Autowired private ICuMemberEmptyService iCuMemberEmptyService; @Autowired private ICuMemberEmptyLogService iCuMemberEmptyLogService; - @Autowired - private ICuMemberAchieveLogService iCuMemberAchieveLogService; - @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -78,8 +63,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic IAwardsServiceApi awardsServiceApi; @DubboReference ICountryServiceApi countryServiceApi; - @DubboReference - ISaOrderServiceApi orderServiceApi; /** * 解析业务诉求信息 @@ -413,124 +396,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic } } - - /** - * @description: 特殊业务处理 - * @author: zhang jing - * @date: 2023/5/16 20:06 - * @param: [resultDTO] - * @return: com.hzs.common.core.domain.R - **/ - @Override - @Transactional(rollbackFor = Exception.class) - public String auditProcess(ApprovalBusinessResultDTO resultDTO) { - try { - // 查询订单修改记录 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberServiceLog::getBusinessNo, resultDTO.getBusinessCode()); - List cuMemberServiceLogList = iCuMemberServiceLogService.list(queryWrapper); - //校验注水业绩 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - // TODO 注水业绩在这拦住了 其他的校验 - LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); - queryWrapper1.eq(CuMemberAchieveLog::getBusinessNo, resultDTO.getBusinessCode()); - queryWrapper1.eq(CuMemberAchieveLog::getApproveStatus, EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = iCuMemberAchieveLogService.list(queryWrapper1); - if (CollectionUtils.isEmpty(cuMemberServiceLogList) && CollectionUtils.isEmpty(malList)) { - log.info("特殊业务:签呈不存在"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_ABSENT_ERROR); - } - } - - if (!CollectionUtils.isEmpty(cuMemberServiceLogList)) { - CuMemberServiceLog cuMemberServiceLog = cuMemberServiceLogList.get(0); - if (EApproveStatus.ALREADY_SUBMIT.getValue() != cuMemberServiceLog.getApproveStatus()) { - log.info("特殊业务:签呈已审核"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_AUDITED_ERROR); - } - } - //修改会员编号 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CHANGE_MEMBER_CODE.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateCodeByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateCodeReject(resultDTO); - return null; - } - //注水业绩 - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - cuMemberAchieveLogService.toExamine(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue()) { - //修改政策币 - cuMemberService.upPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.DEL_POLICY_CURRENCY_YES_NO.getValue()) { - //删除政策币 - cuMemberService.delPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.ZERO_ELEMENT_REVOKE.getValue()) { - //零元撤单 - cuMemberService.zeroByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.UPDATE_SETTLE_COUNTRY.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateSettleCountryAdopt(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateSettleCountryReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.EMPTY_ORDER.getValue()) { - // 审核通过 空单注册 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - orderServiceApi.regEmptyOrderApproved(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - orderServiceApi.regEmptyOrderReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_SAVE.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_MODIFY.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_DELETE.getValue() - ) { - cuMemberService.awardsControlPetition(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PARENT.getValue()) { - // 修改直推 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updateParentByBusinessNoReject(resultDTO); - return null; - } - - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PLACE_PARENT.getValue()) { - // 修改安置 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - // 通过 - cuMemberService.updatePlaceParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updatePlaceParentByBusinessNoReject(resultDTO); - return null; - } - } - } catch (Exception e) { - //异常时,审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", resultDTO.getEApprovalBusiness().getValue(), e); - return TransactionUtils.getContent(ConfigMsgConstants.MEMBER_UPDATE_CODE_ERROR); - } - return null; - } - /** * 处理空单注册数据 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java index e7bbdc46..6fce4d3d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java @@ -1,7 +1,6 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.member.account.ICuMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.service.ICuMemberTradeService; @@ -10,11 +9,7 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @description: 会员交易明细 Doubbo服务 - * @author: zhang jing - * @date: 2023/7/28 11:53 - * @param: - * @return: + * 会员交易明细 Doubbo服务 **/ @Slf4j @DubboService @@ -23,25 +18,11 @@ public class ICuMemberTradeServiceProvider implements ICuMemberTradeServiceApi { @Autowired private ICuMemberTradeService iCuMemberTradeService; - /** - * @description: 业务办理扣费提交 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } - /** - * @description: 业务办理扣费驳回 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java index 0b006696..fc327d3b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java @@ -21,37 +21,24 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** - * @Description: 会员钱包审核Doubbo服务 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 会员钱包审核Doubbo服务 */ @Slf4j @DubboService public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditServiceApi { - @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ICuMemberWithdrawService cuMemberWithdrawService; - + private ICuMemberWithdrawService cuMemberWithdrawService; @Autowired - ICuMemberTradeService cuMemberTradeService; - + private ICuMemberTradeService cuMemberTradeService; @Autowired - ICuMemberBaseService cuMemberBaseService; - + private ICuMemberAccountLogService cuMemberAccountLogService; @Autowired - ICuMemberAccountLogService cuMemberAccountLogService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberAccountService cuMemberAccountService; - - @Autowired - ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; + private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; @Override public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -96,7 +83,7 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe return R.fail("审核记录不存在!"); } return R.ok(businessLicenseApprove(approvalBusinessResultDTO)); - }else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { + } else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { //重置营业执照审批 CuMemberBusinessLicense cuMemberBusinessLicense = cuMemberBusinessLicenseService.selectLicenseByBusinessNo(businessCode); if (null == cuMemberBusinessLicense) { @@ -146,11 +133,6 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe } } - //驳回 - if (approveOperation == (EApproveOperation.REJECT.getValue())) { - // 根据后需求,是否重新发起 - // cuMemberRechargeService.updateDelFlagByRechargeCode(businessCode); - } } /** @@ -211,18 +193,14 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(eApproveStatus.getValue()==EApproveStatus.REJECTED.getValue()){ + if (eApproveStatus.getValue() == EApproveStatus.REJECTED.getValue()) { cuMemberBusinessLicense.setRejectMsg(""); } return cuMemberBusinessLicenseService.updateLicenseByBusinessNo(cuMemberBusinessLicense); } /** - * @description: 重置营业执照 - * @author: zhang jing - * @date: 2023/11/20 13:43 - * @param: [approvalBusinessResultDTO] - * @return: java.lang.Integer + * 重置营业执照 **/ private Integer resetBusinessLicenseApprove(ApprovalBusinessResultDTO approvalBusinessResultDTO) { LoginUser loginUser = approvalBusinessResultDTO.getLoginUser(); @@ -232,12 +210,11 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(approvalBusinessResultDTO.getApproveOperation()==EApproveOperation.AGREE.getValue()){ + if (approvalBusinessResultDTO.getApproveOperation() == EApproveOperation.AGREE.getValue()) { return cuMemberBusinessLicenseService.deleteLicense(cuMemberBusinessLicense); - }else{ + } else { return cuMemberBusinessLicenseService.rejectResetLicense(cuMemberBusinessLicense); } - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java index 6b231756..a7fe1ec9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java @@ -4,7 +4,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.core.enums.EApproveRechargeStatus; import com.hzs.common.domain.member.account.CuMemberRecharge; -import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.MemberBalanceDTO; @@ -17,50 +16,30 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/3/8 18:28 - * @Classname: IMemberTradeServiceProvider - * @Package_name: com.hzs.member.account.provider - */ @Slf4j @DubboService public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { @Autowired - ICuMemberTradeService memberTradeService; - + private ICuMemberTradeService iCuMemberTradeService; @Autowired - ICuMemberRechargeService memberRechargeService; - - @Override - public R saveMemberOnlineTradeAndAccount(String rechargeCode) { - try { - return R.ok(memberTradeService.saveMemberTradeAndAccountByRechargeCode(rechargeCode)); - } catch (Exception e) { - log.error("在线充值插入交易流水失败,充值单号:{} ", rechargeCode, e); - return R.fail("提交扣费失败!"); - } - - } + private ICuMemberRechargeService iCuMemberRechargeService; @Override public R updateOnlineRechargeByRechargeCode(String rechargeCode, EApproveOperation eApproveOperation, Long pkMember) { try { - return R.ok(memberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); + return R.ok(iCuMemberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); } catch (Exception e) { log.error("更新充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("充值回调处理异常:" + e.getMessage()); } } - @Override public R selectMemberRechargeByCodeAndPkMember(String rechargeCode, Long pkMember) { try { CuMemberRechargeVO memberRechargeVO = CuMemberRechargeVO.builder().rechargeCode(rechargeCode).pkMember(pkMember).build(); - CuMemberRecharge cuMemberRecharge = memberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); + CuMemberRecharge cuMemberRecharge = iCuMemberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); if (null == cuMemberRecharge) { return R.fail("充值信息不存在!"); } @@ -76,34 +55,16 @@ public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { log.error("查询预充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("查询预充值信息失败!"); } - } - /** - * 查询余额不足的用户信息 - * - * @param businessCommissionDTO 业务参数 - * @return List - */ @Override public List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return memberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); + return iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); } - /** - * 业务办理扣费提交 - * - * @param businessCommissionDTO 业务办理入参 - * @return Integer - */ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(memberTradeService.businessCommissionSubmit(businessCommissionDTO)); - } - - @Override - public R> querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return R.ok(memberTradeService.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java index 0a9bf9f1..5eb9f888 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java @@ -14,43 +14,23 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.List; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/5 14:32 - * @Classname: MemberAccountServiceProvider - * @PackageName: com.hzs.member.account.provider - */ @Slf4j @DubboService public class MemberAccountServiceProvider implements IMemberAccountServiceApi { @Autowired - private ICuMemberAccountService cuMemberAccountService; + private ICuMemberAccountService iCuMemberAccountService; @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Override public R> queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { - return R.ok(cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); + return R.ok(iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); } @Override public R> queryCuMemberAccountByPkMembers(List pkMemberList) { - return R.ok(cuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); - } - - @Override - public R orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - try { - String str = iCuMemberBusinessService.orderChangeProductPre(saOrder, updateOrder); - if (null == str) { - return R.ok(); - } - return R.fail(str); - } catch (Exception e) { - return R.fail(e.getMessage()); - } + return R.ok(iCuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); } @Override @@ -63,16 +43,6 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - try { - iCuMemberBusinessService.orderReturn(saOrder, userId, changeAmount, changeRemark); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - @Override public R orderReturnMember(List pkMemberList, Long userId) { try { @@ -96,14 +66,4 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R insertMemberTrade(SaOrder saOrder, CuMemberAccountExt cuMemberAccount) { - try { - iCuMemberBusinessService.insertMemberTrade(saOrder, cuMemberAccount); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java index 76a14281..4789c8d7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java @@ -9,21 +9,17 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @Description: 银行卡 Doubbo服务 - * @Author: ljc - * @Time: 2022/11/11 16:31 - * @Classname: MemberBankServiceProvider - * @Package_name: com.hzs.member.account.provider + * 银行卡 Doubbo服务 */ @Slf4j @DubboService public class MemberBankServiceProvider implements IMemberBankServiceApi { @Autowired - ICuMemberBankService cuMemberBankService; + private ICuMemberBankService iCuMemberBankService; @Override public R addBankInfo(CuMemberBankParam cuMemberBankParam) { - return R.ok(cuMemberBankService.saveMemberBank(cuMemberBankParam)); + return R.ok(iCuMemberBankService.saveMemberBank(cuMemberBankParam)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java index 768419e9..185613c2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java @@ -13,12 +13,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 服务类 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface ICuMemberTradeService extends IService { @@ -27,13 +22,9 @@ public interface ICuMemberTradeService extends IService { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(Long pkMember, String sourceCode); - /** * 查询列表信息 * @@ -42,7 +33,6 @@ public interface ICuMemberTradeService extends IService { */ Object[] selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -51,7 +41,6 @@ public interface ICuMemberTradeService extends IService { */ Integer batchSaveTradeByMemberCode(@Param("cuMemberTrades") List cuMemberTrades); - /** * 查询钱包明细详情信息 * @@ -93,24 +82,14 @@ public interface ICuMemberTradeService extends IService { List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO); /** - * @description: 办理业务专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/10 15:19 - * @param: [mbbList] - * @return: java.util.List + * 办理业务专用查询会员余额 **/ - List selectBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); + List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); + /** - * @description: 特殊业务业务办理专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/14 11:10 - * @param: [mbbList, pkCountry] - * @return: java.util.List + * 特殊业务业务办理专用查询会员余额 **/ - List selectSpecialBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); - - - + List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); /** * 查询钱包明细(前端) @@ -120,7 +99,6 @@ public interface ICuMemberTradeService extends IService { */ List selectWattleDetail(CuMemberTradeVO cuMemberTradeVO); - /** * 根据 来源编号更新交易编号 * @@ -129,16 +107,6 @@ public interface ICuMemberTradeService extends IService { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify); - /** * 根据充值单号插入交易流水、余额表 * @@ -147,27 +115,6 @@ public interface ICuMemberTradeService extends IService { */ Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * @@ -176,7 +123,6 @@ public interface ICuMemberTradeService extends IService { */ List selectMemberTradeBySourceCode(String sourceCode); - /** * 查询用户交易类型 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java index 0b9d5b7a..8b1b5057 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java @@ -26,7 +26,6 @@ import com.hzs.member.account.service.ICuMemberRechargeService; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.account.vo.CuMemberTradeDetailVO; import com.hzs.member.account.vo.CuMemberTradeVO; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.system.base.dto.CurrencyDTO; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -40,33 +39,19 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - *

* 会员交易明细 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service public class CuMemberTradeServiceImpl extends ServiceImpl implements ICuMemberTradeService { @Autowired - ICuMemberBaseService cuMemberBaseService; + private ICuMemberBaseService cuMemberBaseService; @Autowired - ICuMemberAccountService cuMemberAccountService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ITransactionCommonService iTransactionCommonService; - - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private ITransactionCommonService iTransactionCommonService; @Override public List queryCuMemberTrade(Long pkMember, String sourceCode) { @@ -174,7 +159,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl) objects[1],accountValue, isWithdraw); + return cuMemberAccountService.batchUpdateMemberAccountByPkmember((List) objects[1], accountValue, isWithdraw); } else { return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry((List) objects[1], null); } - - } } return true; @@ -264,7 +246,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl memberAmountDTOList = memberAmountMap.entrySet().stream().map(a -> a.getValue()).collect(Collectors.toList()); + List memberAmountDTOList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); //更新余额 return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry(memberAmountDTOList, isWithdraw); } @@ -294,13 +276,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -317,11 +292,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl> maDto : memberAmountMap.entrySet()) { - Integer flag = 0; + int flag = 0; BigDecimal availableBalance; Integer businessType = 0; //中国 - if (pkCountry == CountryConstants.CHINA_COUNTRY) { + if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { //会员下的业务 ff3: for (int i = 0; i < maDto.getValue().size(); i++) { @@ -424,21 +399,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -652,7 +617,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl a.getValue()).collect(Collectors.toList()); + memberAmountList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); } } return new Object[]{cuMemberTradeLsit, memberAmountList}; @@ -689,7 +654,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return baseMapper.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify); - } - - @Override @Transactional(rollbackFor = Exception.class) public Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode) { @@ -796,25 +751,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl batchQueryCuMemberTradeSeq(Integer rowNum) { - return baseMapper.batchQueryCuMemberTradeSeq(rowNum); - } - - @Override - public void batchInsertCuMemberTrade(List cuMemberTradeList) { - List> cutList = cuMemberBonusSettle.handleCutList(cuMemberTradeList); - cutList.forEach(memberTradeList -> - baseMapper.batchInsertCuMemberTrade(memberTradeList)); - } - - @Override public List selectMemberTradeBySourceCode(String sourceCode) { return baseMapper.selectMemberTradeBySourceCode(sourceCode); } - @Override public List selectTradeType(Long pkMember, Integer pkCountry) { return baseMapper.selectTradeType(pkMember, pkCountry); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java index ac8659a3..cd8d6087 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java @@ -7,14 +7,9 @@ import java.util.Date; /** * 审批详情 - * @Description: - * @Author: ljc - * @Time: 2022/10/11 14:12 - * @Classname: ApprovalDetailVO - * @Package_name: com.hzs.member.account.vo */ @Data -public class ApprovalDetailVO implements Serializable { +public class ApprovalDetailVO implements Serializable { private static final long serialVersionUID = 6582252890330363302L; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java index 3c091dd1..0f26b066 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java @@ -19,7 +19,6 @@ public class CuMemberBankVO implements Serializable { /** * 银行主键 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_BANK) private Integer pkBank; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java index 12d23863..1e0b3220 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java @@ -15,12 +15,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java index 86d0030a..3b1fafdc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java @@ -13,12 +13,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java index 977ac454..fb57f3bc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java @@ -7,21 +7,12 @@ import com.hzs.member.param.CuMemberGiftParam; import java.util.List; /** - *

* 会员礼包收货地址 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface CuMemberGiftMapper extends BaseMapper { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java index e680ed86..867820db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java @@ -1,18 +1,10 @@ package com.hzs.member.address.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import java.util.List; - /** - *

* 会员礼包收货地址修改记录表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface CuMemberGiftRecordMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java deleted file mode 100644 index 9d48f010..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.hzs.member.address.provider; - -import com.alibaba.fastjson2.JSONObject; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.member.account.dto.MemberAccountAudit; -import com.hzs.member.address.ICuMemberGiftServiceApi; -import com.hzs.member.address.service.ICuMemberGiftRecordService; -import com.hzs.member.address.service.ICuMemberGiftService; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 会员礼包修改收货地址审批回调 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider - */ -@Slf4j -@DubboService -public class CuMemberGiftServiceProvider implements ICuMemberGiftServiceApi { - - @Autowired - ICuMemberGiftRecordService cuMemberGiftRecordService; - @Autowired - ICuMemberGiftService cuMemberGiftService; - - @Override - public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { - //审核状态(1=待提交,2=已提交,3=审核中,4=已驳回,5=已完成,6=已归档) - EApproveStatus eApproveStatus = approvalBusinessResultDTO.getEApproveStatus(); - EApprovalBusiness eApprovalBusiness = approvalBusinessResultDTO.getEApprovalBusiness(); - String businessCode = approvalBusinessResultDTO.getBusinessCode(); - - if (StringUtils.isEmpty(businessCode) || null == eApproveStatus || null == eApprovalBusiness) { - return R.fail("提交审核缺少参数!"); - } - int approveState = eApproveStatus.getValue(); - try { - //会员礼包收货地址修改审批 - if (approveState == (EApproveStatus.FINISH.getValue())) { - CuMemberGiftRecord cuMemberGiftRecord = cuMemberGiftRecordService.getById(Integer.parseInt(businessCode)); - String newValue=cuMemberGiftRecord.getNewValue(); - if(StringUtils.isNotEmpty(newValue)){ - JSONObject root = new JSONObject().parseObject(newValue); - Long pkId =root.getLong("pkId"); - String giftAddress =root.getString("giftAddress"); - String giftName =root.getString("giftName"); - String giftPhone =root.getString("giftPhone"); - Long giftProvince =root.getLong("giftProvince"); - Long giftCity =root.getLong("giftCity"); - Long giftCounty =root.getLong("giftCounty"); - CuMemberGift cuMemberGift= new CuMemberGift(); - cuMemberGift.setPkId(pkId); - cuMemberGift.setGiftAddress(giftAddress); - cuMemberGift.setGiftName(giftName); - cuMemberGift.setGiftPhone(giftPhone); - cuMemberGift.setGiftProvince(giftProvince); - cuMemberGift.setGiftCity(giftCity); - cuMemberGift.setGiftCounty(giftCounty); - cuMemberGift.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberGift.setPkModified(SecurityUtils.getUserId()); - cuMemberGift.setModifiedTime(new Date()); - cuMemberGiftService.updateById(cuMemberGift); - }else{ - return R.fail("提交审核缺少参数!"); - } - } - return R.ok(); - } catch (Exception e) { - //会员礼包修改收货地址业务发生异常时,提醒审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", approveState, e); - return R.fail("会员礼包修改收货地址业务流程出错!"); - } - } - - - /** - * TDO转业务参数 - * - * @param approvalBusinessResultDTO 业务审批操作DTO - * @param approveState 审核状态 - * @param module 模块 - * @param businessCode 业务代码 - * @return MemberAccountAudit - */ - private MemberAccountAudit dtoToParam(ApprovalBusinessResultDTO approvalBusinessResultDTO, Integer approveState, Integer module, String businessCode) { - return MemberAccountAudit.builder() - .approver(approvalBusinessResultDTO.getLoginUser().getUserId()) - .pkModified(approvalBusinessResultDTO.getLoginUser().getUserId()) - .approveState(approveState) - .approveTime(approvalBusinessResultDTO.getOperationTime()) - .businessCode(businessCode).module(module) - .pkRole(approvalBusinessResultDTO.getSysUser().getUserId()) - .roleName(approvalBusinessResultDTO.getSysUser().getUserName()) - .build(); - } - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java index 6cfabf95..c86dc907 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java @@ -1,16 +1,10 @@ package com.hzs.member.address.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.address.CuMemberGiftRecord; /** - *

* 会员礼包收货地址修改记录表 服务类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface ICuMemberGiftRecordService extends IService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java index bc8b9236..f60a8dae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java @@ -8,30 +8,17 @@ import com.hzs.member.param.CuMemberGiftParam; import java.util.List; /** - *

* 会员礼包收货地址 服务类 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface ICuMemberGiftService extends IService { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:23 - * @param: [pkId] - * @return: com.hzs.member.address.vo.CuMemberGiftVO + * 查询会员礼包收货地址修改审批详情 **/ - CuMemberGiftVO approvalDetail(Long pkId); + CuMemberGiftVO approvalDetail(Long pkId); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java index 7c667da2..a33a6063 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.member.address.service.ICuMemberGiftRecordService; import org.springframework.stereotype.Service; /** - *

* 会员礼包收货地址修改记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ @Service public class CuMemberGiftRecordServiceImpl extends ServiceImpl implements ICuMemberGiftRecordService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java index 4c3369fb..508c1d0b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java @@ -1,78 +1,29 @@ package com.hzs.member.address.service.impl; -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.member.account.vo.ApprovalDetailVO; import com.hzs.member.address.mapper.CuMemberGiftMapper; -import com.hzs.member.address.service.ICuMemberGiftRecordService; import com.hzs.member.address.service.ICuMemberGiftService; import com.hzs.member.address.vo.CuMemberGiftVO; import com.hzs.member.param.CuMemberGiftParam; -import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalQueryDTO; -import com.hzs.system.sys.dto.ApprovalQueryDetailDTO; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; /** - *

* 会员礼包收货地址 服务实现类 - *

- * - * @author hzs - * @since 2022-08-22 */ @Service public class CuMemberGiftServiceImpl extends ServiceImpl implements ICuMemberGiftService { - @DubboReference - IApprovalServiceApi approvalServiceApi; - ICuMemberGiftRecordService cuMemberGiftRecordService; - /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List - **/ + @Override public List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam) { return baseMapper.selectCuMemberGiftList(memberGiftParam); } - /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:07 - * @param: [pkId] - * @return: java.util.List - **/ @Override - public CuMemberGiftVO approvalDetail(Long pkId) { -/* CuMemberGiftVO memberGiftVO=new CuMemberGiftVO(); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("PK_CU_MEMBER_GIFT",pkId); - CuMemberGiftRecord memberGiftRecord=cuMemberGiftRecordService.getOne(queryWrapper); - //调用审批流 -// R approvalQueryResult = approvalServiceApi.approvalDetail(EApprovalBusiness.CU_MEMBER_GIFT,null,null); - R approvalQueryResult=null; - List approvalDetailVOS = new ArrayList<>(); - if (approvalQueryResult.isSuccess()) { - //转换审批详情 - List approvalQueryDetailDTOS = approvalQueryResult.getData().getDetailList(); - approvalQueryDetailDTOS.forEach(item -> approvalDetailVOS.add(BeanUtil.copyProperties(item, ApprovalDetailVO.class))); - } - memberGiftVO.setDetailList(approvalDetailVOS); - return memberGiftVO;*/ + public CuMemberGiftVO approvalDetail(Long pkId) { return null; } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java index af0321cf..e77f33a3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java @@ -21,7 +21,6 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.service.ICuMemberTeamService; import com.hzs.member.base.vo.CuMemberTeamVO; -import com.hzs.system.base.ITransactionServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,28 +31,19 @@ import java.util.List; /** * 会员所属团队(隶属团队)前端控制器 - * - * @author zhangjing - * @since 2022-09-16 */ @RestController @RequestMapping("/manage/member-team") public class CuMemberTeamController extends BaseController { @Autowired - private ICuMemberTeamService cuMemberTeamService; + private ICuMemberTeamService iCuMemberTeamService; - @DubboReference - ITransactionServiceApi iTransactionServiceApi; @DubboReference IMemberServiceApi iMemberServiceApi; /** - * @description: 查询会员所属团队(隶属团队)列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询会员所属团队(隶属团队)列表 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -62,16 +52,12 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); startPage(); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); return getDataTable(list); } /** - * @description: 隶属团队下拉选 - * @author: zhang jing - * @date: 2022/11/16 15:43 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 隶属团队下拉选 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/listNoPage") @@ -79,7 +65,7 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setPkCountry(SecurityUtils.getPkCountry()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); List listVo = new ArrayList<>(); list.forEach(item -> listVo.add(BeanUtil.copyProperties(item, CuMemberTeamVO.class))); return getDataTable(listVo); @@ -92,32 +78,24 @@ public class CuMemberTeamController extends BaseController { */ @GetMapping("/find-all") public AjaxResult findAll() { - return AjaxResult.success(cuMemberTeamService.list( + return AjaxResult.success(iCuMemberTeamService.list( Wrappers.lambdaQuery().eq(CuMemberTeam::getSystemType, SecurityUtils.getSystemType())) ); } /** * 根据体系查询团队配置 - * - * @param pkVertexList - * @return */ @GetMapping("/find-vertex") public AjaxResult findByVertex(@RequestParam List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CuMemberTeam::getPkBdVertex, pkVertexList); queryWrapper.orderByAsc(CuMemberTeam::getTeamName); - return AjaxResult.success(cuMemberTeamService.list(queryWrapper)); + return AjaxResult.success(iCuMemberTeamService.list(queryWrapper)); } - /** - * @description: 新增会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.INSERT) @PostMapping("/save") @@ -139,29 +117,20 @@ public class CuMemberTeamController extends BaseController { } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); cuMemberTeam.setPkCountry(pkCountry); cuMemberTeam.setPkCreator(SecurityUtils.getUserId()); cuMemberTeam.setCreationTime(new Date()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - return toAjax(cuMemberTeamService.save(cuMemberTeam)); + return toAjax(iCuMemberTeamService.save(cuMemberTeam)); } - /** - * @description: 修改会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -186,52 +155,31 @@ public class CuMemberTeamController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); queryWrapper.ne(CuMemberTeam::getPkId, cuMemberTeam.getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - - if (null != cuMemberTeam.getPkTransaction()) { - iTransactionServiceApi.updateTransaction(pkCountry, - cuMemberTeam.getTeamName(), cuMemberTeam.getPkTransaction(), true); - } else { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); - } - cuMemberTeam.setPkModified(SecurityUtils.getUserId()); cuMemberTeam.setModifiedTime(new Date()); - return toAjax(cuMemberTeamService.updateById(cuMemberTeam)); + return toAjax(iCuMemberTeamService.updateById(cuMemberTeam)); } - /** - * @description: 查询单条会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { CuMemberTeamExt memberTeam = new CuMemberTeamExt(); memberTeam.setPkId(pkId); - List cuMemberTeam = cuMemberTeamService.queryCuMemberTeam(memberTeam); + List cuMemberTeam = iCuMemberTeamService.queryCuMemberTeam(memberTeam); CuMemberTeamExt cuMemberTeamExt = cuMemberTeam.get(0); return AjaxResult.success(cuMemberTeamExt); } - /** - * @description: 删除会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") @@ -241,37 +189,26 @@ public class CuMemberTeamController extends BaseController { updateWrapper.set(CuMemberTeam::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(CuMemberTeam::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(CuMemberTeam::getModifiedTime, new Date()); - //删除翻译 - CuMemberTeam memberTeam = cuMemberTeamService.getById(pkId); - List pkIdList = new ArrayList<>(); - pkIdList.add(memberTeam.getPkTransaction().longValue()); - iTransactionServiceApi.removeTransactionByPkId(pkIdList); - return toAjax(cuMemberTeamService.update(updateWrapper)); + return toAjax(iCuMemberTeamService.update(updateWrapper)); } /** - * @description: 更新所属团队(隶属团队) - * @author: sui q - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 更新所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/update-team/{pkTeamCode}") public AjaxResult updateTeamByVertex(@PathVariable Long pkTeamCode) { - cuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); + iCuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); return AjaxResult.success(); } /** * 刷新全部团队 - * - * @return */ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/flush-all") public AjaxResult flushAll() { - cuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); + iCuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); return AjaxResult.success(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java index 8d9618e1..cf2aad12 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberAgent; /** - *

* 会员信息-代理商信息 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface CuMemberAgentMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 218c4d88..e935b14c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -246,15 +246,6 @@ public interface CuMemberMapper extends BaseMapper { */ List parentList(@Param("pkParent") Long pkParent, @Param("memberCode") String memberCode, @Param("memberName") String memberName, @Param("startCreateTime") Date startCreateTime, @Param("endCreateTime") Date endCreateTime, @Param("memberInfo") String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(@Param("topCode") String topCode, @Param("pkMember") Long pkMember); - /** * 校验会员编号是否存在 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java index 9683ac95..5cb5cd22 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java @@ -2,24 +2,10 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** - *

* 分享注册记录会员 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-15 */ public interface CuMemberShareMapper extends BaseMapper { - /** - * 海粉列表 - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java index 1c6e70ab..9c5d4fb7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java @@ -2,22 +2,16 @@ package com.hzs.member.base.provider; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuAwardsControlServiceApi; import com.hzs.member.base.dto.CuAwardsControlDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import com.hzs.system.config.dto.ServiceChargeDTO; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -27,8 +21,6 @@ import java.util.Map; /** * 真实奖衔控制涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceApi { @@ -36,39 +28,28 @@ public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceAp @Autowired private ICuMemberServiceLogService memberServiceLogService; @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; - @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * @description: 查询真实奖衔控制审核列表 - * @author: zhang jing - * @date: 2023/4/10 15:17 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> awardsControlList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); List list = new ArrayList<>(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); for (CuMemberServiceLog cs : msList) { //查询扣费金额,账户信息 CuAwardsControlDTO control = JSONObject.parseObject(cs.getNewValue(), CuAwardsControlDTO.class); control.setCost(control.getCost()); control.setPkAccount(control.getPkAccount()); - if(control.getPkAccount()!=null){ - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(control.getPkAccount()); + if (control.getPkAccount() != null) { + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(control.getPkAccount()); control.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); } control.setPkMember(cs.getPkMember()); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java index a76bfd34..792b27a4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java @@ -2,27 +2,18 @@ package com.hzs.member.base.provider; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuMemberAchieveLogServiceApi; import com.hzs.member.base.dto.CuMemberAchieveLogDTO; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.config.IAwardsServiceApi; -import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; import lombok.extern.slf4j.Slf4j; @@ -34,68 +25,47 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; -/** - * @description: - * @author: zhang jing - * @date: 2023/3/28 16:57 - * @param: - * @return: - **/ @Slf4j @DubboService public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogServiceApi { - @Autowired - private ICuMemberServiceLogService memberServiceLogService; - @Autowired - private ICuHandleBusinessService handleBusinessService; - @DubboReference - private IGradeServiceApi gradeServiceApi; - @DubboReference - private IAwardsServiceApi awardsServiceApi; - @DubboReference - private ICountryServiceApi countryServiceApi; @Autowired private ICuMemberAchieveLogService achieveLogService; @Autowired private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * 解析注水业绩诉求信息 - * - * @param analysisBusinessAppealParam 业务信息 - * @return R - */ + + @DubboReference + IServiceChargeServiceApi iServiceChargeServiceApi; + @Override public R> memberAchieveLog(AnalysisBusinessAppealParam analysisBusinessAppealParam) { - CuMemberAchieveLogVO cuMemberAchieveLogVO=new CuMemberAchieveLogVO(); - List list=new ArrayList<>(); + CuMemberAchieveLogVO cuMemberAchieveLogVO = new CuMemberAchieveLogVO(); + List list = new ArrayList<>(); cuMemberAchieveLogVO.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); List list1 = achieveLogService.queryTryAchieveLogList(cuMemberAchieveLogVO); - if(CollectionUtil.isNotEmpty(list1)){ + if (CollectionUtil.isNotEmpty(list1)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); Integer pkCountry = list1.get(0).getPkCountry(); - for(CuMemberAchieveLogVO cmal:list1){ + for (CuMemberAchieveLogVO cmal : list1) { Integer maxSecond = cuMemberAchieveLogService.selectByMaxApproveNumber(cmal.getPkMember(), EApproveStatus.FINISH.getValue()); //查询扣费金额,账户信息 ServiceChargeDTO serviceChargeDTO = new ServiceChargeDTO(); serviceChargeDTO.setType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); serviceChargeDTO.setQuantity(maxSecond + 1); serviceChargeDTO.setPkCountry(pkCountry); - R serviceChargeDTOR = serviceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); + R serviceChargeDTOR = iServiceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); //接口查询金额是否足够 cmal.setCost(serviceChargeDTOR.getData().getCost()); cmal.setPkAccount(serviceChargeDTOR.getData().getPkAccount()); - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); cmal.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); - cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getSettleDate())); - cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getDueDate())); + cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getSettleDate())); + cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getDueDate())); } } list1.forEach(item -> list.add(BeanUtil.copyProperties(item, CuMemberAchieveLogDTO.class))); @@ -104,5 +74,4 @@ public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogSe } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java deleted file mode 100644 index a7fa4e0c..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.member.base.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import com.hzs.member.base.IMemberLevelServiceApi; -import com.hzs.member.detail.service.ICuMemberLevelService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @Description: 会员等级相关dubbo服务 - * @Author: jiang chao - * @Time: 2025/2/27 9:25 - * @Classname: MemberLevelServiceProvider - * @PackageName: com.hzs.member.base.provider - */ -@DubboService -public class MemberLevelServiceProvider implements IMemberLevelServiceApi { - - @Autowired - private ICuMemberLevelService iCuMemberLevelService; - - @Override - public R> listMemberLevel(Long pkMember, Long pkOrder) { - return R.ok(iCuMemberLevelService.listMemberLevel(pkMember, pkOrder)); - } -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 6d2fb93d..50a00a47 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -5,11 +5,9 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ELoginType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -20,8 +18,6 @@ import com.hzs.member.base.service.*; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.swing.param.CuMemberSwingNetParam; -import com.hzs.member.swing.service.ICuMemberSwingNetService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -44,8 +40,6 @@ public class MemberServiceProvider implements IMemberServiceApi { @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Autowired - private ICuMemberRegisterService iCuMemberRegisterService; - @Autowired private ICuMemberEmptyCodeService iCuMemberEmptyCodeService; @Override @@ -181,11 +175,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R queryCuMemberByPkMember(Long pkReference) { - return R.ok(iCuMemberService.queryCuMemberByPkMember(pkReference)); - } - @Override public R saveMember(SaOrderExt saOrder, CuMemberAccountExt cuMemberAccountExt) { try { @@ -215,11 +204,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R createMemberIdAndCode(CuMember cuMember) { - return R.ok(iCuMemberService.createMemberIdAndCode(cuMember)); - } - @Override public R createRegisterMemberCode(CuMember cuMember) { return R.ok(iCuMemberService.createRegisterMemberCode(cuMember)); @@ -245,11 +229,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.findMemberByMemberId(pkMemberList, pkCountry)); } - @Override - public R queryCuMemberRegister(Long pkMember) { - return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); - } - @Override public R updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { try { @@ -274,11 +253,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberBusinessService.updateMemberLevel(cuMember, saOrder, pkOldLevel)); } - @Override - public R checkParent(String topCode, Long userId) { - return R.ok(iCuMemberService.checkParent(topCode, userId) > 0); - } - @Override public Integer getAwardsTranslateValue(Integer pkCountry, Integer pkId) { return iCuMemberService.getAwardsTranslateValue(pkCountry, pkId); @@ -378,9 +352,4 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } - - @Override - public R queryCuMemberShare(Long pkMember) { - return R.ok(iCuMemberShareService.queryCuMemberShare(pkMember)); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java index 02257292..f6b0a1b1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java @@ -1,24 +1,19 @@ package com.hzs.member.base.provider; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EPopupType; import com.hzs.common.core.enums.EnableStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; -import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.IUpPolicyCurrencyServiceApi; import com.hzs.member.base.dto.UpPolicyCurrencyDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -28,8 +23,6 @@ import java.util.Map; /** * 修改政策币涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyServiceApi { @@ -39,28 +32,20 @@ public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyService @Autowired private ITransactionCommonService iTransactionCommonService; - - /** - * @description: 查询修改政策币审核列表 - * @author: zhang jing - * @date: 2023/5/10 17:42 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> policyCurrencyList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { List list = new ArrayList<>(); CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); - Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(),EnableStatus.values(), EPopupType.values()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); + Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(), EnableStatus.values(), EPopupType.values()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { msList.forEach(item -> { UpPolicyCurrencyDTO upc = JSONObject.parseObject(item.getNewValue(), UpPolicyCurrencyDTO.class); - upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS+upc.getEnableStatus())); - upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE+upc.getTransfer())); + upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS + upc.getEnableStatus())); + upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE + upc.getTransfer())); list.add(upc); }); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java index a8a7706f..c152436b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java @@ -1,111 +1,53 @@ package com.hzs.member.base.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** - *

* 注水业绩记录表 服务类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ public interface ICuMemberAchieveLogService extends IService { /** - * @description: 特殊业务-注水业绩记录查询 - * @author: zhang jing - * @date: 2023/2/3 17:16 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩记录查询 **/ List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 特殊业务-注水业绩-审核列表 - * @author: zhang jing - * @date: 2023/3/28 16:28 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩-审核列表 **/ List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 查询某一期历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:20 - * @param: [calList] - * @return: java.util.List + * 查询某一期历史业绩 **/ List queryMemberAchieveHistoryList(List calList); /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:13 - * @param: [tableName, cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询单个会员当期业绩 **/ - CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO,Integer pkCountry); - /** - * @description: 查询最大审核次数 - * @author: zhang jing - * @date: 2023/2/6 16:10 - * @param: [pkMember, approveStatus] - * @return: java.lang.Integer - **/ - Integer selectByMaxApproveNumber(Long pkMember,int approveStatus); + CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry); /** - * @description: 注水业绩 - * @author: zhang jing - * @date: 2023/4/11 19:15 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询最大审核次数 + **/ + Integer selectByMaxApproveNumber(Long pkMember, int approveStatus); + + /** + * 注水业绩 **/ CuMemberAchieveLogVO infusingWater(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 发起签呈 - * @author: zhang jing - * @date: 2023/4/11 19:18 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 发起签呈 **/ CuMemberAchieveLogVO petition(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 审核注水业绩 - * @author: zhang jing - * @date: 2023/2/9 17:45 - * @param: [cuMemberAchieveLogVO] - * @return: boolean - **/ - boolean toExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO); - - /** - * 根据期间查询特殊业务注水业务,用于更新业绩,奖金计算使用 - * @param period 期间 - * @return: List - * @Author: sui q - * @Date: 2023/3/11 11:26 - */ - List queryMemberAchieveLogByPeriod(Integer period); - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List + * 校验是否存在未审核数据 **/ List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java index 7cb2bd87..1a698b6c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java @@ -7,20 +7,8 @@ import java.util.List; import java.util.Map; /** - *

* 会员信息-代理商信息 服务类 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface ICuMemberAgentService extends IService { - /** - * 查询所有的代理商会员会员 key 国家 +省 + 市 - * @return: List - * @Author: sui q - * @Date: 2023/1/5 15:16 - */ - Map> queryCuMemberAgent(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java index 11de7110..4b86fa28 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java @@ -123,15 +123,6 @@ public interface ICuMemberBusinessService { */ void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder); - /** - * 校验订单调换货物余额是否足够 - * - * @param saOrder 订单 - * @param updateOrder 新订单 - * @return - */ - String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder); - /** * 订单调换货物扣费处理 * @@ -142,17 +133,6 @@ public interface ICuMemberBusinessService { */ void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj); - /** - * 订单退单 - * - * @param saOrder 订单 - * @param userId 操作用户ID - * @param changeAmount 变动金额(除订单退回外,又追加的补偿或者扣款) -- 非必传 - * @param changeRemark 变动备注 -- 非必传 - * @return - */ - void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark); - /** * 订单退单注册会员 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index 1d4ae7f3..f2e6edae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -19,13 +19,6 @@ public interface ICuMemberRegisterService extends IService { */ List queryCuMemberRegisterExeByCondition(MemberParam memberParam); - /** - * 根据会员主键查询会员注册信息 - * - * @param pkMember 会员主键 - */ - CuMemberRegister queryCuMemberRegister(Long pkMember); - /** * 将用户注册表信息更改为死点 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 5aa1b321..777c21a1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -40,11 +40,6 @@ public interface ICuMemberService extends IService { */ Boolean saveMember(CuMember cuMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 根据会员编号获取会员信息(查库) * @@ -467,15 +462,6 @@ public interface ICuMemberService extends IService { */ List parentList(Long pkParent, String memberCode, String memberName, Date startCreateTime, Date endCreateTime, String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(String topCode, Long pkMember); - /** * 校验会员编号是否存在 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java index 9bac0405..3ee1fa76 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java @@ -2,30 +2,10 @@ package com.hzs.member.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** * 分享注册记录会员 服务类 - * - * @author hzs - * @since 2023-03-15 */ public interface ICuMemberShareService extends IService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); - /** - * 查询会员分享 - * - * @param pkMember 会员主键 - */ - CuMemberShare queryCuMemberShare(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java index 000e1c0d..2b3c8bc2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java @@ -2,9 +2,6 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; @@ -19,22 +16,18 @@ import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; -import com.hzs.member.account.dto.MemberAmountDTO; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.mapper.CuMemberAchieveLogMapper; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; import com.hzs.system.sys.dto.BusinessLogDTO; import com.hzs.system.sys.dto.LoginUser; import org.apache.dubbo.config.annotation.DubboReference; -import org.apache.ibatis.annotations.Param; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -42,20 +35,10 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneId; -import java.time.ZonedDateTime; -import java.time.temporal.ChronoUnit; import java.util.*; /** - *

* 注水业绩记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ @Service public class CuMemberAchieveLogServiceImpl extends ServiceImpl implements ICuMemberAchieveLogService { @@ -64,124 +47,37 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @DubboReference + ICurrencyServiceApi currencyServiceApi; + @Override public List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { - //先查询 -// List listAll = new ArrayList<>(); -// if (StringUtils.isNotNull(cuMemberAchieveLogVO.getStartDate()) && -// StringUtils.isNotNull(cuMemberAchieveLogVO.getEndtDate())) { -// Instant startInstant = cuMemberAchieveLogVO.getStartDate().toInstant(); -// Instant endInstant = cuMemberAchieveLogVO.getEndtDate().toInstant(); -// ZoneId zoneId = ZoneId.systemDefault(); -// LocalDate startLocalDate = startInstant.atZone(zoneId).toLocalDate(); -// LocalDate endLocalDate = endInstant.atZone(zoneId).toLocalDate(); -// //根据日期范围遍历日期 -// for (LocalDate localDate = startLocalDate; localDate.isBefore(endLocalDate); -// localDate = localDate.plusDays(1)) { -// ZonedDateTime zdt = localDate.atStartOfDay(zoneId); -// Date date = Date.from(zdt.toInstant()); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// listAll.addAll(list); -// } -// } else { -// Date date = new Date(); -// date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// listAll = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// } //先查询注水日志表 - List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), + return baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), cuMemberAchieveLogVO.getInfusingWaterType()); -// if (CollectionUtil.isNotEmpty(list)) { -// list.forEach(itm -> { -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, itm.getSettleDate()); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// //查询最新期数 -// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( -// DateUtils.parseDateToStr(datestr)).getPkId(); -// itm.setPeriod(period); -// itm.setTableName(tableName); -// }); -// List achieveHistoryList = baseMapper.queryMemberAchieveHistoryList(list); -// if (CollectionUtil.isNotEmpty(achieveHistoryList)) { -// list.forEach(itm -> { -// achieveHistoryList.forEach(itmm -> { -// if (itmm.getPkMember().equals(itm.getPkMember()) && -// itmm.getPeriod().equals(itm.getPeriod())) { -// itm.setAbalance(itmm.getAbalance()); -// itm.setBbalance(itmm.getBbalance()); -// itm.setAsumPv(itmm.getAsumPv()); -// itm.setBsumPv(itmm.getBsumPv()); -// itm.setAsumRealPv(itmm.getAsumRealPv()); -// itm.setBsumRealPv(itmm.getBsumRealPv()); -// itm.setRepABalance(itmm.getRepABalance()); -// itm.setRepBBalance(itmm.getRepBBalance()); -// itm.setRepASumPv(itmm.getRepASumPv()); -// itm.setRepBSumPv(itmm.getRepBSumPv()); -// } -// }); -// }); -// } -// } - return list; } - /** - * @description: 查询某一期的历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:19 - * @param: [calList] - * @return: java.util.List - **/ + @Override public List queryMemberAchieveHistoryList(List calList) { List list = baseMapper.queryMemberAchieveHistoryList(calList); R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - BigDecimal exchangeRate = SecurityUtils.getPkCountry() == CountryConstants.CHINA_COUNTRY ? currency.getData().getInExchangeRate() : BigDecimal.ONE; + BigDecimal exchangeRate = SecurityUtils.getPkCountry().equals(CountryConstants.CHINA_COUNTRY) ? currency.getData().getInExchangeRate() : BigDecimal.ONE; List listnew = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { list.forEach(itm -> { @@ -201,26 +97,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl + * 特殊业务-注水业绩-审核列表 **/ public List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { return baseMapper.queryTryAchieveLogList(cuMemberAchieveLogVO.getApproveStatus(), cuMemberAchieveLogVO.getBusinessNo()); } - - /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:14 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO - **/ @Override public CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry) { CuMemberAchieveLogVO achieveLogVO = new CuMemberAchieveLogVO(); @@ -256,25 +139,11 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免签呈 或 免签呈+免支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDSIGNING.getValue() || @@ -363,7 +232,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -437,13 +315,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl dtoList = new ArrayList<>(); //业务单号 String code = CommonUtil.createSerialNumber(EOrderPrefix.MEMBER_ACHIEVE.getValue()); - Set pkMemberIds = new HashSet<>(); cuMemberAchieveLogVO.setPkAccount(cuMemberAchieveLogVO.getCmalvList().get(0).getPkAccount()); for (CuMemberAchieveLogVO cmal : cuMemberAchieveLogVO.getCmalvList()) { @@ -469,14 +339,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免支付 或 需签呈+支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDPAY.getValue() || cuMemberAchieveLogVO.getProcessType() == EProcessType.DOUBLEPAY.getValue()) { - pkMemberIds.add(cmal.getPkMember()); CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); memberAchieveLog.setASumRealModifyPv(cmal.getAsumRealModifyPv()); memberAchieveLog.setBSumRealModifyPv(cmal.getBsumRealModifyPv()); @@ -502,7 +371,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 更后右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 更后右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -594,96 +472,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", approvalBusinessResultDTO.getBusinessCode()); - queryWrapper.eq("APPROVE_STATUS", EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = baseMapper.selectList(queryWrapper); - //审核通过 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - //修改日志表审核状态 - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - updateWrapper.set("APPROVE_STATUS", EApproveStatus.FINISH.getValue()); - updateWrapper.set("MODIFIED_TIME", date); - updateWrapper.set("PK_MODIFIED", userID); - baseMapper.update(null, updateWrapper); - } - } - } - //审核驳回 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - List memberAmountDTOList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - if (StringUtils.isNotNull(cmal.getCost()) && cmal.getCost().compareTo(BigDecimal.ZERO) > 0) { - MemberAmountDTO memberAmountDTO = new MemberAmountDTO(); - memberAmountDTO.setPkMember(cmal.getPkMember()); - memberAmountDTO.setTradeAmount(cmal.getCost()); - memberAmountDTO.setPkAccount(cmal.getPkAccount()); - memberAmountDTOList.add(memberAmountDTO); - } - //修改日志表审核状态 - CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); - memberAchieveLog.setModifiedTime(date); - memberAchieveLog.setPkModified(userID); - memberAchieveLog.setPkCountry(pkCountry); - memberAchieveLog.setApproveStatus(EApproveStatus.REJECTED.getValue()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - baseMapper.update(memberAchieveLog, updateWrapper); - } - if (CollectionUtil.isNotEmpty(memberAmountDTOList)) { - //退款 - BusinessCommissionDTO businessCommissionDTO = new BusinessCommissionDTO(); - businessCommissionDTO.setPkCountry(pkCountry); - businessCommissionDTO.setPkAccount(memberAmountDTOList.get(0).getPkAccount()); - businessCommissionDTO.setMemberAmountDTOList(memberAmountDTOList); - businessCommissionDTO.setTradeType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); - businessCommissionDTO.setTradeCode(approvalBusinessResultDTO.getBusinessCode()); - businessCommissionDTO.setPkCreator(approvalBusinessResultDTO.getLoginUser().getUserId()); - Boolean result = cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO, EApproveStatus.REJECTED); - if (!result) { - throw new ServiceException(ConfigMsgConstants.MEMBER_ACHIEVE_IS_REFUND); - } - } - } - } - return true; - } - - @Override - public List queryMemberAchieveLogByPeriod(Integer period) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - queryWrapper.in(SystemFieldConstants.APPROVE_STATUS, EApproveStatus.FINISH.getValue()); - queryWrapper.orderByAsc(MemberFieldConstants.PK_MEMBER, SystemFieldConstants.CREATION_TIME); - return baseMapper.selectList(queryWrapper); - } - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List - **/ @Override public List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO) { return baseMapper.checkAchieveList(memberAchieveLogVO); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java index dc9b6cbf..8142128b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java @@ -1,48 +1,15 @@ package com.hzs.member.base.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; -import com.hzs.common.core.enums.EAgentType; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.member.base.CuMemberAgent; import com.hzs.member.base.mapper.CuMemberAgentMapper; import com.hzs.member.base.service.ICuMemberAgentService; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** - *

* 会员信息-代理商信息 服务实现类 - *

- * - * @author hzs - * @since 2022-08-31 */ @Service public class CuMemberAgentServiceImpl extends ServiceImpl implements ICuMemberAgentService { - @Override - public Map> queryCuMemberAgent() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select(" pk_member,agent_province,agent_city,agent_county,agent_grade,pk_country ") - .eq(MemberFieldConstants.AGENT_TYPE, EAgentType.AGENT.getValue()); - List cuMemberAgentList = baseMapper.selectList(queryWrapper); - Map> cuMemberAgentMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAgentList.size())); - cuMemberAgentList.forEach(cuMemberAgent -> { - String key = cuMemberAgent.getPkCountry().toString() + cuMemberAgent.getAgentProvince().toString() + cuMemberAgent.getAgentCity().toString(); - if(cuMemberAgentMap.containsKey(key)){ - cuMemberAgentMap.get(key).add(cuMemberAgent); - }else{ - List cuMemberAgents = new ArrayList<>(); - cuMemberAgents.add(cuMemberAgent); - cuMemberAgentMap.put(key, cuMemberAgents); - } - }); - return cuMemberAgentMap; - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index 0c0ee068..fa151657 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -29,7 +28,6 @@ import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -90,13 +88,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Autowired private RabbitTemplate rabbitTemplate; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired private ICuMemberService cuMemberService; private ICuMemberRegisterService cuMemberRegisterService; - @Autowired - private ICuMemberAccountService iCuMemberAccountService; - - private ICuMemberAccountService cuMemberAccountService; private ICuMemberTradeService cuMemberTradeService; @@ -142,16 +139,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { this.cuMemberTradeService = cuMemberTradeService; } - @Autowired - public void setCuMemberAccountService(ICuMemberAccountService cuMemberAccountService) { - this.cuMemberAccountService = cuMemberAccountService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - @Autowired public void setCuMemberRegisterService(ICuMemberRegisterService cuMemberRegisterService) { this.cuMemberRegisterService = cuMemberRegisterService; @@ -311,7 +298,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); } private void saveMemberRecords(CuMember cuMember, SaOrder saOrder) { @@ -375,7 +362,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccount.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); if (cuMemberAccountExtList.size() == 0) { throw new RuntimeException("没有找到会员账户"); } @@ -544,7 +531,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } // 更新账户余额 try { - if (!cuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { + if (!iCuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { throw new RuntimeException("用户付款失败,请重试!"); } } finally { @@ -599,7 +586,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberByRegisterOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { // 会员账号 验证会员账户是否存在金额 @@ -634,7 +621,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberBySelfRevokeOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); // 回退给创建人 - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { // 会员账号 验证会员账户是否存在金额 CuMember member = cuMemberService.getMember(saOrder.getPkMember()); @@ -678,7 +665,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { CuMemberAccount cuMemberAccountParam = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccountParam.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); if (CollectionUtil.isEmpty(cuMemberAccountExtList)) { return Boolean.FALSE; } @@ -861,7 +848,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 按照memberList 倒叙往后删除 Date currentDateTime = DateUtils.currentDateTime(); List centerIdList = saOrderMap.values().stream().map(BaseEntity::getPkCreator).distinct().collect(Collectors.toList()); - List cuMemberAccountList = cuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); + List cuMemberAccountList = iCuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); Map cuMemberAccountMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAccountList.size())); cuMemberAccountList.forEach(cuMemberAccount -> cuMemberAccountMap.put(cuMemberAccount.getPkMember(), cuMemberAccount)); @@ -873,7 +860,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 回退奖衔,根据订单从 cu_member_awards查询 cuMemberAwardsService.deleteCuMemberAwards(saOrder.getPkId(), pkApprove, currentDateTime); cuMemberService.deleteCuMemberByPkMember(pkMember, pkApprove, currentDateTime); - cuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); + iCuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); // 撤销正常订单,修改 cu_member_register 账户状态为死点 CuMemberRegister cuMemberRegister = new CuMemberRegister(); cuMemberRegister.setPkMember(pkMember); @@ -939,7 +926,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override @Transactional(rollbackFor = Exception.class) public Boolean cancelMemberAccount(Long pkMember, SaOrder saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 回退账号余额 cancelOrderBackAccount(pkMember, saOrder, payMemberAccount); return Boolean.TRUE; @@ -947,7 +934,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override public void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); BigDecimal backOrderAmount = saOrder.getBackOrderAmount(); // 考虑部分撤单 // 部分退,回退金额按照 币种扣除的倒叙扣除 现金->消费->奖金 奖金->消费->现金 @@ -1019,62 +1006,18 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { saveAndUpdateCuMember(cuMemberTradeList, updateMemberAccount); } - @Transactional(rollbackFor = Exception.class) - @Override - public String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - // 查询会员订单支付币种 - List cuMemberTrades = cuMemberTradeService.queryCuMemberTrade(saOrder.getPkCreator(), saOrder.getOrderCode()); - - // 查询会员当前余额 - CuMemberAccount cuMemberAccount = new CuMemberAccount(); - cuMemberAccount.setPkCountry(saOrder.getPkCountry()); - cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); - - if (CollectionUtil.isNotEmpty(cuMemberTrades)) { - List currencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyByPkCountry(saOrder.getPkCountry()).getData(); - Map areaCurrencyMap = new HashMap<>(); - currencyDTOList.forEach(areaCurrencyDTO -> areaCurrencyMap.put(areaCurrencyDTO.getPkAccount(), areaCurrencyDTO)); - - for (CuMemberTrade cuMemberTrade : cuMemberTrades) { - BigDecimal tradeMoney = cuMemberTrade.getTradeAmount().negate(); - - AreaCurrencyDTO currencyDto = areaCurrencyMap.get(cuMemberTrade.getPkAccount()); - // 用于更新账户余额 - BigDecimal oriTradeMoney = ReflectUtils.invokeGetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue()); - ReflectUtils.invokeSetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue(), ComputeUtil.computeAdd(oriTradeMoney, tradeMoney)); - } - } - - // 获取需要扣除币种金额 - R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); - if (!resultR.isSuccess()) { - log.error("调换货物校验余额是否足够失败: {}", resultR.getMsg()); - return "调换货物校验余额是否足够失败"; - } - CuMemberAccountExt cuMemberAccountExt = resultR.getData(); - if (!cuMemberAccountExt.getIsPayment()) { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY); - } else { - return cuMemberAccountExt.getErrorMsg(); - } - } - return null; - } - @Transactional(rollbackFor = Exception.class) @Override public void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj) { if (null != saOrder && null != updateOrder) { // 撤销订单 - this.cancelOrderBackAccount(userId, saOrder, cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); + this.cancelOrderBackAccount(userId, saOrder, iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); // 查询会员当前余额 CuMemberAccount cuMemberAccount = new CuMemberAccount(); cuMemberAccount.setPkCountry(saOrder.getPkCountry()); cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); + CuMemberAccountExt tmpCuMemberAccount = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); // 获取需要扣除各币种金额 R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); @@ -1113,129 +1056,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } } - @Transactional(rollbackFor = Exception.class) - @Override - public void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - // 当前时间 - Date nowDate = new Date(); - // 订单编号 - String orderCode = saOrder.getOrderCode(); - // 订单购买人 - Long pkMember = saOrder.getPkCreator(); - // 订单所属国 - Integer pkCountry = saOrder.getPkCountry(); - - // 更新账户余额 - CuMemberAccount updateMemberAccount = new CuMemberAccount(); - updateMemberAccount.setPkMember(pkMember); - updateMemberAccount.setPkCountry(pkCountry); - // 红冲交易明细数据 - List saveMemberTradeList = new ArrayList<>(); - - // 查询订单创建人账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); - // 订单所属专区扣币的第一位配置 - AreaCurrencyDTO areaCurrencyDTO = iAreaCurrencyServiceApi.queryAreaCurrencyByCondition(saOrder.getOrderType(), pkCountry).getData().get(0); - // 专区扣币的第一位配置所用字段 - String accountField = MemberFieldConstants.ACCOUNT + areaCurrencyDTO.getFieldValue(); - - if (EOrderPayType.WALLET.getValue() == saOrder.getPayType()) { - // 钱包支付 - // 查询之前订单的支付明细 - List memberTradeList = cuMemberTradeService.querySourceCodeLastTrade(pkMember, orderCode, null); - - // 获取所有账户配置ID - List pkAccountList = memberTradeList.stream().map(CuMemberTrade::getPkAccount).collect(Collectors.toList()); - // 账户对应账户配置map - Map accountMap = iAccountServiceApi.getAccountMap(pkAccountList).getData(); - - // 根据之前交易明细,生成红冲交易数据 - for (CuMemberTrade cuMemberTrade : memberTradeList) { - // 账户取值所用字段 - String field = MemberFieldConstants.ACCOUNT + accountMap.get(cuMemberTrade.getPkAccount()).getFieldValue(); - // 交易金额 - BigDecimal tradeAmount = cuMemberTrade.getTradeAmount().negate(); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, field); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装红冲交易明细 - saveMemberTradeList.add(this.createMemberTradeByTrade(cuMemberTrade, ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, field, tradeBalance); - // 设置更新账户变动余额 - ReflectUtils.invokeSetter(updateMemberAccount, field, tradeAmount); - } - } else { - // 在线支付 - // 交易金额(订单金额 + 邮费) - BigDecimal tradeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, accountField, tradeBalance); - // 设置更新账户余额 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, tradeAmount); - } - - if (null != changeAmount && changeAmount.compareTo(BigDecimal.ZERO) != 0) { - // 存在退返金额 并且不为0,则进行处理,退回给订单所属专区扣币第一位配置 - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.ORDER_REFUND_ADJUST, ETradeClassify.REFUND, tradeBeforeBalance, changeAmount, changeRemark, userId)); - - // 变动前账户 - BigDecimal changeBeforeAccount = ReflectUtils.invokeGetter(updateMemberAccount, accountField); - if (null == changeBeforeAccount) { - // 如果为空,直接赋值 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeAmount); - } else { - // 如果不为空,进行累加 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeBeforeAccount.add(changeAmount)); - } - } - - // 批量插入会员明细 - cuMemberTradeService.batchSaveTradeByMemberCode(saveMemberTradeList); - - // 奖金账户有变化,需要同步处理 可提现奖金账户 - BigDecimal bonusBigDecimal = ReflectUtils.invokeGetter(updateMemberAccount, MemberFieldConstants.ACCOUNT + 4); - if (null != bonusBigDecimal && bonusBigDecimal.compareTo(BigDecimal.ZERO) != 0) { - // 奖金账户变化不为空,则需要同步处理 奖金可提现账户 - ReflectUtils.invokeSetter(updateMemberAccount, MemberFieldConstants.WITHDRAW_ACCOUNT + 4, bonusBigDecimal); - } - // 更新会员余额 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); - - // 更新创建人账号(根据订单类型不同,进行处理) - switch (EOrderType.getEnumByValue(saOrder.getOrderType())) { - case REGISTER_ORDER: - // 注册类订单,需要更新用户为已注销状态 - LambdaUpdateWrapper memberUpdateWrapper = new LambdaUpdateWrapper<>(); - memberUpdateWrapper.eq(CuMember::getPkId, saOrder.getPkMember()); - memberUpdateWrapper.set(CuMember::getPkModified, userId); - memberUpdateWrapper.set(CuMember::getModifiedTime, nowDate); - memberUpdateWrapper.set(CuMember::getCategory, ECategory.LOGGED_OUT.getValue()); - cuMemberService.update(memberUpdateWrapper); - // 添加会员信息修改记录 - CuMemberChangeLog cuMemberChangeLog = new CuMemberChangeLog(); - cuMemberChangeLog.setPkMember(saOrder.getPkMember()); - cuMemberChangeLog.setChangeType(EMemberChangeType.ORDER_RETURN.getValue()); - cuMemberChangeLog.setChangeAfter(ECategory.LOGGED_OUT.getLabel()); - cuMemberChangeLogService.save(cuMemberChangeLog); - } - } - @Transactional(rollbackFor = Exception.class) @Override public void orderReturnMember(List pkMemberList, Long userId) { @@ -1342,7 +1162,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { Date nowDate = new Date(); // 会员账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount cuMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 会员更新账户 CuMemberAccount updateMemberAccount = new CuMemberAccount(); updateMemberAccount.setPkMember(pkMember); @@ -1371,7 +1191,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 保存会员交易明细 cuMemberTradeService.save(cuMemberTrade); // 更新会员账户 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); + iCuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); return null; } @@ -1395,7 +1215,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); // 保存会员注册信息 CuMemberRegister cuMemberRegister = BeanUtil.copyProperties(cuMember, CuMemberRegister.class); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index 002e2a6c..d2dc5e91 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -27,15 +27,6 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRegister::getPkMember, pkMember); - queryWrapper.orderByAsc(CuMemberRegister::getPayTime); - List cuMemberRegisters = baseMapper.selectList(queryWrapper); - return cuMemberRegisters.get(0); - } - @Override public void updateCuMemberRegister(CuMemberRegister cuMemberRegister) { baseMapper.updateCuMemberRegister(cuMemberRegister); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 6374a91a..38f59014 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -140,21 +140,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return save; } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMember::getPkParent, pkReference); - queryWrapper.eq(CuMember::getCategory, ECategory.NORMAL.getValue()); - queryWrapper.eq(CuMember::getPayStatus, EPayStatus.PAID.getValue()); - List customerList = new ArrayList<>(); - customerList.add(ECustomerType.NORMAL.getValue()); - customerList.add(ECustomerType.EMPTY_ORDER.getValue()); - customerList.add(ECustomerType.FANS.getValue()); - queryWrapper.in(CuMember::getCustomerType, customerList); - Integer count = baseMapper.selectCount(queryWrapper); - return count == null ? 0 : count; - } - @Override public CuMemberExt getMemberById(Long memberId) { return baseMapper.queryLoginMember(null, memberId); @@ -2461,11 +2446,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.selectRegList(marketNewsParam); } - @Override - public int checkParent(String topCode, Long pkMember) { - return baseMapper.checkParent(topCode, pkMember); - } - @Override public Map checkMemberCodeExist(Collection codeList, Boolean checkEmpty, Long excludeMemberEmpty) { Map resultMap = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java index 33371947..ed3b1eea 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java @@ -1,40 +1,15 @@ package com.hzs.member.base.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.member.base.mapper.CuMemberShareMapper; import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import org.springframework.stereotype.Service; -import java.util.List; - /** * 分享注册记录会员 服务实现类 - * - * @author hzs - * @since 2023-03-15 */ @Service public class CuMemberShareServiceImpl extends ServiceImpl implements ICuMemberShareService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - @Override - public List seaFlourList(SeaFlourParam seaFlourParam) { - return baseMapper.seaFlourList(seaFlourParam); - } - - @Override - public CuMemberShare queryCuMemberShare(Long pkMember) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("PK_ID,MEMBER_CODE,MEMBER_NAME,PHONE,PK_PARENT"); - return baseMapper.selectById(pkMember); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java index f0d1d24f..c5e4c3e5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; /** - *

* 会员奖金-直推历史轮次记录 Mapper 接口 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface CuMemberBonusPushHisMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java index 67dea457..46d4d53c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java @@ -2,32 +2,10 @@ package com.hzs.member.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** - *

* 会员奖金-直推收益明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface CuMemberBonusPushMapper extends BaseMapper { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(@Param("pkMember") Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java index 35dd9eb3..5c75b534 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java @@ -3,23 +3,9 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务类 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface ICuMemberBonusPushHisService extends IService { - /* - * @description: 查询会员历史推荐 - * @author: sui q - * @date: 2023/9/10 14:23 - * @param: null null - **/ - List queryCuMemberBonusPushHis(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java index b915c039..52a03351 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java @@ -1,36 +1,10 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; -import java.util.Set; /** - *

* 会员奖金-直推收益明细表 服务类 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface ICuMemberBonusPushService extends IService { - - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java index 66e55b27..0acb3e7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java @@ -1,32 +1,15 @@ package com.hzs.member.bonus.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; import com.hzs.member.bonus.mapper.CuMemberBonusPushHisMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务实现类 - *

- * - * @author hzs - * @since 2023-09-10 */ @Service public class CuMemberBonusPushHisServiceImpl extends ServiceImpl implements ICuMemberBonusPushHisService { - @Override - public List queryCuMemberBonusPushHis(Long pkMember) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("(round+1) round,second,cal_achieve"); - queryWrapper.eq(MemberFieldConstants.PK_MEMBER, pkMember); - queryWrapper.orderByDesc("round,second"); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java index 7b335116..23194c45 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java @@ -2,45 +2,14 @@ package com.hzs.member.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.member.bonus.mapper.CuMemberBonusPushMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushService; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** - *

* 会员奖金-直推收益明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-11-10 */ @Service public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusPushService { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - @Override - public List tripleCycleList(TripleCycleListParam tripleCycleListParam) { - return baseMapper.tripleCycleList(tripleCycleListParam); - } - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - @Override - public CuMemberBonusPush nextRound(Long pkMember) { - return baseMapper.nextRound(pkMember); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java index d44bb3d0..1261a153 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java @@ -37,13 +37,4 @@ public interface ICuMemberLevelService extends IService { */ int insertGradeBatch(List memberGradeList); - /** - * 获取会员升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID -- 可为空 - * @return - */ - List listMemberLevel(Long pkMember, Long pkOrder); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java index e2507504..6ece88f0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java @@ -1,7 +1,6 @@ package com.hzs.member.detail.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.detail.CuMemberGrade; @@ -39,13 +38,4 @@ public class CuMemberLevelServiceImpl extends ServiceImpl listMemberLevel(Long pkMember, Long pkOrder) { - return this.list(Wrappers.lambdaQuery() - .eq(CuMemberLevel::getPkMember, pkMember) - .eq(null != pkOrder, CuMemberLevel::getPkOrder, pkOrder) - .orderByAsc(CuMemberLevel::getUpgradeTime) - ); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java index a3181c2c..ec87797f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java @@ -1,31 +1,15 @@ package com.hzs.member.marketnews.controller.api; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateUtil; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.enums.EPlaceDept; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; -import com.hzs.member.bonus.service.ICuMemberBonusPushService; import com.hzs.member.marketnews.param.MarketNewsParam; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; @@ -37,33 +21,14 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.math.BigDecimal; import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.function.Function; -import java.util.stream.Collectors; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/13 16:38 - * @Classname: MarketNewsController - * @PackageName: com.hzs.member.marketNews.controller.api - */ @RestController @RequestMapping("/api/market-news") public class MarketNewsController extends BaseController { - @Autowired - private ITransactionCommonService iTransactionCommonService; - @Autowired - private ICuMemberShareService memberShareService; + @Autowired private ICuMemberService memberService; - @Autowired - private ICuMemberBonusPushService memberBonusPushService; - @Autowired - private ICuMemberBonusPushHisService cuMemberBonusPushHisService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -75,7 +40,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("bidding-list") + @GetMapping("/bidding-list") public TableDataInfo biddingList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); R> gradeDate = gradeServiceApi.queryGradeList(pkCountry); @@ -114,7 +79,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("reg-list") + @GetMapping("/reg-list") public TableDataInfo regList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); marketNewsParam.setPkCountry(pkCountry); @@ -164,124 +129,4 @@ public class MarketNewsController extends BaseController { return getDataTable(list); } - /** - * 海粉列表 - */ - @GetMapping("sea_flour_list") - public TableDataInfo seaFlourList(SeaFlourParam seaFlourParam) { - seaFlourParam.setPkMember(SecurityUtils.getUserId()); - if (seaFlourParam.getStartCreationTime() != null) { - seaFlourParam.setStartCreationTime(DateUtil.beginOfDay(seaFlourParam.getStartCreationTime())); - } - if (seaFlourParam.getEndCreationTime() != null) { - seaFlourParam.setEndCreationTime(DateUtil.endOfDay(seaFlourParam.getEndCreationTime())); - } - startPage(); - List memberList = memberShareService.seaFlourList(seaFlourParam); - if (CollectionUtil.isNotEmpty(memberList)) { - for (SeaFlourVo seaFlourVo : memberList) { - seaFlourVo.setMemberCode(seaFlourVo.getMemberCode()); - seaFlourVo.setMemberName(seaFlourVo.getMemberName()); - } - } - return getDataTable(memberList); - } - - /** - * 轮次历史业绩 - */ - @GetMapping("/round-his") - public TableDataInfo seaFlourList() { - List cuMemberBonusPushHis = cuMemberBonusPushHisService.queryCuMemberBonusPushHis(SecurityUtils.getUserId()); - if (Objects.equals(CountryConstants.CHINA_COUNTRY, SecurityUtils.getPkCountry())) { - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()).getData(); - cuMemberBonusPushHis.forEach(bonusPushHis -> - bonusPushHis.setCalAchieve(ComputeUtil.computeMultiply(bonusPushHis.getCalAchieve(), currencyDTO.getInExchangeRate()))); - } - return getDataTable(cuMemberBonusPushHis); - } - - /** - * 三单循环列表 - */ - @GetMapping("triple_cycle_list") - public TableDataInfo tripleCycleList(TripleCycleListParam tripleCycleListParam) { - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - // 汇率比例 - BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); - R> gradeDto = gradeServiceApi.findAll(); - List gradeDate = gradeDto.getData(); - tripleCycleListParam.setPkMember(SecurityUtils.getUserId()); - startPage(); - if (tripleCycleListParam.getStartCreationTime() != null) { - tripleCycleListParam.setStartCreationTime(DateUtil.beginOfDay(tripleCycleListParam.getStartCreationTime())); - } - if (tripleCycleListParam.getEndCreationTime() != null) { - tripleCycleListParam.setEndCreationTime(DateUtil.endOfDay(tripleCycleListParam.getEndCreationTime())); - } - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EOrderType.values()); - Map transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE); - //查询所有汇率 - R> currencyDTOList = currencyServiceApi.findAll(); - Map currencyMap = currencyDTOList.getData().stream().collect(Collectors.toMap(CurrencyDTO::getPkCountry, Function.identity())); - // 禅道bug 8461 会员端,招商列表下的【三单循环】历史轮次需要显示已退单的会员数据 需要展示已删除的会员信息 - List list = memberBonusPushService.tripleCycleList(tripleCycleListParam); - for (CuMemberBonusPushExt cuMemberBonusPush : list) { - - cuMemberBonusPush.setMemberCode(cuMemberBonusPush.getMemberCode()); - cuMemberBonusPush.setMemberName(cuMemberBonusPush.getMemberName()); - - for (GradeDTO gradeDTO : gradeDate) { - // 注册等级 - if (cuMemberBonusPush.getPkRegisterGrade() != null) { - if (cuMemberBonusPush.getPkRegisterGrade().equals(gradeDTO.getPkId())) { - cuMemberBonusPush.setPkRegisterGradeStr(transactionMap1.get(gradeDTO.getPkTransaction())); - } - } - } - if (cuMemberBonusPush.getOrderType() != null) { - cuMemberBonusPush.setOrderTypeStr(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + cuMemberBonusPush.getOrderType())); - } - if (cuMemberBonusPush.getOrderAchieve() == null) { - cuMemberBonusPush.setOrderAchieve(BigDecimal.ZERO); - } - cuMemberBonusPush.setOrderAchieve(cuMemberBonusPush.getOrderAchieve().multiply(inExchangeRate)); - cuMemberBonusPush.setCreationTime(cuMemberBonusPush.getMemberPayTime()); - - // 跨国报单 汇率转换 - Long pkCreator = cuMemberBonusPush.getPkCreator(); - CuMember member = memberService.getMember(pkCreator); - if (!member.getPkSettleCountry().equals(cuMemberBonusPush.getPkCountry())) { - // 会员结算国是中国 并且会员结算国和订单下单国家不一致 - CurrencyDTO thisCurrency = currencyMap.get(member.getPkSettleCountry()); - CurrencyDTO settleCurrency = currencyMap.get(cuMemberBonusPush.getPkCountry()); - cuMemberBonusPush.setOrderAmount(cuMemberBonusPush.getOrderAmount().divide(settleCurrency.getInExchangeRate(), 2, BigDecimal.ROUND_HALF_UP).multiply(thisCurrency.getInExchangeRate())); - } - - } - return getDataTable(list); - } - - /** - * 三单循环获取下一轮次 - */ - @GetMapping("next-round") - public AjaxResult nextRound() { - // Integer pkCountry = SecurityUtils.getPkCountry(); - Long pkMember = SecurityUtils.getUserId(); - CuMemberBonusPush memberBonusPush = memberBonusPushService.nextRound(pkMember); - if (memberBonusPush == null || memberBonusPush.getRound() == null || memberBonusPush.getSecond() == null) { - memberBonusPush.setSecond(1); - memberBonusPush.setRound(1); - } - if (memberBonusPush.getSecond() == 3) { - // 三单循环第三轮 - memberBonusPush.setSecond(1); - memberBonusPush.setRound(memberBonusPush.getRound() + 1); - } else { - memberBonusPush.setSecond(memberBonusPush.getSecond() + 1); - } - return AjaxResult.success(memberBonusPush); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java index 4ba65ec0..92f4acd4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java @@ -5,13 +5,6 @@ import lombok.Data; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 11:43 - * @Classname: MarketNewsParam - * @PackageName: com.hzs.member.marketNews.param - */ @Data public class MarketNewsParam { /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java deleted file mode 100644 index 865034cd..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:36 - * @Classname: seaFlourParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-06 17:36 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourParam { - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - - /** - * 会员信息 - */ - private String memberInfo; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java deleted file mode 100644 index 69cbbbeb..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/7 14:43 - * @Classname: TripleCycleListParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-07 14:43 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class TripleCycleListParam { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - /** - * 查询会员信息 - */ - private String memberInfo; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java deleted file mode 100644 index 5cff138f..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.hzs.member.marketnews.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:38 - * @Classname: SeaFlourVo - * @PackageName: com.hzs.member.marketnews.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.vo - *@Author: yh - *@CreateTime: 2023-06-06 17:38 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourVo { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员名称 - */ - private String memberName; - - /** - * 会员手机 - */ - private String phone; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 所属体系 - */ - private Long pkVertex; - - /** - * 服务编号 - */ - private String serviceCode; - - /** - * 会员昵称 - */ - private String nickName; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java index 44eb9d7d..14de2184 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java @@ -8,13 +8,6 @@ import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 10:44 - * @Classname: UserInvestmentVo - * @PackageName: com.hzs.member.marketNews.vo - */ @Data public class UserInvestmentVo { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java index 24ee9d32..58aa87c5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java @@ -7,12 +7,7 @@ import java.util.Date; import java.util.List; /** - * @description: 甩网配置 - * @author: sui q - * @time: 2023/8/30 11:12 - * @classname: CuMemberSwingNetVO - * @package_name: com.hzs.member.swing.param - * version 1.0.0 + * 甩网配置 */ @Data public class CuMemberSwingNetParam implements Serializable { diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml index 1e17c534..f95b1c39 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml @@ -31,15 +31,15 @@ m.member_name as memberName, v.VERTEX_NAME as vertexName, c.TEAM_NAME as teamName - from cu_member_trade t - left join cu_member m - on t.pk_member = m.pk_id - left join cu_member_team c - ON c.pk_id = m.pk_team_code - and c.del_flag = 0 - left join bd_vertex v - on v.pk_id = m.PK_VERTEX - and v.del_flag = 0 + from cu_member_trade t + left join cu_member m + on t.pk_member = m.pk_id + left join cu_member_team c + ON c.pk_id = m.pk_team_code + and c.del_flag = 0 + left join bd_vertex v + on v.pk_id = m.PK_VERTEX + and v.del_flag = 0
@@ -112,24 +112,14 @@ order by t.creation_time Desc,t.PK_ID Desc - - - @@ -160,20 +150,20 @@ - select distinct t.trade_type - from cu_member_trade t + select distinct t.trade_type + from cu_member_trade t where t.del_flag = 0 - and t.pk_country =#{pkCountry} - and t.pk_member= #{pkMember} + and t.pk_country = #{pkCountry} + and t.pk_member = #{pkMember} order by t.trade_type @@ -232,69 +222,16 @@ #{item} - - merge into cu_member_trade a - using ( - select m.pk_id, m.pk_member, m.trade_code, m.pk_account, m.trade_type,m.trade_classify, m.pk_rate, m.trade_amount, - (case when ba.field_value=4 then ca.account4 + m.trade_amount when ba.field_value=5 then ca.account5 + m.trade_amount - when ba.field_value=8 then ca.account8 + m.trade_amount when ba.field_value=9 then ca.account9 + m.trade_amount - else ca.account10 + m.trade_amount end) trade_balance, - (case when ba.field_value=4 then ca.account4 when ba.field_value=5 then ca.account5 when ba.field_value=8 then ca.account8 - when ba.field_value=9 then ca.account9 else ca.account10 end) trade_before_balance, - m.source_code, m.trade_statue, m.remarks, m.pk_country, m.creation_time, m.pk_creator from( - - select #{item.pkId} pk_id,#{item.tradeCode} trade_code, #{item.tradeClassify} trade_classify, - #{item.pkMember} pk_member,#{item.pkAccount} pk_account,#{item.pkRate} pk_rate,#{item.tradeAmount} trade_amount, - #{item.sourceCode} source_code,#{item.tradeStatue} trade_statue,#{item.remarks} remarks, - #{item.tradeType} trade_type,#{item.pkCountry} pk_country,#{item.pkCreator} pk_creator, - #{item.creationTime} creation_time from dual - ) m - inner join cu_member_account ca - on m.pk_member = ca.pk_member - inner join bd_account ba - on ba.pk_id = m.pk_account - ) b - on (a.pk_id = b.pk_id) - when not matched then - insert (pk_id, pk_member, trade_code, pk_account, trade_type, - trade_classify, pk_rate, trade_amount, trade_balance,trade_before_balance, - source_code, trade_statue, remarks, pk_country, creation_time, pk_creator) - values(b.pk_id,b.pk_member,b.trade_code,b.pk_account,b.trade_type, - b.trade_classify,b.pk_rate,b.trade_amount,b.trade_balance,b.trade_before_balance, - b.source_code,b.trade_statue,b.remarks,b.pk_country,b.creation_time,b.pk_creator) - - - select * - from cu_member_trade cmt - where cmt.pk_id in - (select max(pk_id) - from cu_member_trade cmt - where cmt.del_flag = 0 - and cmt.pk_member = #{pkMember} - and cmt.source_code = #{sourceCode} - - and cmt.trade_classify = #{tradeClassify} - - group by cmt.trade_classify, cmt.pk_account) + from cu_member_trade t + left join bd_account a + on t.pk_account = a.pk_id + and a.del_flag = 0 + where t.del_flag = 0 + and a.field_value = 4 + and t.source_code = #{sourceCode} - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml index 514ef1cf..322c218f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml @@ -4,24 +4,24 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - - - - select ms.MEMBER_CODE memberCode,ms.MEMBER_NAME memberName,ms.PHONE phone,ms.CREATION_TIME creationTime, - ms.pk_vertex, - ms.service_code, - ms.nick_name - from CU_MEMBER ms - inner join bd_grade bg - on ms.pk_settle_grade = bg.pk_id - where 1= 1 and bg.grade_value= 20 - and - ( - (select count(so.PK_ID) from sa_order so where so.PK_CREATOR = ms.pk_id and so.del_flag = 0 and so.ORDER_STATUS = 1) = 0 - ) - - and ms.PK_PARENT = #{pkMember} - - - and (ms.MEMBER_NAME=#{memberInfo} or ms.MEMBER_CODE=#{memberInfo}) - - - and (ms.member_code = #{memberCode} or ms.SERVICE_CODE = #{memberCode}) - - - and (ms.member_name = #{memberName} or ms.NICK_NAME = #{memberName}) - - - and ms.CREATION_TIME >= #{startCreationTime} - - - and ms.CREATION_TIME < #{endCreationTime} - - order by ms.CREATION_TIME desc - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml index 883f8907..d179b3ca 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml @@ -2,19 +2,5 @@ - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml index 58bf949a..d703ffa5 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml @@ -2,127 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java index 4746444b..c92099ba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java @@ -10,9 +10,6 @@ import java.util.List; /** * 活动基本配置表 Mapper 接口 - * - * @author hzs - * @since 2023-04-20 */ public interface AcBaseConfigMapper extends BaseMapper { @@ -25,27 +22,8 @@ public interface AcBaseConfigMapper extends BaseMapper { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 */ List queryBaseConfigList(@Param("pkCountry") Integer pkCountry, @Param("pkMember") Long pkMember); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(@Param("actType") Integer actType, - @Param("pkCountry") Integer pkCountry, - @Param("systemType") Integer systemType, - @Param("startDate") String startDate, - @Param("endDate") String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java index 4aad5946..9769521e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java @@ -7,18 +7,12 @@ import com.hzs.activity.draw.service.IAcDrawRewardNumService; import com.hzs.activity.dto.AcRecommendUpgradeDTO; import com.hzs.activity.recommend.dto.AcRecommendUpgrade; import com.hzs.activity.recommend.service.IAcRepurCouponsRuleConfigService; -import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; -import java.util.List; - /** * 所有活动的生效,获得赠品入口 */ @@ -27,11 +21,9 @@ import java.util.List; public class ActivityServiceProvider implements IActivityServiceApi { @Autowired - private IAcDrawRewardNumService acDrawRewardNumService; + private IAcDrawRewardNumService iAcDrawRewardNumService; @Autowired - private IAcRepurCouponsRuleConfigService acRepurCouponsRuleConfigService; - @Autowired - private IAcRepurSharRuleConfigService acRepurSharRuleConfigService; + private IAcRepurCouponsRuleConfigService iAcRepurCouponsRuleConfigService; @Autowired private IActivityService iActivityService; @@ -47,31 +39,16 @@ public class ActivityServiceProvider implements IActivityServiceApi { @Override public R backGiveMemberDrawNum(SaOrderExt saOrderExt) { try { - return R.ok(acDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); + return R.ok(iAcDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); } catch (Exception e) { return R.fail(); } } - @Override - public R> queryAcRepurchaseCouponsRule(Date settleDate) { - List acRepurCouponsRuleConfigList = acRepurCouponsRuleConfigService.queryAcRepurchaseCouponsRule(settleDate); - if (acRepurCouponsRuleConfigList != null && acRepurCouponsRuleConfigList.size() > 0) { - return R.ok(acRepurCouponsRuleConfigList); - } else { - return R.fail(); - } - } - - @Override - public R> queryRepurSharRuleConfig(Date startDate, Date endDate) { - return R.ok(acRepurSharRuleConfigService.queryRepurSharRuleConfig(startDate, endDate)); - } - @Override public R invokeRecommendUpgrade(AcRecommendUpgradeDTO recommendUpgradeDTO) { try { - return R.ok(acRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); + return R.ok(iAcRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); } catch (Exception e) { return R.fail(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java index 91b05330..a3132aeb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java @@ -9,9 +9,6 @@ import java.util.List; /** * 活动基本配置表 服务类 - * - * @author hzs - * @since 2023-04-20 */ public interface IAcBaseConfigService extends IService { @@ -24,26 +21,17 @@ public interface IAcBaseConfigService extends IService { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 **/ List queryBaseConfigList(Integer pkCountry, Long pkMember); /* - * @description: 查询订单详情 - * @author: sui q - * @date: 2023/6/21 10:41 - * @param: null null + * 查询订单详情 **/ AcBaseConfigExt queryBaseConfigDetail(Long pkId, Integer pkCountry); /** - * @description: 根据主键查询活动配置 - * @author: sui q - * @date: 2023/4/27 14:05 - * @param: null null + * 根据主键查询活动配置 **/ AcBaseConfig queryBaseConfigById(Long pkBaseId); @@ -56,16 +44,4 @@ public interface IAcBaseConfigService extends IService { */ Boolean deleteBaseConfigById(Long pkBaseId, Long pkModifyId); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java index 3ec57ec0..39f92032 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java @@ -17,9 +17,6 @@ import java.util.List; /** * 活动基本配置表 服务实现类 - * - * @author hzs - * @since 2023-04-20 */ @Service public class AcBaseConfigServiceImpl extends ServiceImpl implements IAcBaseConfigService { @@ -58,9 +55,4 @@ public class AcBaseConfigServiceImpl extends ServiceImpl listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate) { - return baseMapper.listProgressList(actType, pkCountry, systemType, startDate, endDate); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java index 53b3ecbc..f8f74c0f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java @@ -2,39 +2,10 @@ package com.hzs.activity.pick.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员提货赠送活动日志表 Mapper 接口 - * - * @author zhangjing - * @since 2025-01-15 */ public interface AcRetailPickLogMapper extends BaseMapper { - /** - * 批量插入提货日志 - * - * @param pkBaseId 活动ID - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param pkWaresList 活动商品ID列表 - * @param waresQuantity 购买商品数量 - * @param giftQuantity 赠送商品数量 - * @param createDate 创建时间 - * @param systemType 系统类型 - * @return - */ - int insertPickLog(@Param("pkBaseId") Long pkBaseId, - @Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("pkWaresList") List pkWaresList, - @Param("waresQuantity") Integer waresQuantity, - @Param("giftQuantity") Integer giftQuantity, - @Param("createDate") Date createDate, - @Param("systemType") Integer systemType); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java index ed3ec509..6f317a96 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java @@ -6,14 +6,10 @@ import com.hzs.common.domain.activity.pick.AcRetailPick; import com.hzs.common.domain.activity.pick.ext.AcRetailPickExt; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** * 新零售会员提货数量 Mapper 接口 - * - * @author hzs - * @since 2025-01-09 */ public interface AcRetailPickMapper extends BaseMapper { @@ -31,20 +27,10 @@ public interface AcRetailPickMapper extends BaseMapper { @Param("quantity") Integer quantity, @Param("pkModified") Long pkModified); - - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(@Param("pkBaseId") Long pkBaseId, @Param("nowDate") Date nowDate); - /** * 列表数据 * - * @param param 查询入参 + * @param param 查询入参 * @return */ List listData(@Param("param") AcRetailPickParam param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java index 5e375fe9..65fee8fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; /** - *

* 提货赠送活动商品配置 Mapper 接口 - *

- * - * @author hzs - * @since 2025-01-13 */ public interface AcRetailPickProductConfigMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java deleted file mode 100644 index af4a2660..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.activity.pick.provider; - -import com.hzs.activity.pick.IAcRetailPickLogServiceApi; -import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - - -/** - * @description: 会员提货赠送活动日志dubbo服务 - * @author: zhang jing - * @date: 2025/1/15 17:01 - * @param: - * @return: - **/ -@Slf4j -@DubboService -public class AcRetailPickLogServiceProvider implements IAcRetailPickLogServiceApi { - - - @Autowired - private IAcRetailPickLogService iAcRetailPickLogService; - - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:12 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R deliveryLog() { - try { - iAcRetailPickLogService.deliveryLog(); - } catch (Exception e) { - log.error("添加会员提货赠送活动日志错误 error:", e); - return R.fail(); - } - return R.ok(); - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java index 53550e83..fa1f831b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java @@ -1,25 +1,11 @@ package com.hzs.activity.pick.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.pick.AcRetailPickLog; /** - *

* 会员提货赠送活动日志表 服务类 - *

- * - * @author zhangjing - * @since 2025-01-15 */ public interface IAcRetailPickLogService extends IService { - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:14 - * @param: [] - * @return: void - **/ - void deliveryLog(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java index 3ac349f7..fdf52e0d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java @@ -7,36 +7,21 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** * 提货赠送活动商品配置 服务类 - * - * @author hzs - * @since 2025-01-13 */ public interface IAcRetailPickProductConfigService extends IService { /** - * @description:会员消费赠送发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [memberConsumeRuleVo] - * @return: java.lang.Boolean + * 会员消费赠送发起签呈 **/ Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo); /** - * @description: 会员提货赠送活动审批 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [businessResult] - * @return: java.lang.String + * 会员提货赠送活动审批 **/ String approvalAgree(ApprovalBusinessResultDTO businessResult); /** - * @description: 新增提货赠送规格 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [mcrVo] - * @return: java.lang.Long + * 新增提货赠送规格 **/ Long saveGift(AcRetailPickProductConfigVO mcrVo); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java index 06bee372..bb7044ef 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java @@ -12,9 +12,6 @@ import java.util.List; /** * 新零售会员提货数量 服务类 - * - * @author hzs - * @since 2025-01-09 */ public interface IAcRetailPickService extends IService { @@ -37,15 +34,6 @@ public interface IAcRetailPickService extends IService { */ boolean cancelRetailPickOrder(Long pkOrder, Long userId); - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(Long pkBaseId, Date nowDate); - /** * 列表数据 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java index f1a66e29..466388ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java @@ -1,103 +1,17 @@ package com.hzs.activity.pick.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.pick.mapper.AcRetailPickLogMapper; import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.activity.pick.service.IAcRetailPickProductConfigService; -import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.enums.EActType; -import com.hzs.common.core.enums.ESystemType; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; /** * 会员提货赠送活动日志表 服务实现类 - * - * @author zhangjing - * @since 2025-01-15 */ @Service @Slf4j public class AcRetailPickLogServiceImpl extends ServiceImpl implements IAcRetailPickLogService { - @Autowired - private IAcBaseConfigService baseConfigService; - @Autowired - private IAcRetailPickProductConfigService iAcRetailPickProductConfigService; - @Autowired - private IAcRetailPickService iAcRetailPickService; - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/2/6 10:54 - * @param: [] - * @return: void - **/ - @Transactional(rollbackFor = Exception.class) - @Override - public void deliveryLog() { - Date now = new Date(); - // 获取上个月的第一天和最后一天 - Date lastMonthFirstDay = DateUtils.beforeMonthFirstDate(now); - Date lastMonthLastDay = DateUtils.beforeMonthLastDate(now); - - for (ESystemType eSystemType : ESystemType.getEnableList()) { - List configs = baseConfigService.listProgressList(EActType.PICK_GIFT.getValue(), CountryConstants.CHINA_COUNTRY, eSystemType.getValue(), - DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthFirstDay), DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthLastDay)); - if (CollectionUtil.isEmpty(configs)) { - log.info("没有进行中的提货赠送活动"); - return; - } - - for (AcBaseConfig config : configs) { - if (DateUtils.compareDate(lastMonthFirstDay, config.getActStartDate()) < 0) { - lastMonthFirstDay = config.getActStartDate(); - } - - if (DateUtils.compareDate(lastMonthLastDay, config.getActEndDate()) > 0) { - lastMonthLastDay = config.getActEndDate(); - } - if (DateUtils.compareDate(lastMonthFirstDay, lastMonthLastDay) > 0) { - log.info("不在活动时间范围内"); - return; - } - //查询赠送活动规则 - LambdaQueryWrapper productConfigWrapper = new LambdaQueryWrapper<>(); - productConfigWrapper.eq(AcRetailPickProductConfig::getPkBaseId, config.getPkId()); - List productConfigs = iAcRetailPickProductConfigService.list(productConfigWrapper); - - if (CollectionUtil.isNotEmpty(productConfigs)) { - List pkWaresList = productConfigs.stream().map(AcRetailPickProductConfig::getPkWares).collect(Collectors.toList()); - handleQualifiedOrders(productConfigs.get(0), lastMonthFirstDay, lastMonthLastDay, pkWaresList, eSystemType.getValue()); - } - } - } - } - - - //查询符合提货赠送活动的会员订单 - private void handleQualifiedOrders(AcRetailPickProductConfig productConfig, Date startDate, Date endDate, List pkWaresList, Integer systemType) { - Date nowDate = new Date(); - // 插入提货赠送日志 - baseMapper.insertPickLog(productConfig.getPkBaseId(), DateUtils.getStartTime(startDate), DateUtils.getEndTime(endDate), pkWaresList, productConfig.getWaresQuantity(), productConfig.getGiftQuantity(), nowDate, systemType); - // 批量更新提货数据 - iAcRetailPickService.handlePick(productConfig.getPkBaseId(), nowDate); - } - - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java index f5d4c4d1..2eab5152 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java @@ -35,29 +35,20 @@ import java.util.List; /** * 提货赠送活动商品配置 服务实现类 - * - * @author hzs - * @since 2025-01-13 */ @Service public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickProductConfigService { @Autowired private IActivityService iActivityService; - @DubboReference - IApprovalServiceApi approvalServiceApi; @Autowired private IAcApprovalLogService acApprovalLogService; @Autowired private IAcBaseConfigService baseConfigService; - /** - * @description: 会员提货赠送活动发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [rppcVo] - * @return: java.lang.Boolean - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @Override public Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo) { EApprovalBusiness approvalBusiness = null; @@ -78,13 +69,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl mcrList = mcrVo.getRppcList(); for (AcRetailPickProductConfigExt mcr : mcrList) { @@ -240,13 +190,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickService { @@ -79,11 +75,6 @@ public class AcRetailPickServiceImpl extends ServiceImpl listData(AcRetailPickParam param) { return baseMapper.listData(param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java index a8f4c18b..fdb74a95 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java @@ -1,27 +1,11 @@ package com.hzs.activity.recommend.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import java.util.Date; -import java.util.List; - /** - *

* 直推-复购券规则配置 Mapper 接口 - *

- * - * @author hzs - * @since 2023-04-22 */ public interface AcRepurCouponsRuleConfigMapper extends BaseMapper { - /* - * @description: 查询目前所有启用的复购券规则 - * @author: sui q - * @date: 2023/4/28 15:47 - * @param: null null - **/ - List queryAcRepurchaseCouponsRule(Date settleDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java index 9f0dbec0..29a7d05b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java @@ -2,37 +2,10 @@ package com.hzs.activity.recommend.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 Mapper 接口 - * - * @author hzs - * @since 2023-05-04 */ public interface AcRepurSharRuleConfigMapper extends BaseMapper { - /** - * 根据条件删除规则配置 - * - * @param orderTypeList 订单类型 - * @param activityId 活动ID - * @param pkModifyId 修改人ID - * @return - */ - Integer deleteSharRuleConfigByActivityId(@Param("orderTypeList") List orderTypeList, - @Param("activityId") Long activityId, @Param("pkModifyId") Long pkModifyId); - - /* - * @description: 查询复购券均分收益 - * @author: sui q - * @date: 2023/5/5 16:29 - * @param: null null - **/ - List queryRepurSharRuleConfig(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java index 94b4addb..b4f68589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java @@ -7,9 +7,6 @@ import com.hzs.activity.recommend.vo.AcRecommendVO; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.util.Date; -import java.util.List; - /** * 直推-复购券规则配置 服务类 */ @@ -66,11 +63,6 @@ public interface IAcRepurCouponsRuleConfigService extends IService queryAcRepurchaseCouponsRule(Date settleDate); - /** * 根据活动配置主键删除复购券规则配置 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java index 02657215..f43748c4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java @@ -2,16 +2,9 @@ package com.hzs.activity.recommend.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 服务类 - * - * @author hzs - * @since 2023-05-04 */ public interface IAcRepurSharRuleConfigService extends IService { @@ -33,12 +26,5 @@ public interface IAcRepurSharRuleConfigService extends IService queryRepurSharRuleConfig(Date startDate, Date endDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java index 0452af1c..9d844b08 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java @@ -57,9 +57,6 @@ import java.util.stream.Collectors; /** * 直推配置 服务实现类 - * - * @author hzs - * @since 2023-04-22 */ @Slf4j @Service @@ -102,21 +99,7 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl atcModuleList = recommendParam.getActivityParam().getAtcModuleList(); EApprovalBusiness approvalBusiness = EApprovalBusiness.DIRECT_PUSH_GIFT; -/* for (Integer atcModule : atcModuleList) { - switch (EActModule.getByValue(atcModule)) { - case REPURCHASE_COUPON: - approvalBusiness = EApprovalBusiness.REPURCHASE_COUPON; - break; - case DIRECT_PUSH_UPGRADE: - approvalBusiness = EApprovalBusiness.DIRECT_PUSH_UPGRADE; - break; - default: - approvalBusiness = EApprovalBusiness.REPURCHASE_SHAR; - break; - } - }*/ //根据产品ID查询产品名称 List recommendUpgradeList = recommendParam.getRecommendUpgradeList(); if (CollUtil.isNotEmpty(recommendUpgradeList)) { @@ -624,11 +607,6 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl queryAcRepurchaseCouponsRule(Date settleDate) { - return baseMapper.queryAcRepurchaseCouponsRule(settleDate); - } - /** * 处理业务(正常报单) * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java index b57380a3..f3ea53fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java @@ -7,17 +7,12 @@ import com.hzs.activity.recommend.mapper.AcRepurSharRuleConfigMapper; import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import org.springframework.stereotype.Service; import java.util.Date; -import java.util.List; /** * 复购均分配置 服务实现类 - * - * @author hzs - * @since 2023-05-04 */ @Service public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl implements IAcRepurSharRuleConfigService { @@ -39,8 +34,4 @@ public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl queryRepurSharRuleConfig(Date startDate, Date endDate) { - return baseMapper.queryRepurSharRuleConfig(startDate, endDate); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java index 23b18aaf..9faf6bfb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java @@ -146,14 +146,6 @@ public interface SaOrderItemsMapper extends BaseMapper { **/ List waresListByOrderId(@Param("orderIdList") List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(@Param("orderId") Long orderId); - /** * 根据订单明细ID查询订单明细列表 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java index 1e3b73ec..e8da7c05 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java @@ -33,16 +33,6 @@ public interface SaOrderMapper extends BaseMapper { **/ void updateSaOrderByMember(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); - - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - /** * 查询总销售金额 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java index 0dcf2b09..6748775d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java @@ -16,11 +16,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 销售订单-明细表 - * @Author: zhangjing - * @Time: 2023/11/16 20:06 - * @Classname: SaOrderItemsServiceProvider - * @PackageName: com.hzs.sale.order.provider + * 销售订单-明细表 */ @Slf4j @DubboService @@ -29,13 +25,6 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { @Autowired private ISaOrderItemsService iSaOrderItemsService; - /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/11/16 9:23 - * @param: [orderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> waresListByOrderId(List orderIdList) { List dtoList = new ArrayList<>(); @@ -46,34 +35,9 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { return R.ok(dtoList); } - @Override - public R> waresListByOrderId(Long orderId) { - List dtoList = new ArrayList<>(); - List list = iSaOrderItemsService.queryWaresListByOrderId(orderId); - if (CollectionUtil.isNotEmpty(list)) { - list.forEach(itm -> dtoList.add(BeanUtil.copyProperties(itm, WaresOrderDTO.class))); - } - return R.ok(dtoList); - } - - /** - * @description: 根据订单ID查询订单明细列表 - * @author: zhang jing - * @date: 2023/11/16 9:34 - * @param: [orderIdList, tOrderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> queryListByOrderId(List orderIdList, List tOrderIdList) { return R.ok(iSaOrderItemsService.queryListByOrderId(orderIdList)); } - @Override - public R orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry) { - if (iSaOrderItemsService.orderItemsReturn(orderItemsIdList, userId, pkCountry)) { - return R.ok(); - } - return R.fail(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index b3e21cac..b334c14e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -37,11 +37,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Autowired private ISaOrderService iSaOrderService; - @Override - public R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return R.ok(iSaOrderService.queryRetailSaOrderByDay(startDate, endDate, orderCode)); - } - @Override @Transactional(rollbackFor = Exception.class) public R regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index d92177ae..51d59ae8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -102,14 +102,6 @@ public interface ISaOrderItemsService extends IService { **/ List waresListByOrderId(List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(Long orderId); - /** * 根据订单明细ID查询订单明细列表 * @@ -178,16 +170,6 @@ public interface ISaOrderItemsService extends IService { */ int updateToPayByPkOrder(List pkOrderList, Integer pkCountry, Long userId); - /** - * 订单明细退货 - * - * @param orderItemsIdList 订单明细ID列表 - * @param userId 操作人ID - * @param pkCountry 所属国家(可为空) - * @return - */ - boolean orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry); - /** * 抵扣订单明细插入 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index c7610bbe..9372e005 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -129,14 +129,6 @@ public interface ISaOrderService extends IService { */ String registerEmptyOrder(OrderBlankRegParams orderBlankRegParams); - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /** * 获取系统参数 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 2840ac68..2a8acef8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -1,9 +1,6 @@ package com.hzs.sale.order.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -18,7 +15,6 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.vo.WaresOrderVo; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.*; @@ -78,11 +74,6 @@ public class SaOrderItemsServiceImpl extends ServiceImpl queryWaresListByOrderId(Long orderId) { - return baseMapper.queryWaresListByOrderId(orderId); - } - @Override public List queryListByItemId(List itemIdList, List statusList, Integer pkCountry) { return baseMapper.queryListByItemId(itemIdList, statusList, pkCountry); @@ -128,31 +119,6 @@ public class SaOrderItemsServiceImpl extends ServiceImpl orderItemsIdList, Long userId, Integer pkCountry) { - // 验证订单是否存在,存在回写,不存在说明已经撤单,不需要管; - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - List saOrderItemsList = baseMapper.selectList(queryWrapper); - if (saOrderItemsList == null || saOrderItemsList.size() == 0) { - return Boolean.TRUE; - } - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - // 订单状态不包含 待付款、已关闭 才能进行更新 - updateWrapper.notIn(SaOrderItems::getOrderStatus, EOrderStatus.WAIT_PAY.getValue(), EOrderStatus.CANCEL.getValue()); - if (null != pkCountry) { - updateWrapper.eq(SaOrderItems::getPkCountry, pkCountry); - } - updateWrapper.set(SaOrderItems::getOrderStatus, EOrderStatus.PAY.getValue()); - updateWrapper.set(SaOrderItems::getLogisticsCode, ""); - updateWrapper.set(SaOrderItems::getLogisticsCompany, ""); - updateWrapper.set(SaOrderItems::getPkModified, userId); - updateWrapper.set(SaOrderItems::getModifiedTime, new Date()); - return this.update(updateWrapper); - } - @Override public int copyDeductionItems(Long pkOrderOld, Long pkOrderNew, Long userId, Date nowDate) { return baseMapper.copyDeductionItems(pkOrderOld, pkOrderNew, userId, nowDate); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 804ec55d..551bc2a8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -816,11 +816,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - @Override - public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); - } - @Override public String querySystemConfigByKey(Integer pkCountry, String key) { return systemConfigServiceApi.getBonusSystemConfig(pkCountry, key).getData(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java index 2e22549f..951582e8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java @@ -13,11 +13,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 邮费服务API - * @Author: jiang chao - * @Time: 2023/4/25 14:41 - * @Classname: IPostageServiceProvider - * @PackageName: com.hzs.sale.postage.provider + * 邮费服务API */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java index 96e6b6ed..354777e3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java @@ -4,11 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.WaresMsgConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; @@ -20,9 +17,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdClassifyService; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.product.vo.ClassIfyVo; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,11 +27,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 规格分类controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdClassifyController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格分类controller */ @Slf4j @RestController @@ -44,24 +35,16 @@ import java.util.List; public class BdClassifyController extends BaseController { @Autowired - private RedisService redisService; + private IBdProductService iBdProductService; @Autowired - private IBdProductService productService; - @Autowired - private IBdClassifyService classifyService; - - @DubboReference - ITransactionServiceApi transactionServiceApi; + private IBdClassifyService iBdClassifyService; /** * 查询规格分类 - * - * @param classIfyVo - * @return */ @AccessPermissions("cpfl") @Log(module = EOperationModule.SPECIFICATIONS_CONFIG, business = EOperationBusiness.PRODUCT_CLASSIFY, method = EOperationMethod.SELECT) - @GetMapping("list") + @GetMapping("/list") public TableDataInfo list(ClassIfyVo classIfyVo) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classIfyVo.getName())) { @@ -72,92 +55,71 @@ public class BdClassifyController extends BaseController { } queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); startPage(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); return getDataTable(list); } /** * 生成规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_SAVE, method = EOperationMethod.INSERT) - @PostMapping("save") + @PostMapping("/save") public AjaxResult save(@RequestBody BdClassify classify) { - classify.setPkCreator(SecurityUtils.getUserId()); - classify.setCreationTime(new Date()); - classify.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, classify.getName(), EYesNo.NO, EYesNo.NO); - classify.setPkTransactionKey(transaction.getData()); LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); qw.eq(BdClassify::getName, classify.getName()); qw.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - int count = classifyService.count(qw); - if (count > 0) { + if (iBdClassifyService.count(qw) > 0) { return AjaxResult.error(WaresMsgConstants.CLASSIFICATION_DUPLICATION); } - return AjaxResult.success(classifyService.save(classify)); + + classify.setPkCreator(SecurityUtils.getUserId()); + classify.setCreationTime(new Date()); + classify.setPkCountry(SecurityUtils.getPkCountry()); + return AjaxResult.success(iBdClassifyService.save(classify)); } /** * 编辑规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE, method = EOperationMethod.UPDATE) - @PostMapping("update") + @PostMapping("/update") public AjaxResult update(@RequestBody BdClassify classify) { classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); classify.setPkCountry(SecurityUtils.getPkCountry()); - String redisKey = CacheConstants.BD_CLASSIFY + classify.getPkId(); - redisService.deleteObject(redisKey); - return AjaxResult.success(classifyService.updateById(classify)); + return AjaxResult.success(iBdClassifyService.updateById(classify)); } - /** * 删除规格分类 - * - * @param pkId - * @return */ @Log(module = EOperationModule.CLASSIFY_DELETE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Integer pkId) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(BdProduct::getPkClassify, pkId); + if (iBdProductService.count(qw) > 0) { + return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); + } + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdClassify::getPkId, pkId); updateWrapper.set(BdClassify::getModifiedTime, new Date()); updateWrapper.set(BdClassify::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdClassify::getDelFlag, EDelFlag.DELETE.getValue()); - - String redisKey = CacheConstants.BD_CLASSIFY + pkId; - redisService.deleteObject(redisKey); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(BdProduct::getPkClassify, pkId); - int count = productService.count(qw); - if (count > 0) { - return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); - } - return toAjax(classifyService.update(updateWrapper)); + return toAjax(iBdClassifyService.update(updateWrapper)); } /** * 查询规格分类详情 - * - * @param classifyId - * @return */ - @GetMapping("detail") + @GetMapping("/detail") public AjaxResult detail(Long classifyId) { - return AjaxResult.success(classifyService.getById(classifyId)); + return AjaxResult.success(iBdClassifyService.getById(classifyId)); } - /** * 修改规格分类状态 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE_ENABLE, method = EOperationMethod.UPDATE) @PostMapping("/updateEnable/{pkId}/{enable}") @@ -167,36 +129,30 @@ public class BdClassifyController extends BaseController { classify.setPkId(pkId); classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); - return toAjax(classifyService.updateById(classify)); + return toAjax(iBdClassifyService.updateById(classify)); } /** * 查询所有产品分类 - * - * @return */ - @GetMapping("find-all") + @GetMapping("/find-all") public AjaxResult findAll() { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - return AjaxResult.success(classifyService.list(queryWrapper)); + return AjaxResult.success(iBdClassifyService.list(queryWrapper)); } /** * 产品分类导出 - * - * @param response - * @param classify */ @PostMapping("/export") - public void export(HttpServletResponse response, - BdClassify classify) { + public void export(HttpServletResponse response, BdClassify classify) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classify.getName())) { queryWrapper.eq(BdClassify::getName, classify.getName()); } List resultList = new ArrayList<>(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); for (BdClassify bdClassify : list) { ClassIfyVo classIfyVo = new ClassIfyVo(); classIfyVo.setCreationTime(bdClassify.getCreationTime()); @@ -205,6 +161,6 @@ public class BdClassifyController extends BaseController { } ExcelUtil util = new ExcelUtil<>(ClassIfyVo.class); util.exportExcel(response, resultList, "分类导出"); - } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java index 478a7f1a..6fff4524 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java @@ -1,11 +1,8 @@ package com.hzs.sale.product.controller.manage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -13,144 +10,108 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.Arrays; import java.util.Date; import java.util.List; /** - * @Description: 规格controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdSpecsController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格controller */ @Slf4j @RestController @RequestMapping("/manage/specs") public class BdSpecsController extends BaseController { - @DubboReference - private ITransactionServiceApi transactionServiceApi; @Autowired - private IBdSpecsService specsService; - @Autowired - private RedisService redisService; - /** - * 查询规格列表 - * @return - */ - @GetMapping("list") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public TableDataInfo list(BdSpecs bdSpecs){ + private IBdSpecsService iBdSpecsService; - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (StringUtils.isNotBlank(bdSpecs.getSpecsName())){ - queryWrapper.eq("SPECS_NAME",bdSpecs.getSpecsName()); + /** + * 查询规格列表 + */ + @GetMapping("/list") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public TableDataInfo list(BdSpecs bdSpecs) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotBlank(bdSpecs.getSpecsName())) { + queryWrapper.eq(BdSpecs::getSpecsName, bdSpecs.getSpecsName()); } startPage(); - List list = specsService.list(queryWrapper); + List list = iBdSpecsService.list(queryWrapper); return getDataTable(list); } /** * 新增规格 - * @param bdSpecs - * @return */ - @PostMapping("save") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) - public AjaxResult save(@RequestBody BdSpecs bdSpecs){ + @PostMapping("/save") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) + public AjaxResult save(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkCreator(SecurityUtils.getUserId()); bdSpecs.setCreationTime(new Date()); bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO, EYesNo.NO); - bdSpecs.setPkTransactionKey(transaction.getData()); - specsService.save(bdSpecs); + iBdSpecsService.save(bdSpecs); return AjaxResult.success(); } /** * 修改规格 - * @param bdSpecs - * @return */ - @PostMapping("update") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult update(@RequestBody BdSpecs bdSpecs){ - BdSpecs specs = specsService.getById(bdSpecs.getPkId()); + @PostMapping("/update") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult update(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - String redisKey = CacheConstants.BD_SPECS + bdSpecs.getPkId(); - transactionServiceApi.updateTransaction(specs.getPkCountry(),bdSpecs.getSpecsName(),specs.getPkTransactionKey(),true); - redisService.deleteObject(redisKey); - specsService.updateById(bdSpecs); + iBdSpecsService.updateById(bdSpecs); return AjaxResult.success(); } /** * 删除规格 - * - * @param pkId - * @return */ @DeleteMapping("/{pkId}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) public AjaxResult delete(@PathVariable Integer pkId) { - BdSpecs sp = specsService.getById(pkId); BdSpecs specs = new BdSpecs(); specs.setPkId(pkId); specs.setDelFlag(EDelFlag.DELETE.getValue()); specs.setModifiedTime(new Date()); specs.setPkModified(SecurityUtils.getUserId()); - String redisKey = CacheConstants.BD_SPECS + pkId; - redisService.deleteObject(redisKey); - // 删除翻译 - transactionServiceApi.removeTransactionByPkId(Arrays.asList(sp.getPkTransactionKey().longValue())); - return toAjax(specsService.updateById(specs)); + return toAjax(iBdSpecsService.updateById(specs)); } /** * 查询规格详情 - * @param specsId - * @return */ - @GetMapping("detail") - public AjaxResult detail(Long specsId){ - return AjaxResult.success(specsService.getById(specsId)); + @GetMapping("/detail") + public AjaxResult detail(Long specsId) { + return AjaxResult.success(iBdSpecsService.getById(specsId)); } - /** * 修改规格状态 - * @return */ @PostMapping("/updateEnable/{pkId}/{enable}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult updateEnable(@PathVariable Integer pkId,@PathVariable Integer enable){ - BdSpecs bdSpecs= new BdSpecs(); + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult updateEnable(@PathVariable Integer pkId, @PathVariable Integer enable) { + BdSpecs bdSpecs = new BdSpecs(); bdSpecs.setEnableState(enable); bdSpecs.setPkId(pkId); bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - return toAjax(specsService.updateById(bdSpecs)); + return toAjax(iBdSpecsService.updateById(bdSpecs)); } - /** - * 查询规格列表 - * @return + * 查询规格列表 */ - @GetMapping("find-all") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public AjaxResult findAll(){ - List list = specsService.list(); + @GetMapping("/find-all") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public AjaxResult findAll() { + List list = iBdSpecsService.list(); return AjaxResult.success(list); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java index 79ec2e29..75d5035a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -9,18 +8,16 @@ import com.hzs.sale.product.vo.AreaClassifyVo; import java.util.List; /** - *

* 商品分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface BdAreaClassifyMapper extends BaseMapper { + /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java index c9520406..ce26806f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdClassify; /** - *

* 规格分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface BdClassifyMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java index ca64d1d3..3482dab2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java @@ -32,11 +32,6 @@ public interface BdProductMapper extends BaseMapper { */ List selectByQueryList(ProductParams productParams); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtBySpecsId(@Param("productSpecsList") List productSpecsList, @Param("pkCountry") Integer pkCountry); - /** * 查询带有规格的产品列表 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java index 999f1c6f..23a2ae13 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java @@ -3,14 +3,8 @@ package com.hzs.sale.product.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdSpecs; - /** - *

* 产品规格表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java index a0f36508..b767d1b6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java @@ -6,20 +6,17 @@ import com.hzs.sale.product.vo.SpecsTypeVo; import java.util.List; - /** - *

* 规格类型表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsTypeMapper extends BaseMapper { + /** * 查询列表 + * * @param specsType * @return */ List selectSpecsTypeList(BdSpecsType specsType); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java index ce80244b..57f3601e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java @@ -1,54 +1,26 @@ package com.hzs.sale.product.provider; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.hzs.common.core.constant.SystemFieldConstants; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.IProductServiceApi; -import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.dto.ProductDTO; -import com.hzs.sale.product.dto.ProductParamDTO; import com.hzs.sale.product.service.IBdProductService; -import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:56 - * @Classname: IProductServiceProvider - * @PackageName: com.hzs.sale.product.provider - */ @Slf4j @DubboService public class IProductServiceProvider implements IProductServiceApi { @Autowired - private IBdProductService productService; + private IBdProductService iBdProductService; - @Autowired - private IBdSpecsService specsService; - - /** - * 根据产品id 查询产品 - * - * @param productId - * @return - */ @Override public R getProduct(Integer productId) { - BdProduct product = productService.getProduct(productId); + BdProduct product = iBdProductService.getProduct(productId); if (product == null) { return R.fail("产品不存在"); } @@ -57,17 +29,11 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryProductDtoById(List productSpecsList, Integer pkCountry) { - List productExtList = productService.queryProductExtById(productSpecsList, pkCountry); - return R.ok(productExtList); - } - @Override public R getProduct(String productCode) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PRODUCT_CODE", productCode); - BdProduct product = productService.getOne(queryWrapper); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdProduct::getProductCode, productCode); + BdProduct product = iBdProductService.getOne(queryWrapper); if (product == null) { return R.fail("产品不存在"); } @@ -76,33 +42,4 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryBdSpecsByIdList(List idList) { - return R.ok(specsService.queryBdSpecsByIdList(idList)); - } - /** - * 产品新增 - * @param productParamDTO - * @return - */ - @Override - public R saveProduct(ProductParamDTO productParamDTO, LoginUser loginUser) { - ProductParams productParams = BeanUtil.copyProperties(productParamDTO, ProductParams.class); - return R.ok(productService.saveProduct(productParams,loginUser)); - } - - /** - * 根据产品主键修改所关联商品是下架/预售 - * @param productDTOList - * @return - */ - @Override - public R updateWaresPreSaleStatus(List productDTOList) { - List productList = productDTOList.stream().map(a -> { - BdProduct bdProduct = new BdProduct(); - bdProduct.setPkId(a.getProductId()); - return bdProduct; - }).collect(Collectors.toList()); - return R.ok(productService.updateWaresPreSaleStatus(productList)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java index ea4428cd..1cdffd24 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -10,17 +9,13 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; /** - *

* 商品分类 服务类 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface IBdAreaClassifyService extends IService { /** * 新增商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -28,6 +23,7 @@ public interface IBdAreaClassifyService extends IService { /** * 修改商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -35,6 +31,7 @@ public interface IBdAreaClassifyService extends IService { /** * 根据主键查询商品分类 + * * @param areaClassifyId * @return */ @@ -42,6 +39,7 @@ public interface IBdAreaClassifyService extends IService { /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ @@ -49,6 +47,7 @@ public interface IBdAreaClassifyService extends IService { /** * 删除 + * * @param pkId */ void deleteAreaClassify(Integer pkId); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java index a4d882ba..b9cff1d2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java @@ -3,22 +3,17 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdClassify; - /** - *

* 规格分类 服务类 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface IBdClassifyService extends IService { - /** * 根据id 查询详情 + * * @param classifyId * @return */ BdClassify getClassify(Integer classifyId); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java index 92136316..57bf6a4f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java @@ -3,7 +3,6 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.vo.ProductVo; @@ -26,11 +25,6 @@ public interface IBdProductService extends IService { */ BdProduct getProduct(Integer pkProduct); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtById(List productSpecsList, Integer pkCountry); - /** * 新增商品信息 * @@ -99,14 +93,6 @@ public interface IBdProductService extends IService { */ List queryProductExistSpecs(Integer pkCountry, Integer systemType); - /** - * 根据产品主键修改所关联商品是下架/预售 - * - * @param productList - * @return - */ - Boolean updateWaresPreSaleStatus(List productList); - /** * 供应商产品统计 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java index 5d380819..e47d27d6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java @@ -2,32 +2,23 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.classify.BdSpecsType; import java.util.List; - /** - *

* 产品规格表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsService extends IService { /** * 根据id查询产品规格表 + * * @param specsId */ BdSpecs getSpecs(Integer specsId); /* - * @description: 根据主键List查询规格 - * @author: sui q - * @date: 2023/11/30 15:18 - * @param: null null + * 根据主键List查询规格 **/ List queryBdSpecsByIdList(List idList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java index c98f7ad4..8409026c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java @@ -8,31 +8,28 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; - /** - *

* 规格类型表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsTypeService extends IService { /** * 根据id 查询规格分类 + * * @return */ BdSpecsType getSpecsType(Integer specsTypeId); /** * 新增规格分类 + * * @param specsTypeParam */ void saveSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser); /** * 修改规格分类 + * * @param specsTypeParam * @param loginUser */ @@ -40,6 +37,7 @@ public interface IBdSpecsTypeService extends IService { /** * 查询列表 + * * @param specsType * @return */ @@ -47,7 +45,8 @@ public interface IBdSpecsTypeService extends IService { /** * 删除 + * * @param pkId */ - void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser); + void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java index 093ce60e..7707b355 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java @@ -1,28 +1,19 @@ package com.hzs.sale.product.service.impl; - import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.common.domain.sale.product.BdAreaClassifySpecialArea; -import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; import com.hzs.sale.product.mapper.BdAreaClassifyMapper; import com.hzs.sale.product.service.IBdAreaClassifyService; import com.hzs.sale.product.service.IBdAreaClassifySpecialAreaService; import com.hzs.sale.product.vo.AreaClassifyVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,28 +23,16 @@ import java.util.Date; import java.util.List; /** - *

* 商品分类 服务实现类 - *

- * - * @author hzs - * @since 2022-09-05 */ @Service public class BdAreaClassifyServiceImpl extends ServiceImpl implements IBdAreaClassifyService { + @Autowired - private RedisService redisService; + private IBdAreaClassifyService iBdAreaClassifyService; @Autowired - private IBdAreaClassifyService areaClassifyService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; - @Autowired - private IBdAreaClassifySpecialAreaService areaClassifySpecialAreaService; - /** - * 新增商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 登录用户 - */ + private IBdAreaClassifySpecialAreaService iBdAreaClassifySpecialAreaService; + @Override @Transactional(rollbackFor = Exception.class) public void saveAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { @@ -61,11 +40,9 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(), EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.insert(areaClassify); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ + if (areaClassifyParam.getSpecialAreaList() != null) { for (Integer number : areaClassifyParam.getSpecialAreaList()) { BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); areaClassifySpecialArea.setSpecialArea(number); @@ -76,72 +53,42 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl 0){ - areaClassifySpecialAreaService.saveBatch(list); + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); } - } - /** - * 修改商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 当前登录用户 - */ @Override @Transactional(rollbackFor = Exception.class) public void updateAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { BdAreaClassify areaClassify = BeanUtil.copyProperties(areaClassifyParam, BdAreaClassify.class); areaClassify.setPkModified(loginUser.getUserId()); areaClassify.setModifiedTime(new Date()); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(),EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.updateById(areaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ - for (Integer number : areaClassifyParam.getSpecialAreaList()) { - BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); - areaClassifySpecialArea.setSpecialArea(number); - areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); - areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); - areaClassifySpecialArea.setCreationTime(new Date()); - areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); - list.add(areaClassifySpecialArea); - } - } - if (list.size() > 0){ - areaClassifySpecialAreaService.saveBatch(list); - } - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassify.getPkId(); - redisService.deleteObject(redisKey); - } - - /** - * 根据主键查询商品分类 - * @param areaClassifyId - * @return - */ - @Override - public BdAreaClassify getAreaClassify(Integer areaClassifyId) { - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassifyId; - BdAreaClassify areaClassify = redisService.getCacheObject(redisKey); - if (null == areaClassify) { - areaClassify = baseMapper.selectById(areaClassifyId); - if (null != areaClassify) { - redisService.setCacheObject(redisKey, areaClassify); + if (areaClassifyParam.getSpecialAreaList() != null) { + for (Integer number : areaClassifyParam.getSpecialAreaList()) { + BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); + areaClassifySpecialArea.setSpecialArea(number); + areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); + areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); + areaClassifySpecialArea.setCreationTime(new Date()); + areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); + list.add(areaClassifySpecialArea); } } - return areaClassify; + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); + } + } + + @Override + public BdAreaClassify getAreaClassify(Integer areaClassifyId) { + return baseMapper.selectById(areaClassifyId); } - /** - * 查询商品分类列表 - * @param areaClassifyParam - * @return - */ @Override public List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam) { return baseMapper.selectByAreaClassifyList(areaClassifyParam); @@ -150,18 +97,14 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl bdAreaClassify = new UpdateWrapper(); - bdAreaClassify.eq("PK_ID",pkId); - bdAreaClassify.set("PK_MODIFIED",SecurityUtils.getUserId()); - bdAreaClassify.set("MODIFIED_TIME",new Date()); - bdAreaClassify.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - areaClassifyService.update(bdAreaClassify); - - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + pkId; - redisService.deleteObject(redisKey); + LambdaUpdateWrapper bdAreaClassify = new LambdaUpdateWrapper<>(); + bdAreaClassify.eq(BdAreaClassify::getPkId, pkId); + bdAreaClassify.set(BdAreaClassify::getPkModified, SecurityUtils.getUserId()); + bdAreaClassify.set(BdAreaClassify::getModifiedTime, new Date()); + bdAreaClassify.set(BdAreaClassify::getDelFlag, EDelFlag.DELETE.getValue()); + iBdAreaClassifyService.update(bdAreaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java index 582e47c0..0ab17cee 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java @@ -1,43 +1,20 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdClassify; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdClassifyMapper; import com.hzs.sale.product.service.IBdClassifyService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - *

* 规格分类 服务实现类 - *

- * - * @author hzs - * @since 2022-08-26 */ @Service public class BdClassifyServiceImpl extends ServiceImpl implements IBdClassifyService { - @Autowired - private RedisService redisService; - /** - * 根据id 查询详情 - * @param classifyId - * @return - */ @Override public BdClassify getClassify(Integer classifyId) { - String redisKey = CacheConstants.BD_CLASSIFY + classifyId; - BdClassify classify = redisService.getCacheObject(redisKey); - if (null == classify) { - classify = baseMapper.selectById(classifyId); - if (null != classify) { - redisService.setCacheObject(redisKey, classify); - } - } - return classify; + return baseMapper.selectById(classifyId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java index 8b61f095..0498206f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java @@ -14,7 +14,6 @@ import com.hzs.common.domain.sale.classify.BdClassify; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.*; -import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.mapper.BdProductMapper; @@ -22,9 +21,6 @@ import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.service.*; import com.hzs.sale.product.vo.ProductVo; import com.hzs.sale.product.vo.SupplierProductCensusVo; -import com.hzs.sale.product.vo.WaresDetailVo; -import com.hzs.sale.wares.service.IBdWaresDetailService; -import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.ICubasdocApi; import com.hzs.system.sys.dto.BusinessLogDTO; @@ -46,43 +42,34 @@ import java.util.stream.Collectors; public class BdProductServiceImpl extends ServiceImpl implements IBdProductService { @Autowired - private IBdWaresExtendService waresExtendService; + private IBdClassifyService iBdClassifyService; @Autowired - private IBdClassifyService classifyService; + private IBdProductExtendService iBdProductExtendService; @Autowired - private IBdProductExtendService productExtendService; + private IBdProductSpecsService iBdProductSpecsService; + @Autowired + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdProductSpecsService productSpecsService; - @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdWaresDetailService waresDetailService; @DubboReference - ICubasdocApi cubasdocApi; + ICubasdocApi iCubasdocApi; @DubboReference - ITransactionServiceApi transactionServiceApi; + ITransactionServiceApi iTransactionServiceApi; @Override public BdProduct getProduct(Integer pkProduct) { return baseMapper.selectById(pkProduct); } - @Override - public List queryProductExtById(List productSpecsList, Integer pkCountry) { - return baseMapper.queryProductExtBySpecsId(productSpecsList, pkCountry); - } - @Override @Transactional(rollbackFor = Exception.class) public String saveProduct(ProductParams productParams, LoginUser loginUser) { String productCode = productParams.getProductCode(); BdProduct bdProduct = BeanUtil.copyProperties(productParams, BdProduct.class); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setProductCode(productCode); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setProductCode(productCode); bdProduct.setPkCreator(loginUser.getUserId()); bdProduct.setCreationTime(new Date()); bdProduct.setPkCreator(loginUser.getUserId()); @@ -98,7 +85,7 @@ public class BdProductServiceImpl extends ServiceImpl cubasdocDTO = cubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); + R cubasdocDTO = iCubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); CubasdocDTO cubasdoc = cubasdocDTO.getData(); if (cubasdoc != null) { bdProduct.setPkCubasdoc(productParams.getPkCubasdoc()); @@ -118,7 +105,7 @@ public class BdProductServiceImpl extends ServiceImpl 0) { - List specsTypeList = specsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); + List specsTypeList = iBdSpecsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); List list = specsTypeList.stream().map(BdSpecsType::getTypeName).collect(Collectors.toList()); str.append("规格明细:").append(StringUtils.join(list, ",")); } @@ -223,9 +210,9 @@ public class BdProductServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setPkId(productParams.getPkId()); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setPkId(productParams.getPkId()); bdProduct.setPkModified(loginUser.getUserId()); bdProduct.setModifiedTime(new Date()); if (productParams.getIsPutOn().equals(EYesNo.YES.getIntValue())) { @@ -244,12 +231,12 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getPkProduct, productParams.getPkId()); - productExtendService.update(productExtend, queryWrapper); + iBdProductExtendService.update(productExtend, queryWrapper); // 生成规格明细 if (productParams.getPkSpecsType() != null) { LambdaQueryWrapper removeWrapper = new LambdaQueryWrapper<>(); removeWrapper.eq(BdProductSpecs::getPkProduct, bdProduct.getPkId()); - productSpecsService.remove(removeWrapper); + iBdProductSpecsService.remove(removeWrapper); for (Integer id : productParams.getPkSpecsType()) { BdProductSpecs productSpecs = new BdProductSpecs(); productSpecs.setPkProduct(bdProduct.getPkId()); @@ -258,7 +245,7 @@ public class BdProductServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BdProductSpecs::getPkProduct, pkId); - productSpecsService.update(bdProductSpecs, wrapper); + iBdProductSpecsService.update(bdProductSpecs, wrapper); // 创建删除产品日志 if (product != null) { createRemoveProductLog(product, loginUser, EApprovalBusiness.PRODUCT_REMOVE.getValue()); @@ -336,25 +323,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, maxSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之前的全都上移一位 并且将产品修改为该号码 - productExtendService.updateMoveUpBySort(maxSort); + iBdProductExtendService.updateMoveUpBySort(maxSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -363,25 +350,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, minSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之下的全都下移一位 并且将产品修改为该号码 - productExtendService.updateMoveDownBySort(minSort); + iBdProductExtendService.updateMoveDownBySort(minSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -422,11 +409,11 @@ public class BdProductServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, sort + 1); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); if (product != null) { createFloatingRoofLog(product, loginUser, EApprovalBusiness.PRODUCT_TOP.getValue()); } @@ -476,47 +463,6 @@ public class BdProductServiceImpl extends ServiceImpl productList) { - List list = productList.stream().map(BdProduct::getPkId).collect(Collectors.toList()); - - try { - List waresDetailVoList = waresDetailService.listByPkProduct(list); - // 缺货状态 - List waresOutStockList = new ArrayList<>(); - //预售状态 - List warespreSaleList = new ArrayList<>(); - for (WaresDetailVo waresDetailVo : waresDetailVoList) { - if (waresDetailVo.getIsPreSale() == null || waresDetailVo.getIsPreSale().equals(EYesNo.NO.getIntValue())) { - // 缺货状态 - waresOutStockList.add(waresDetailVo.getPkWares()); - } else if (waresDetailVo.getIsPreSale().equals(EYesNo.YES.getIntValue())) { - // 是预售 修改为预售状态 - warespreSaleList.add(waresDetailVo.getPkWares()); - } - - } - // 更新缺货状态 - if (waresOutStockList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, waresOutStockList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.OUT_STOCK.getValue()); - waresExtendService.update(updateWrapper); - } - // 更新预售状态 - if (warespreSaleList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, warespreSaleList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.PRESALE.getValue()); - waresExtendService.update(updateWrapper); - } - } catch (Exception e) { - return false; - } - return true; - } - @Override public List getSupplierProductCensus(SupplierProductCensusParam supplierProductCensusParam) { return baseMapper.getSupplierProductCensus(supplierProductCensusParam); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java index 4cda766a..635f372b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java @@ -1,54 +1,30 @@ package com.hzs.sale.product.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdSpecsMapper; import com.hzs.sale.product.service.IBdSpecsService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** - *

* 产品规格表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsServiceImpl extends ServiceImpl implements IBdSpecsService { - @Autowired - private RedisService redisService; - /** - * 根据id查询产品规格表 - * @param specsId - * @return - */ @Override public BdSpecs getSpecs(Integer specsId) { - String redisKey = CacheConstants.BD_SPECS + specsId; - BdSpecs specs = redisService.getCacheObject(redisKey); - if (null == specs) { - specs = baseMapper.selectById(specsId); - if (null != specs) { - redisService.setCacheObject(redisKey, specs); - } - } - return specs; + return baseMapper.selectById(specsId); } @Override public List queryBdSpecsByIdList(List idList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.in(SystemFieldConstants.PK_ID, idList); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(BdSpecs::getPkId, idList); return baseMapper.selectList(queryWrapper); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java index 3d99bd28..9077c40a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java @@ -3,13 +3,7 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.security.utils.SecurityUtils; @@ -19,9 +13,7 @@ import com.hzs.sale.product.mapper.BdSpecsTypeMapper; import com.hzs.sale.product.service.IBdSpecsService; import com.hzs.sale.product.service.IBdSpecsTypeService; import com.hzs.sale.product.vo.SpecsTypeVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -31,38 +23,19 @@ import java.util.Date; import java.util.List; /** - *

* 规格类型表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsTypeServiceImpl extends ServiceImpl implements IBdSpecsTypeService { + @Autowired - private RedisService redisService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdSpecsService specsService; - /** - * 根据id 查询规格分类 - * @return - */ + private IBdSpecsService iBdSpecsService; + @Override public BdSpecsType getSpecsType(Integer specsTypeId) { - String redisKey = CacheConstants.BD_SPECS_TYPE + specsTypeId; - BdSpecsType specsType = redisService.getCacheObject(redisKey); - if (null == specsType) { - specsType = baseMapper.selectById(specsTypeId); - if (null != specsType) { - redisService.setCacheObject(redisKey, specsType); - } - } - return specsType; + return baseMapper.selectById(specsTypeId); } @Override @@ -75,8 +48,6 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, specsTypeParam.getTypeName(), EYesNo.NO,EYesNo.NO); - bdSpecsType.setPkTransactionKey(transaction.getData()); baseMapper.insert(bdSpecsType); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { @@ -86,21 +57,11 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); specsList.add(bdSpecs); } - - specsService.saveBatch(specsList); - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); + iBdSpecsService.saveBatch(specsList); } - /** - * 修改规格分类 - * @param specsTypeParam - * @param loginUser - */ @Override public void updateSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser) { BdSpecsType bdSpecsType = new BdSpecsType(); @@ -111,76 +72,59 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl specsId = new ArrayList<>(); for (SpecsParam specsParam : specsTypeParam.getSpecsList()) { - if (specsParam.getSpecsId() != null){ + if (specsParam.getSpecsId() != null) { specsId.add(specsParam.getSpecsId()); } } - specsService.remove(new QueryWrapper().notIn("PK_ID",specsId).eq("PK_SPECS_TYPE",specsTypeParam.getPkId())); + iBdSpecsService.remove(new QueryWrapper().notIn("PK_ID", specsId).eq("PK_SPECS_TYPE", specsTypeParam.getPkId())); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { BdSpecs bdSpecs = new BdSpecs(); - if (specs.getSpecsId() != null){ - BdSpecs sp = specsService.getById(specs.getSpecsId()); - sp.setSpecsName(specs.getValue()); - sp.setModifiedTime(new Date()); - sp.setPkModified(SecurityUtils.getUserId()); - sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); - specsService.updateById(sp); - }else { - bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); - bdSpecs.setSpecsName(specs.getValue()); - bdSpecs.setPkCreator(SecurityUtils.getUserId()); - bdSpecs.setCreationTime(new Date()); - bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(),EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); - specsList.add(bdSpecs); - } - - + if (specs.getSpecsId() != null) { + BdSpecs sp = iBdSpecsService.getById(specs.getSpecsId()); + sp.setSpecsName(specs.getValue()); + sp.setModifiedTime(new Date()); + sp.setPkModified(SecurityUtils.getUserId()); + sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); + iBdSpecsService.updateById(sp); + } else { + bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); + bdSpecs.setSpecsName(specs.getValue()); + bdSpecs.setPkCreator(SecurityUtils.getUserId()); + bdSpecs.setCreationTime(new Date()); + bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); + specsList.add(bdSpecs); + } } - if (specsList.size() > 0){ - specsService.saveBatch(specsList); + if (specsList.size() > 0) { + iBdSpecsService.saveBatch(specsList); } - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); } - /** - * 查询列表 - * @param specsType - * @return - */ + @Override public List selectSpecsTypeList(BdSpecsType specsType) { return baseMapper.selectSpecsTypeList(specsType); } - /** - * 删除 - * @param pkId - */ - @Override + @Transactional(rollbackFor = Exception.class) - public void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser) { - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_ID",pkId); - updateWrapper.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - updateWrapper.set("MODIFIED_TIME",new Date()); - updateWrapper.set("PK_MODIFIED",loginUser.getUserId()); - specsTypeService.update(updateWrapper); + @Override + public void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("PK_ID", pkId); + updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); + updateWrapper.set("MODIFIED_TIME", new Date()); + updateWrapper.set("PK_MODIFIED", loginUser.getUserId()); + iBdSpecsTypeService.update(updateWrapper); UpdateWrapper updateSpecsWrapper = new UpdateWrapper<>(); - updateSpecsWrapper.eq("PK_SPECS_TYPE",pkId); - updateSpecsWrapper.set("MODIFIED_TIME",new Date()); - updateSpecsWrapper.set("PK_MODIFIED",loginUser.getUserId()); + updateSpecsWrapper.eq("PK_SPECS_TYPE", pkId); + updateSpecsWrapper.set("MODIFIED_TIME", new Date()); + updateSpecsWrapper.set("PK_MODIFIED", loginUser.getUserId()); updateSpecsWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - specsService.update(updateSpecsWrapper); - String redisKey = CacheConstants.BD_SPECS_TYPE + pkId; - redisService.deleteObject(redisKey); + iBdSpecsService.update(updateSpecsWrapper); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java deleted file mode 100644 index dfb031f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hzs.sale.product.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/24 16:20 - * @Classname: WaresDetailVo - * @PackageName: com.hzs.sale.product.vo - */ - -import lombok.Data; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.product.vo - *@Author: yh - *@CreateTime: 2024-04-24 16:20 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class WaresDetailVo { - - /** - * 商品主键 - */ - private Integer pkWares; - - /** - * 是否允许预售 0 是 1 否 - */ - private Integer isPreSale; -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java index 5a0a601e..89569f6a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java @@ -9,23 +9,12 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -/** - * @Description: - * @Author: sui q - * @Time: 2022/10/25 13:47 - * @Classname: SaleApprovalBusiness - * @PackageName: com.hzs.sale.pub.provider - */ @Slf4j @DubboService public class SaleApprovalBusinessProvider implements ISaleApprovalServiceApi { - private ISaleApprovalBusiness saleApprovalBusiness; - @Autowired - public void setSaleApprovalBusiness(ISaleApprovalBusiness saleApprovalBusiness) { - this.saleApprovalBusiness = saleApprovalBusiness; - } + private ISaleApprovalBusiness saleApprovalBusiness; @Override public R approvalCallback(ApprovalBusinessResultDTO approvalBusinessResultDTO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java index 43debb75..76e5c129 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java @@ -2,28 +2,11 @@ package com.hzs.sale.refund.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 退款表 Mapper 接口 - * - * @author hzs - * @since 2023-08-25 */ public interface SaRefundMapper extends BaseMapper { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(@Param("param") RefundQueryParam param, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java deleted file mode 100644 index ddca73af..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.sale.refund.param; - -import lombok.Data; - -import java.util.Date; - -/** - * @Description: 退款查询入参 - * @Author: jiang chao - * @Time: 2023/8/28 9:49 - * @Classname: RefundQueryParam - * @PackageName: com.hzs.sale.order.param - */ -@Data -public class RefundQueryParam { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 订单编号 - */ - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - - /** - * 退款状态 - */ - private Integer refundStatus; - - /** - * 退款编号 - */ - private String refundCode; - - /** - * 产品编号 - */ - private String productCode; - - /** - * 产品名称 - */ - private String productName; - - /** - * 创建时间 - */ - private Date[] creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java deleted file mode 100644 index 2bf37f6e..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.sale.refund.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.sale.refund.ISaRefundServiceApi; -import com.hzs.sale.refund.service.IRefundBusinessService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @Description: 订单退款对外服务api - * @Author: jiang chao - * @Time: 2023/8/26 14:45 - * @Classname: SaRefundServiceProvider - * @PackageName: com.hzs.sale.order.provider - */ -@Slf4j -@DubboService -public class SaRefundServiceProvider implements ISaRefundServiceApi { - - @Autowired - private IRefundBusinessService iRefundBusinessService; - - @Override - public R onlinePayRefundCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - try { - String str = iRefundBusinessService.refundOnlineCallback(orderCode, refundCode, refundStatus, refundMsg); - if (null == str) { - return R.ok(); - } - return R.fail("直销订单在线支付退款失败: {}", str); - } catch (Exception e) { - log.error("直销订单在线支付退款异常: ", e); - return R.fail("直销订单在线支付退款异常: {}", e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java deleted file mode 100644 index 965308d3..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.sale.refund.service; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: IRefundBusinessService - * @PackageName: com.hzs.sale.order.service - */ -public interface IRefundBusinessService { - - /** - * 在线支付订单退款回调 - * - * @param orderCode 订单编号 - * @param refundCode 退款编号 - * @param refundStatus 退款状态 - * @param refundMsg 退款信息 - * @return - */ - String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg); - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java index 003e8255..19ae025d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java @@ -2,26 +2,10 @@ package com.hzs.sale.refund.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; - -import java.util.List; /** * 退款表 服务类 - * - * @author hzs - * @since 2023-08-25 */ public interface ISaRefundService extends IService { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(RefundQueryParam param, Integer pkCountry); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java deleted file mode 100644 index fc242c23..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.sale.refund.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAfterSale; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.service.IRefundBusinessService; -import com.hzs.sale.refund.service.ISaRefundService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: RefundBusinessServiceImpl - * @PackageName: com.hzs.sale.order.service.impl - */ -@Slf4j -@Service -public class RefundBusinessServiceImpl implements IRefundBusinessService { - - @Autowired - private ISaRefundService iSaRefundService; - - @Transactional(rollbackFor = Exception.class) - @Override - public String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - // 存在退款单号处理 - if (StringUtils.isNotEmpty(refundCode)) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(SaRefund::getRefundCode, refundCode); - SaRefund saRefund = iSaRefundService.getOne(queryWrapper); - if (null == saRefund) { - return "订单售后信息已不存在"; - } - if (EAfterSale.PROCESSED.getValue() == saRefund.getRefundStatus()) { - return "订单售后已经完成"; - } - - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.eq(SaRefund::getPkId, saRefund.getPkId()); - updateWrapper.set(SaRefund::getRefundStatus, refundStatus); - updateWrapper.set(SaRefund::getRefundRemark, refundMsg); - updateWrapper.set(SaRefund::getPkModified, MagicNumberConstants.PK_ADMIN); - updateWrapper.set(SaRefund::getModifiedTime, new Date()); - if (!iSaRefundService.update(updateWrapper)) { - return "直销订单在线支付退款,更新退款单失败"; - } - } - return null; - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java index 4d8880a5..549db29b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java @@ -3,25 +3,13 @@ package com.hzs.sale.refund.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.sale.order.SaRefund; import com.hzs.sale.refund.mapper.SaRefundMapper; -import com.hzs.sale.refund.param.RefundQueryParam; import com.hzs.sale.refund.service.ISaRefundService; -import com.hzs.sale.refund.vo.RefundQueryVO; import org.springframework.stereotype.Service; -import java.util.List; - /** * 退款表 服务实现类 - * - * @author hzs - * @since 2023-08-25 */ @Service public class SaRefundServiceImpl extends ServiceImpl implements ISaRefundService { - @Override - public List queryRefundList(RefundQueryParam param, Integer pkCountry) { - return baseMapper.queryRefundList(param, pkCountry); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java deleted file mode 100644 index 143c0b9b..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.hzs.sale.refund.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * @Description: 退款查询VO - * @Author: jiang chao - * @Time: 2023/8/28 9:48 - * @Classname: RefundQueryVO - * @PackageName: com.hzs.sale.order.vo - */ -@Data -public class RefundQueryVO { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 订单编号 - */ - @Excel(name = "订单编号") - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - /** - * 订单类型显示 - */ - @Excel(name = "订单类型") - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) - private String orderTypeVal; - - /** - * 退款状态 - */ - private Integer refundStatus; - /** - * 退款状态显示 - */ - @Excel(name = "退款状态") - @Transaction(transactionKey = EnumsPrefixConstants.REFUND_STATUS) - private String refundStatusVal; - - /** - * 退款编号 - */ - @Excel(name = "退款编号") - private String refundCode; - /** - * 退款金额 - */ - @Excel(name = "退款金额") - private BigDecimal refundAmount; - /** - * 退款业绩 - */ - @Excel(name = "退款业绩") - private BigDecimal refundAchieve; - /** - * 退款考核业绩 - */ - private BigDecimal refundAssAchieve; - /** - * 退款邮费 - */ - @Excel(name = "退款邮费") - private BigDecimal postage; - - /** - * 产品编号 - */ - @Excel(name = "产品编号") - private String productCode; - /** - * 产品名称 - */ - @Excel(name = "产品名称") - private String productName; - /** - * 产品规格 - */ - @Excel(name = "产品规格") - private String specsName; - /** - * 产品价格 - */ - @Excel(name = "产品价格") - private BigDecimal price; - /** - * 产品业绩 - */ - @Excel(name = "产品业绩") - private BigDecimal achievement; - /** - * 产品考核业绩 - */ - private BigDecimal ass_achievement; - /** - * 产品数量 - */ - @Excel(name = "产品数量") - private Integer quantity; - - /** - * 创建日期 - */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java index a0a885ea..58a5cfaa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java @@ -13,11 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; /** - * @Description: 购票对外dubbo服务 - * @Author: jiang chao - * @Time: 2025/1/14 15:44 - * @Classname: TicketServiceProvider - * @PackageName: com.hzs.sale.ticket.provider + * 购票对外dubbo服务 */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java index 6794bd95..2609eedc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; import org.apache.ibatis.annotations.Param; @@ -54,14 +53,6 @@ public interface BdWaresDetailMapper extends BaseMapper { */ List selectByPkWares(@Param("pkWares") Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProducts - * @return - */ - List listByPkProduct(@Param("pkProducts") List pkProducts); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java index af6a2524..89e7f68d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.param; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.domain.system.config.BdLabel; -import com.hzs.sale.wares.vo.SaTWaresSkuVo; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -232,11 +231,6 @@ public class CuWaresParams implements Serializable { */ private Integer source; - /** - * 商品sku信息 - */ - List waresSkuList; - /** * 入汇率 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java index 903ded33..aa3ebe87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java @@ -11,33 +11,19 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.Date; -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.sale.wares.provider - * @Author: yh - * @CreateTime: 2023-03-02 17:07 - * @Description: TODO - * @Version: 1.0 - */ @DubboService public class WaresServiceProvider implements IWaresServiceApi { @Autowired - private IBdWaresService waresService; + private IBdWaresService iBdWaresService; @Autowired - private IBdWaresLabelService waresLabelService; + private IBdWaresLabelService iBdWaresLabelService; - /** - * 校验标签是否使用 - * - * @param pkLabel 标签主键 - * @return - */ @Override public R checkLabelisUse(Integer pkLabel) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdWaresLabel::getPkLable, pkLabel); - int count = waresLabelService.count(queryWrapper); + int count = iBdWaresLabelService.count(queryWrapper); if (count > 0) { return R.ok(true); } else { @@ -45,37 +31,19 @@ public class WaresServiceProvider implements IWaresServiceApi { } } - /** - * 修改自动上下架状态(自动上架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoStart(Date currentTime) { - waresService.updateByAutoStartAndAutoStart(currentTime); + iBdWaresService.updateByAutoStartAndAutoStart(currentTime); } - /** - * @description: 修改商品预售状态 - * @author: zhang jing - * @date: 2024/10/24 16:09 - * @param: [] - * @return: void - **/ @Override public void waresPreSale() { - waresService.waresPreSale(); + iBdWaresService.waresPreSale(); } - - /** - * 修改自动上下架状态(自动下架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoEnd(Date currentTime) { - waresService.updateByAutoStartAndAutoEnd(currentTime); + iBdWaresService.updateByAutoStartAndAutoEnd(currentTime); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java index 38ec86bb..4eeec840 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; @@ -40,14 +39,6 @@ public interface IBdWaresDetailService extends IService { */ List selectByPkWares(Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProduct - * @return - */ - List listByPkProduct(List pkProduct); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java index 8b9f3cf4..46addcaf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java @@ -7,7 +7,6 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.mapper.BdWaresDetailMapper; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.service.IBdWaresDetailService; @@ -70,11 +69,6 @@ public class BdWaresDetailServiceImpl extends ServiceImpl listByPkProduct(List pkProduct) { - return baseMapper.listByPkProduct(pkProduct); - } - @Override public List selectByList(Integer pkWares) { return baseMapper.selectByList(pkWares); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java deleted file mode 100644 index 4d2424f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java +++ /dev/null @@ -1,196 +0,0 @@ -package com.hzs.sale.wares.vo; - -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.utils.StringUtils; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品列表VO - * @Author: jiang chao - * @Time: 2023/5/24 15:57 - * @Classname: SaTWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class SaTWaresQueryVO { - - /** - * 主键 - */ - private Long pkId; - /** - * 三方商品表ID - */ - private Long pkTWares; - - /** - * 三方商品SKU表ID - */ - @Excel(name = "直供序号") - private Long pkTWaresSku; - - /** - * 商品名称 - */ - @Excel(name = "商品名称") - private String productName; - - /** - * 分类显示 - */ - @Excel(name = "商品分类") - private String titleCategory; - - public String getTitleCategory() { - if (StringUtils.isNotEmpty(this.titleCategoryOne)) { - titleCategory = this.titleCategoryOne; - } - if (StringUtils.isNotEmpty(this.titleCategoryTwo)) { - titleCategory += "-" + this.titleCategoryTwo; - } - if (StringUtils.isNotEmpty(this.titleCategoryThree)) { - titleCategory += "-" + this.titleCategoryThree; - } - return titleCategory; - } - - /** - * 商品图片 - */ - private String cover; - - /** - * 品牌名称 - */ - private String brandName; - /** - * 规格值冗余 - */ - @Excel(name = "商品规格") - private String specValueNames; - - /** - * 来源渠道 - */ - private Integer source; - /** - * 来源渠道显示 - */ - @Excel(name = "平台") - private String sourceVal; - - /** - * 协议价(供应价) - */ - @Excel(name = "供应价(¥)") - private BigDecimal agreementPrice; - /** - * 商品售价 - */ - @Excel(name = "售价(¥)") - private BigDecimal price; - /** - * 商品pv - */ - @Excel(name = "业绩(¥)") - private BigDecimal achieve; - - /** - * 商品PV(美元) - */ - @Excel(name = "业绩($)") - private BigDecimal achievementDollar; - /** - * 分享pv - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - @Excel(name = "毛利润(¥)") - private BigDecimal grossProfit; - /** - * 净利润 - */ - @Excel(name = "纯利润(¥)") - private BigDecimal netProfit; - - /** - * 是否上架(0=上架,1=下架) - */ - private Integer isPutOn; - - /** - * 是否推荐(0=推荐,1=不推荐) - */ - @Transaction(transactionKey = EnumsPrefixConstants.RECOMMEND_TYPE) - private Integer isRecommend; - /** - * 是否推荐 - */ - private String isRecommendVal; - - /** - * 商品分类(一级分类) - */ - private Long pkCategoryOne; - /** - * 一级分类名称 - */ - private String titleCategoryOne; - - /** - * 商品分类(二级分类) - */ - private Long pkCategoryTwo; - /** - * 一级分类名称 - */ - private String titleCategoryTwo; - - /** - * 商品分类(三级分类) - */ - private Long pkCategoryThree; - /** - * 一级分类名称 - */ - private String titleCategoryThree; - - - /** - * 虚拟销量 - */ - @Excel(name = "虚拟销量") - private Integer sale; - - /** - * 实际销量 - */ - @Excel(name = "实际销量") - private Integer realSale; - - /** - * 销量 - */ - @Excel(name = "销量") - private Integer allSale; - - /** - * 下架备注 - */ - @Excel(name = "下架说明") - private String putOnRemark; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java deleted file mode 100644 index cb29525a..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.wares.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/19 17:13 - * @Classname: SaTWaresSkuVo - * @PackageName: com.hzs.sale.wares.vo - */ - -import com.alibaba.fastjson2.JSONArray; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import lombok.Data; - -import java.math.BigDecimal; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.wares.vo - *@Author: yh - *@CreateTime: 2023-05-19 17:13 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SaTWaresSkuVo { - - /** - * 主键 - */ - - private Long pkId; - - /** - * 三方商品表ID - */ - - private Long pkTWares; - - /** - * 同步三方商品规格TID - */ - - private Long pkThWaresSku; - - /** - * 规格ID冗余 - */ - - private String specValueIds; - - /** - * 规格值冗余 - */ - - private String specValueNames; - - /** - * 商品价格 - */ - - private BigDecimal price; - - /** - * 商品pv - */ - - private BigDecimal achieve; - - /** - * 商品bv - */ - - private BigDecimal assAchieve; - - /** - * 规格图片 - */ - - private String image; - - /** - * 是否上架(0=上架,1=下架) - */ - - private Integer isPutOn; - - /** - * 重量 - */ - - private Integer weight; - - - /** - * 默认规格 - */ - private JSONArray productGroup; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java deleted file mode 100644 index 3fd39086..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.hzs.sale.wares.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品定价查询VO - * @Author: jiang chao - * @Time: 2023/5/18 10:57 - * @Classname: TWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class TWaresQueryVO { - - /** - * 产品主键 - */ - private Long pkId; - /** - * 商品主键 - */ - private Long pkTWares; - - /** - * skuId - */ - private Long tId; - /** - * 商品ID - */ - private Long pkThWares; - - /** - * 商品名称 - */ - private String title; - /** - * 商品图片 - */ - private String cover; - /** - * 商品分类(全部级别,需要处理后返回) - */ - private String thirdCategoryName; - - /** - * 商品分类(一级分类) - */ - private String category; - /** - * 商品类目(二级分类) - */ - private String classify; - - /** - * 品牌名称 - */ - private String thirdBrandName; - - /** - * 规格值组合 - */ - private String specValueNames; - - /** - * 来源平台 - */ - private Integer source; - /** - * 来源平台显示 - */ - private String sourceVal; - - /** - * 规格协议价(单位:分) 供应价 - */ - private BigDecimal agreementPrice; - /** - * 规格指导价(单位:分) - */ - private BigDecimal guidePrice; - - /** - * 上下架状态(0=下架,1=上架) -- 三方状态,需要转换成系统状态 - */ - private Integer status; - - /** - * 是否定价(0=是,1=否) - */ - private Integer confirmPrice; - - /** - * 是否显示(0=显示,1=隐藏) - */ - private Integer showFlag; - - /** - * 售价 - */ - private BigDecimal price; - - /** - * 业绩 - */ - private BigDecimal achievement; - - /** - * 业绩(美元) - */ - private BigDecimal achievementDollar; - - /** - * 分享业绩 - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - private BigDecimal grossProfit; - - /** - * 净利润 - */ - private BigDecimal netProfit; - -} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml index 29ac4929..c1fde690 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml @@ -96,32 +96,4 @@ and trunc(sysdate) between b.act_start_date and b.act_end_date - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml index 4d6d4ca3..da7f91e4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml @@ -2,45 +2,4 @@ - - - merge into AC_RETAIL_PICK_LOG arpl - using (SELECT sum(soi.WARES_QUANTITY) quantity, so.pk_member pk_member - FROM sa_order so - INNER JOIN SA_ORDER_ITEMS soi - ON so.pk_id = soi.pk_order - WHERE so.del_flag = 0 - and so.order_status = 1 - and so.order_type in (41, 42, 43) - and so.system_type = #{systemType} - and soi.del_flag = 0 - and soi.is_gift = 1 - and soi.pk_wares in - - #{item} - - and so.pay_time >= #{startDate, jdbcType=DATE} - and so.pay_time < #{endDate, jdbcType=DATE} - group by so.pk_member - having sum(soi.WARES_QUANTITY) >= #{waresQuantity}) tmp - on (arpl.del_flag = 0 and arpl.PK_MEMBER = tmp.pk_member and arpl.PK_BASE_ID = #{pkBaseId}) - when not matched then - insert ( - PK_ID, - PK_BASE_ID, - PK_MEMBER, - WARES_QUANTITY, - GIFT_QUANTITY, - PK_CREATOR, - CREATION_TIME) - values ( - AC_RETAIL_PICK_LOG_SEQ.Nextval, - #{pkBaseId}, - tmp.pk_member, - tmp.quantity, - trunc(tmp.quantity / #{waresQuantity}) * #{giftQuantity}, - 100000000, - #{createDate}) - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml index 479c8476..51a7a4a0 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml @@ -18,27 +18,6 @@ and arp.used_quantity + #{quantity} >= 0 - - - merge into AC_RETAIL_PICK arp - using (select * - from AC_RETAIL_PICK_LOG arpl - where arpl.del_flag = 0 - and arpl.pk_base_id = #{pkBaseId} - and to_char(arpl.creation_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{nowDate}, 'yyyy-mm-dd hh24:mi:ss')) tmp - on (arp.pk_member = tmp.pk_member and arp.del_flag = 0) - when not matched then - insert - (PK_ID, PK_MEMBER, USABLE_QUANTITY, PK_CREATOR, CREATION_TIME) - values (AC_RETAIL_PICK_SEQ.Nextval, - tmp.pk_member, - tmp.gift_quantity, - tmp.PK_CREATOR, - tmp.CREATION_TIME) - when matched then - update set arp.usable_quantity = arp.usable_quantity + tmp.gift_quantity - - - select dr.pk_base_id,dr.order_type,dr.order_amount,dr.order_achieve,dr.ratio_type, - dr.ratio_value,ba.pk_country from ac_base_config ba - inner join AC_REPUR_COUPONS_RULE_CONFIG dr - on dr.pk_base_id = ba.pk_id - where ba.del_flag = 0 and dr.del_flag=0 - and ba.act_start_date <= #{settleDate, jdbcType=DATE} and ba.act_end_date >= #{settleDate, jdbcType=DATE} - order by dr.pk_base_id,dr.ORDER_ACHIEVE desc - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml index e86b6c03..4fa738f3 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml @@ -2,48 +2,4 @@ - - - - - - - - - - - - - - - - - - - - update ac_repur_shar_rule_config c - set c.del_flag = 1, c.modified_time = sysdate, c.pk_modified = #{pkModifyId} - where c.pk_order_type in (select t.pk_id - from ac_repur_shar_order_type t - where t.del_flag = 0 - and t.pk_base_id = #{activityId} - and t.order_type in - - #{item} - - ) - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 244385f2..37194cb7 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -740,22 +740,6 @@ - - - select so.order_code,so.order_type,so.pk_rate,so.order_amount,so.order_achieve,so.postage, cm.member_code,cm.member_name,par.member_code REFERENCE,par.member_name referenceName,so.rec_name,so.rec_phone, @@ -205,44 +166,6 @@ - - - select ac.*,pac.CLASSIFY_NAME parentClassifyName from BD_AREA_CLASSIFY ac + select ac.*,pac.CLASSIFY_NAME parentClassifyName from BD_AREA_CLASSIFY ac left join BD_AREA_CLASSIFY pac on pac.PK_ID = ac.PK_PARENT where ac.DEL_FLAG = 0 @@ -52,16 +48,16 @@ AND ( - (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = ac.PK_ID ) > 0 + (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = + ac.PK_ID ) > 0 or - ( select count(t.PK_ID) from BD_AREA_CLASSIFY t - where (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = t.PK_ID) > 0 + where (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = + t.PK_ID) > 0 start with t.pk_id = ac.PK_ID connect by t.pk_id = prior t.pk_parent - ) > 0 ) @@ -75,6 +71,6 @@ AND ac.CLASSIFY_NAME like #{classifyName}||'%' - order by ac.SORT desc + order by ac.SORT desc diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml index 30467ca6..e094cd42 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml @@ -2,19 +2,4 @@ - - - - - - - - - - - - - PK_ID, NAME, PK_TRANSACTION_KEY, SORT, ENABLE_STATE - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml index 8735eaf3..36c65345 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml @@ -186,22 +186,6 @@ order by bp.product_name - - select st.* ,bc.NAME classifyName from BD_SPECS_TYPE st @@ -43,8 +39,7 @@ and st.PK_COUNTRY = #{pkCountry} - order by st.sort - + order by st.sort diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml index 6e63e48c..12733619 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml @@ -2,87 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml index 86f5b30e..4d7f25d6 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml @@ -179,19 +179,6 @@ and wd.PK_WARES = #{pkWares} - - - - - select b.pk_id, b.label_type, @@ -38,7 +27,7 @@ where b.pk_country = #{pkCountry} and b.del_flag = 0 - and b.label like '%' || #{label} || '%' + and b.label like '%' || #{label} || '%' and b.label_type = #{labelType} @@ -51,13 +40,4 @@ - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml index 11f9b951..1b4ff04a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml @@ -4,28 +4,17 @@ - - - - - - - - - + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_RANGE, PK_LEVEL - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml index ebdd44ba..57aedf09 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MONTH, TOTAL_AMOUNT, ADD_AMOUNT, USED_AMOUNT, BALANCE_AMOUNT, BASE_AMOUNT, IS_GRANT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml index a4b27192..7ea8873a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, SHOP_NAME, PK_TRANSACTION, SHOP_VALUE, CENSUS_VALUE, START_VALUE, END_VALUE, SETTLE_VALUE, DELIVERY_FEE, DISCOUNT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml index 3a77a3cd..efb0dfa3 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml @@ -95,19 +95,4 @@ where rownum = 1 - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml index 2211bcb3..3ab8bf9b 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml @@ -4,34 +4,24 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MIN_AMOUNT, IS_ROUNDING, IS_REFERENCE, SERVICE_RATIO, EFFECTIVE_DATE - - + @@ -348,8 +371,6 @@ team_month_amount, recommend_num, team_num, - ba.grade_value, - ba.grade_name, bw.awards_value, bw.awards_name, bws.awards_value share_awards_value, @@ -363,7 +384,7 @@ inner join bd_awards bw on bw.pk_id = a.pk_awards and bw.del_flag = 0 inner join bd_awards bws - on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 + on bws.pk_id = a.pk_share_awards and bws.del_flag = 0 where ba.del_flag = 0 and a.pk_parent = #{pkParent} @@ -382,30 +403,26 @@ cm.income_status, cm.pay_time, cm.pk_vertex, - nvl(b.pk_rate, bt.pk_id) pk_rate, - nvl(cm.is_activate, a.enable_status) enable_status, + nvl(b.pk_rate, bt.pk_id) pk_rate, a.new_consume_pv, - nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, - nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, + nvl(b.consume_pv, 0) + nvl(a.new_consume_pv, 0) consume_pv, + nvl(b.month_consume_pv, 0) + nvl(a.new_consume_pv, 0) month_consume_pv, a.team_new_pv, - nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, - nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, + nvl(b.team_consume_pv, 0) + nvl(a.team_new_pv, 0) team_consume_pv, + nvl(b.team_month_pv, 0) + nvl(a.team_new_pv, 0) team_month_pv, a.team_new_amount, - nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, - nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, - nvl(b.big_team_pv, 0) big_team_pv, - nvl(b.small_team_pv, 0) small_team_pv, + nvl(b.team_consume_amount, 0) + nvl(a.team_new_amount, 0) team_consume_amount, + nvl(b.team_month_amount, 0) + nvl(a.team_new_amount, 0) team_month_amount, + nvl(b.big_team_pv, 0) big_team_pv, + nvl(b.small_team_pv, 0) small_team_pv, a.system_type, - bg.grade_value, - bg.grade_name, bw.awards_value, bw.awards_name, bw.range_ratio, bw.month_repurchase_ratio, bw.benefit_avg_ratio, bw.benefit_share_ratio, - bws.awards_value share_awards_value, - bv.region_vertex_pk_id + bws.awards_value share_awards_value from ( select * from ${secondTableName} start with pk_member = #{pkMember} @@ -429,10 +446,10 @@ select cm.* from cu_member cm - start with cm.pk_id = #{pkMember} + start + with cm.pk_id = #{pkMember} connect by cm.pk_id = prior cm.pk_parent order by level diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml index ba93896e..5fcb2d37 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml @@ -56,44 +56,6 @@ - - insert ALL - - into cu_member_bonus_push(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,round,second,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.round},#{item.second}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, - cal_type, cal_achieve, cal_value, pretax_income, - income_tax, real_income, round, second, remark, - income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) - values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, - #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, - #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, - #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, - #{item.pkCountry}, #{item.pkCreator}) - - - delete - from CU_MEMBER_BONUS_PUSH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} and grant_status <= 2) - - + + delete + from CU_MEMBER_BONUS_PUSH + where PK_BONUS in ( + select pk_id + from cu_member_bonus + where period = #{period} + and grant_status <= 2) + + + + insert ALL + + into cu_member_bonus_push ( + pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, + pretax_income, income_tax, real_income, + round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, + pk_country, pk_creator) + values ( + #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, + #{item.round}, #{item.second}, #{item.remark}, + #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + SELECT 1 FROM dual + + + + insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, pretax_income, + income_tax, real_income, round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) + values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, + #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, + #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml index e43aca15..fc0abe67 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml @@ -156,13 +156,15 @@ tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name, b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,bct.short_name settle_country from ( - select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_order + select pk_id, pk_member, order_code, order_type, pk_rate, pk_country, order_amount, order_achieve + from sa_order so + where so.del_flag = 0 ) so inner join ( select cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income, - cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio from - cu_member_bonus cb + cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio + from cu_member_bonus cb inner join CU_MEMBER_BONUS_RANGE cr on cb.pk_id = cr.pk_bonus where 1=1 @@ -180,7 +182,7 @@ select 1 from ( select pk_id from cu_member - where del_flag=0 and PAY_STATUS=1 + where del_flag = 0 and PAY_STATUS = 1 start with pk_id = #{item} connect by pk_parent = prior pk_id diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 9f270851..e38404e8 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -52,84 +52,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select so.pk_id, so.pk_member, so.order_code, @@ -145,187 +70,22 @@ so.pk_reference, so.pk_vertex, so.pk_country, - so.del_flag, so.pay_time, so.pk_creator, so.consume_amount, - so.box_num, - nvl(st.pk_id,0) items_id, - nvl(st.pk_order,0) pk_order, - nvl(st.pk_wares,0) pk_wares, - nvl(st.wares_price,0) wares_price, - nvl(st.wares_quantity,0) wares_quantity, - nvl(bw.wares_code,'~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num + bc.in_exchange_rate from sa_order so - left join sa_order_wares st - on so.pk_id = st.pk_order and st.wares_price > 0 - left join bd_wares bw - on bw.pk_id = st.pk_wares and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (41, 42) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - union - select so.pk_id, - so.pk_member, - so.order_code, - so.order_type, - so.pk_rate, - so.rec_province, - so.rec_city, - so.rec_county, - so.order_amount, - so.order_achieve, - so.order_ass_achieve, - so.upload_achieve, - so.pk_reference, - so.pk_vertex, - so.pk_country, - so.del_flag, - so.pay_time, - so.pk_creator, - so.consume_amount, - so.box_num, - soi.items_id, - soi.pk_order, - soi.pk_wares, - soi.wares_price, - soi.wares_quantity, - nvl(bw.wares_code, '~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num - from sa_order so - left join ( - select max(soi.pk_id) items_id, - nvl(soi.pk_order, 0) pk_order, - nvl(soi.pk_wares, 0) pk_wares, - sum(soi.achievement * soi.quantity) wares_price, - max(soi.wares_quantity) wares_quantity - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - group by soi.pk_order, soi.pk_wares - ) soi - on soi.pk_order = so.pk_id - left join bd_wares bw - on bw.pk_id = soi.pk_wares - and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - ) od left join bd_currency bc - on od.pk_rate = bc.pk_id - order by pay_time, wares_price desc - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java index d85d98d6..99c85eb8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberTradeExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberTradeMapper extends BaseMapper { @@ -24,13 +18,9 @@ public interface CuMemberTradeMapper extends BaseMapper { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(@Param("pkMember") Long pkMember, @Param("sourceCode") String sourceCode); - /** * 查询列表信息 * @@ -39,14 +29,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ List selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** - * 根据条件查询提现总金额、余额 - * - * @param cuMemberTradeVO 交易明细信息 - * @return CuMemberTradeExt - */ - CuMemberTradeExt selectMemberTradeListCount(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -80,39 +62,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(@Param("pkMember") Long pkMember, - @Param("sourceCode") String sourceCode, - @Param("tradeClassify") Integer tradeClassify); - - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java index 50a0cdfd..9ef6b55b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java @@ -1,6 +1,5 @@ package com.hzs.member.account.provider; - import com.hzs.common.core.domain.R; import com.hzs.member.account.IBusinessCommission; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -12,27 +11,21 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; - /** - * @Description: 办理业务扣费 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 办理业务扣费 */ @Slf4j @DubboService public class IBusinessCommissionServiceProvider implements IBusinessCommission { - @Autowired - ICuMemberTradeService cuMemberTradeService; + private ICuMemberTradeService iCuMemberTradeService; @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 提交扣费失败", tradeType, e); return R.fail("提交扣费失败!"); @@ -43,7 +36,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionReject(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 驳回扣费失败", tradeType, e); return R.fail("驳回扣费失败!"); @@ -52,7 +45,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { @Override public R> selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(cuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java index 4d1568d9..c84f863c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java @@ -2,13 +2,10 @@ package com.hzs.member.account.provider; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.business.SignOnlineInfoVo; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.common.domain.member.empty.CuMemberEmpty; @@ -16,9 +13,6 @@ import com.hzs.common.domain.member.empty.CuMemberEmptyLog; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.service.ICuMemberAchieveLogService; -import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.empty.service.ICuMemberEmptyLogService; import com.hzs.member.empty.service.ICuMemberEmptyService; @@ -27,7 +21,6 @@ import com.hzs.member.handlebusiness.ICuHandleBusinessServiceApi; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import com.hzs.member.handlebusiness.dto.MemberEmptyDTO; import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; @@ -37,8 +30,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.time.ZoneId; @@ -60,17 +51,11 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic @Autowired private ICuHandleBusinessService handleBusinessService; @Autowired - private ICuMemberService cuMemberService; - @Autowired private IMemberEmptyService iMemberEmptyService; @Autowired private ICuMemberEmptyService iCuMemberEmptyService; @Autowired private ICuMemberEmptyLogService iCuMemberEmptyLogService; - @Autowired - private ICuMemberAchieveLogService iCuMemberAchieveLogService; - @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -78,8 +63,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic IAwardsServiceApi awardsServiceApi; @DubboReference ICountryServiceApi countryServiceApi; - @DubboReference - ISaOrderServiceApi orderServiceApi; /** * 解析业务诉求信息 @@ -413,124 +396,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic } } - - /** - * @description: 特殊业务处理 - * @author: zhang jing - * @date: 2023/5/16 20:06 - * @param: [resultDTO] - * @return: com.hzs.common.core.domain.R - **/ - @Override - @Transactional(rollbackFor = Exception.class) - public String auditProcess(ApprovalBusinessResultDTO resultDTO) { - try { - // 查询订单修改记录 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberServiceLog::getBusinessNo, resultDTO.getBusinessCode()); - List cuMemberServiceLogList = iCuMemberServiceLogService.list(queryWrapper); - //校验注水业绩 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - // TODO 注水业绩在这拦住了 其他的校验 - LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); - queryWrapper1.eq(CuMemberAchieveLog::getBusinessNo, resultDTO.getBusinessCode()); - queryWrapper1.eq(CuMemberAchieveLog::getApproveStatus, EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = iCuMemberAchieveLogService.list(queryWrapper1); - if (CollectionUtils.isEmpty(cuMemberServiceLogList) && CollectionUtils.isEmpty(malList)) { - log.info("特殊业务:签呈不存在"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_ABSENT_ERROR); - } - } - - if (!CollectionUtils.isEmpty(cuMemberServiceLogList)) { - CuMemberServiceLog cuMemberServiceLog = cuMemberServiceLogList.get(0); - if (EApproveStatus.ALREADY_SUBMIT.getValue() != cuMemberServiceLog.getApproveStatus()) { - log.info("特殊业务:签呈已审核"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_AUDITED_ERROR); - } - } - //修改会员编号 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CHANGE_MEMBER_CODE.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateCodeByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateCodeReject(resultDTO); - return null; - } - //注水业绩 - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - cuMemberAchieveLogService.toExamine(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue()) { - //修改政策币 - cuMemberService.upPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.DEL_POLICY_CURRENCY_YES_NO.getValue()) { - //删除政策币 - cuMemberService.delPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.ZERO_ELEMENT_REVOKE.getValue()) { - //零元撤单 - cuMemberService.zeroByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.UPDATE_SETTLE_COUNTRY.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateSettleCountryAdopt(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateSettleCountryReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.EMPTY_ORDER.getValue()) { - // 审核通过 空单注册 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - orderServiceApi.regEmptyOrderApproved(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - orderServiceApi.regEmptyOrderReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_SAVE.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_MODIFY.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_DELETE.getValue() - ) { - cuMemberService.awardsControlPetition(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PARENT.getValue()) { - // 修改直推 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updateParentByBusinessNoReject(resultDTO); - return null; - } - - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PLACE_PARENT.getValue()) { - // 修改安置 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - // 通过 - cuMemberService.updatePlaceParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updatePlaceParentByBusinessNoReject(resultDTO); - return null; - } - } - } catch (Exception e) { - //异常时,审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", resultDTO.getEApprovalBusiness().getValue(), e); - return TransactionUtils.getContent(ConfigMsgConstants.MEMBER_UPDATE_CODE_ERROR); - } - return null; - } - /** * 处理空单注册数据 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java index e7bbdc46..6fce4d3d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java @@ -1,7 +1,6 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.member.account.ICuMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.service.ICuMemberTradeService; @@ -10,11 +9,7 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @description: 会员交易明细 Doubbo服务 - * @author: zhang jing - * @date: 2023/7/28 11:53 - * @param: - * @return: + * 会员交易明细 Doubbo服务 **/ @Slf4j @DubboService @@ -23,25 +18,11 @@ public class ICuMemberTradeServiceProvider implements ICuMemberTradeServiceApi { @Autowired private ICuMemberTradeService iCuMemberTradeService; - /** - * @description: 业务办理扣费提交 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } - /** - * @description: 业务办理扣费驳回 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java index 0b006696..fc327d3b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java @@ -21,37 +21,24 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** - * @Description: 会员钱包审核Doubbo服务 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 会员钱包审核Doubbo服务 */ @Slf4j @DubboService public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditServiceApi { - @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ICuMemberWithdrawService cuMemberWithdrawService; - + private ICuMemberWithdrawService cuMemberWithdrawService; @Autowired - ICuMemberTradeService cuMemberTradeService; - + private ICuMemberTradeService cuMemberTradeService; @Autowired - ICuMemberBaseService cuMemberBaseService; - + private ICuMemberAccountLogService cuMemberAccountLogService; @Autowired - ICuMemberAccountLogService cuMemberAccountLogService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberAccountService cuMemberAccountService; - - @Autowired - ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; + private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; @Override public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -96,7 +83,7 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe return R.fail("审核记录不存在!"); } return R.ok(businessLicenseApprove(approvalBusinessResultDTO)); - }else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { + } else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { //重置营业执照审批 CuMemberBusinessLicense cuMemberBusinessLicense = cuMemberBusinessLicenseService.selectLicenseByBusinessNo(businessCode); if (null == cuMemberBusinessLicense) { @@ -146,11 +133,6 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe } } - //驳回 - if (approveOperation == (EApproveOperation.REJECT.getValue())) { - // 根据后需求,是否重新发起 - // cuMemberRechargeService.updateDelFlagByRechargeCode(businessCode); - } } /** @@ -211,18 +193,14 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(eApproveStatus.getValue()==EApproveStatus.REJECTED.getValue()){ + if (eApproveStatus.getValue() == EApproveStatus.REJECTED.getValue()) { cuMemberBusinessLicense.setRejectMsg(""); } return cuMemberBusinessLicenseService.updateLicenseByBusinessNo(cuMemberBusinessLicense); } /** - * @description: 重置营业执照 - * @author: zhang jing - * @date: 2023/11/20 13:43 - * @param: [approvalBusinessResultDTO] - * @return: java.lang.Integer + * 重置营业执照 **/ private Integer resetBusinessLicenseApprove(ApprovalBusinessResultDTO approvalBusinessResultDTO) { LoginUser loginUser = approvalBusinessResultDTO.getLoginUser(); @@ -232,12 +210,11 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(approvalBusinessResultDTO.getApproveOperation()==EApproveOperation.AGREE.getValue()){ + if (approvalBusinessResultDTO.getApproveOperation() == EApproveOperation.AGREE.getValue()) { return cuMemberBusinessLicenseService.deleteLicense(cuMemberBusinessLicense); - }else{ + } else { return cuMemberBusinessLicenseService.rejectResetLicense(cuMemberBusinessLicense); } - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java index 6b231756..a7fe1ec9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java @@ -4,7 +4,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.core.enums.EApproveRechargeStatus; import com.hzs.common.domain.member.account.CuMemberRecharge; -import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.MemberBalanceDTO; @@ -17,50 +16,30 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/3/8 18:28 - * @Classname: IMemberTradeServiceProvider - * @Package_name: com.hzs.member.account.provider - */ @Slf4j @DubboService public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { @Autowired - ICuMemberTradeService memberTradeService; - + private ICuMemberTradeService iCuMemberTradeService; @Autowired - ICuMemberRechargeService memberRechargeService; - - @Override - public R saveMemberOnlineTradeAndAccount(String rechargeCode) { - try { - return R.ok(memberTradeService.saveMemberTradeAndAccountByRechargeCode(rechargeCode)); - } catch (Exception e) { - log.error("在线充值插入交易流水失败,充值单号:{} ", rechargeCode, e); - return R.fail("提交扣费失败!"); - } - - } + private ICuMemberRechargeService iCuMemberRechargeService; @Override public R updateOnlineRechargeByRechargeCode(String rechargeCode, EApproveOperation eApproveOperation, Long pkMember) { try { - return R.ok(memberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); + return R.ok(iCuMemberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); } catch (Exception e) { log.error("更新充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("充值回调处理异常:" + e.getMessage()); } } - @Override public R selectMemberRechargeByCodeAndPkMember(String rechargeCode, Long pkMember) { try { CuMemberRechargeVO memberRechargeVO = CuMemberRechargeVO.builder().rechargeCode(rechargeCode).pkMember(pkMember).build(); - CuMemberRecharge cuMemberRecharge = memberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); + CuMemberRecharge cuMemberRecharge = iCuMemberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); if (null == cuMemberRecharge) { return R.fail("充值信息不存在!"); } @@ -76,34 +55,16 @@ public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { log.error("查询预充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("查询预充值信息失败!"); } - } - /** - * 查询余额不足的用户信息 - * - * @param businessCommissionDTO 业务参数 - * @return List - */ @Override public List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return memberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); + return iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); } - /** - * 业务办理扣费提交 - * - * @param businessCommissionDTO 业务办理入参 - * @return Integer - */ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(memberTradeService.businessCommissionSubmit(businessCommissionDTO)); - } - - @Override - public R> querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return R.ok(memberTradeService.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java index 0a9bf9f1..5eb9f888 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java @@ -14,43 +14,23 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.List; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/5 14:32 - * @Classname: MemberAccountServiceProvider - * @PackageName: com.hzs.member.account.provider - */ @Slf4j @DubboService public class MemberAccountServiceProvider implements IMemberAccountServiceApi { @Autowired - private ICuMemberAccountService cuMemberAccountService; + private ICuMemberAccountService iCuMemberAccountService; @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Override public R> queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { - return R.ok(cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); + return R.ok(iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); } @Override public R> queryCuMemberAccountByPkMembers(List pkMemberList) { - return R.ok(cuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); - } - - @Override - public R orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - try { - String str = iCuMemberBusinessService.orderChangeProductPre(saOrder, updateOrder); - if (null == str) { - return R.ok(); - } - return R.fail(str); - } catch (Exception e) { - return R.fail(e.getMessage()); - } + return R.ok(iCuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); } @Override @@ -63,16 +43,6 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - try { - iCuMemberBusinessService.orderReturn(saOrder, userId, changeAmount, changeRemark); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - @Override public R orderReturnMember(List pkMemberList, Long userId) { try { @@ -96,14 +66,4 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R insertMemberTrade(SaOrder saOrder, CuMemberAccountExt cuMemberAccount) { - try { - iCuMemberBusinessService.insertMemberTrade(saOrder, cuMemberAccount); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java index 76a14281..4789c8d7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java @@ -9,21 +9,17 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @Description: 银行卡 Doubbo服务 - * @Author: ljc - * @Time: 2022/11/11 16:31 - * @Classname: MemberBankServiceProvider - * @Package_name: com.hzs.member.account.provider + * 银行卡 Doubbo服务 */ @Slf4j @DubboService public class MemberBankServiceProvider implements IMemberBankServiceApi { @Autowired - ICuMemberBankService cuMemberBankService; + private ICuMemberBankService iCuMemberBankService; @Override public R addBankInfo(CuMemberBankParam cuMemberBankParam) { - return R.ok(cuMemberBankService.saveMemberBank(cuMemberBankParam)); + return R.ok(iCuMemberBankService.saveMemberBank(cuMemberBankParam)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java index 768419e9..185613c2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java @@ -13,12 +13,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 服务类 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface ICuMemberTradeService extends IService { @@ -27,13 +22,9 @@ public interface ICuMemberTradeService extends IService { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(Long pkMember, String sourceCode); - /** * 查询列表信息 * @@ -42,7 +33,6 @@ public interface ICuMemberTradeService extends IService { */ Object[] selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -51,7 +41,6 @@ public interface ICuMemberTradeService extends IService { */ Integer batchSaveTradeByMemberCode(@Param("cuMemberTrades") List cuMemberTrades); - /** * 查询钱包明细详情信息 * @@ -93,24 +82,14 @@ public interface ICuMemberTradeService extends IService { List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO); /** - * @description: 办理业务专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/10 15:19 - * @param: [mbbList] - * @return: java.util.List + * 办理业务专用查询会员余额 **/ - List selectBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); + List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); + /** - * @description: 特殊业务业务办理专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/14 11:10 - * @param: [mbbList, pkCountry] - * @return: java.util.List + * 特殊业务业务办理专用查询会员余额 **/ - List selectSpecialBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); - - - + List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); /** * 查询钱包明细(前端) @@ -120,7 +99,6 @@ public interface ICuMemberTradeService extends IService { */ List selectWattleDetail(CuMemberTradeVO cuMemberTradeVO); - /** * 根据 来源编号更新交易编号 * @@ -129,16 +107,6 @@ public interface ICuMemberTradeService extends IService { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify); - /** * 根据充值单号插入交易流水、余额表 * @@ -147,27 +115,6 @@ public interface ICuMemberTradeService extends IService { */ Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * @@ -176,7 +123,6 @@ public interface ICuMemberTradeService extends IService { */ List selectMemberTradeBySourceCode(String sourceCode); - /** * 查询用户交易类型 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java index 0b9d5b7a..8b1b5057 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java @@ -26,7 +26,6 @@ import com.hzs.member.account.service.ICuMemberRechargeService; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.account.vo.CuMemberTradeDetailVO; import com.hzs.member.account.vo.CuMemberTradeVO; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.system.base.dto.CurrencyDTO; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -40,33 +39,19 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - *

* 会员交易明细 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service public class CuMemberTradeServiceImpl extends ServiceImpl implements ICuMemberTradeService { @Autowired - ICuMemberBaseService cuMemberBaseService; + private ICuMemberBaseService cuMemberBaseService; @Autowired - ICuMemberAccountService cuMemberAccountService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ITransactionCommonService iTransactionCommonService; - - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private ITransactionCommonService iTransactionCommonService; @Override public List queryCuMemberTrade(Long pkMember, String sourceCode) { @@ -174,7 +159,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl) objects[1],accountValue, isWithdraw); + return cuMemberAccountService.batchUpdateMemberAccountByPkmember((List) objects[1], accountValue, isWithdraw); } else { return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry((List) objects[1], null); } - - } } return true; @@ -264,7 +246,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl memberAmountDTOList = memberAmountMap.entrySet().stream().map(a -> a.getValue()).collect(Collectors.toList()); + List memberAmountDTOList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); //更新余额 return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry(memberAmountDTOList, isWithdraw); } @@ -294,13 +276,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -317,11 +292,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl> maDto : memberAmountMap.entrySet()) { - Integer flag = 0; + int flag = 0; BigDecimal availableBalance; Integer businessType = 0; //中国 - if (pkCountry == CountryConstants.CHINA_COUNTRY) { + if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { //会员下的业务 ff3: for (int i = 0; i < maDto.getValue().size(); i++) { @@ -424,21 +399,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -652,7 +617,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl a.getValue()).collect(Collectors.toList()); + memberAmountList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); } } return new Object[]{cuMemberTradeLsit, memberAmountList}; @@ -689,7 +654,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return baseMapper.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify); - } - - @Override @Transactional(rollbackFor = Exception.class) public Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode) { @@ -796,25 +751,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl batchQueryCuMemberTradeSeq(Integer rowNum) { - return baseMapper.batchQueryCuMemberTradeSeq(rowNum); - } - - @Override - public void batchInsertCuMemberTrade(List cuMemberTradeList) { - List> cutList = cuMemberBonusSettle.handleCutList(cuMemberTradeList); - cutList.forEach(memberTradeList -> - baseMapper.batchInsertCuMemberTrade(memberTradeList)); - } - - @Override public List selectMemberTradeBySourceCode(String sourceCode) { return baseMapper.selectMemberTradeBySourceCode(sourceCode); } - @Override public List selectTradeType(Long pkMember, Integer pkCountry) { return baseMapper.selectTradeType(pkMember, pkCountry); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java index ac8659a3..cd8d6087 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java @@ -7,14 +7,9 @@ import java.util.Date; /** * 审批详情 - * @Description: - * @Author: ljc - * @Time: 2022/10/11 14:12 - * @Classname: ApprovalDetailVO - * @Package_name: com.hzs.member.account.vo */ @Data -public class ApprovalDetailVO implements Serializable { +public class ApprovalDetailVO implements Serializable { private static final long serialVersionUID = 6582252890330363302L; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java index 3c091dd1..0f26b066 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java @@ -19,7 +19,6 @@ public class CuMemberBankVO implements Serializable { /** * 银行主键 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_BANK) private Integer pkBank; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java index 12d23863..1e0b3220 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java @@ -15,12 +15,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java index 86d0030a..3b1fafdc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java @@ -13,12 +13,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java index 977ac454..fb57f3bc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftMapper.java @@ -7,21 +7,12 @@ import com.hzs.member.param.CuMemberGiftParam; import java.util.List; /** - *

* 会员礼包收货地址 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface CuMemberGiftMapper extends BaseMapper { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java index e680ed86..867820db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java @@ -1,18 +1,10 @@ package com.hzs.member.address.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import java.util.List; - /** - *

* 会员礼包收货地址修改记录表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface CuMemberGiftRecordMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java deleted file mode 100644 index 9d48f010..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.hzs.member.address.provider; - -import com.alibaba.fastjson2.JSONObject; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.member.account.dto.MemberAccountAudit; -import com.hzs.member.address.ICuMemberGiftServiceApi; -import com.hzs.member.address.service.ICuMemberGiftRecordService; -import com.hzs.member.address.service.ICuMemberGiftService; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 会员礼包修改收货地址审批回调 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider - */ -@Slf4j -@DubboService -public class CuMemberGiftServiceProvider implements ICuMemberGiftServiceApi { - - @Autowired - ICuMemberGiftRecordService cuMemberGiftRecordService; - @Autowired - ICuMemberGiftService cuMemberGiftService; - - @Override - public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { - //审核状态(1=待提交,2=已提交,3=审核中,4=已驳回,5=已完成,6=已归档) - EApproveStatus eApproveStatus = approvalBusinessResultDTO.getEApproveStatus(); - EApprovalBusiness eApprovalBusiness = approvalBusinessResultDTO.getEApprovalBusiness(); - String businessCode = approvalBusinessResultDTO.getBusinessCode(); - - if (StringUtils.isEmpty(businessCode) || null == eApproveStatus || null == eApprovalBusiness) { - return R.fail("提交审核缺少参数!"); - } - int approveState = eApproveStatus.getValue(); - try { - //会员礼包收货地址修改审批 - if (approveState == (EApproveStatus.FINISH.getValue())) { - CuMemberGiftRecord cuMemberGiftRecord = cuMemberGiftRecordService.getById(Integer.parseInt(businessCode)); - String newValue=cuMemberGiftRecord.getNewValue(); - if(StringUtils.isNotEmpty(newValue)){ - JSONObject root = new JSONObject().parseObject(newValue); - Long pkId =root.getLong("pkId"); - String giftAddress =root.getString("giftAddress"); - String giftName =root.getString("giftName"); - String giftPhone =root.getString("giftPhone"); - Long giftProvince =root.getLong("giftProvince"); - Long giftCity =root.getLong("giftCity"); - Long giftCounty =root.getLong("giftCounty"); - CuMemberGift cuMemberGift= new CuMemberGift(); - cuMemberGift.setPkId(pkId); - cuMemberGift.setGiftAddress(giftAddress); - cuMemberGift.setGiftName(giftName); - cuMemberGift.setGiftPhone(giftPhone); - cuMemberGift.setGiftProvince(giftProvince); - cuMemberGift.setGiftCity(giftCity); - cuMemberGift.setGiftCounty(giftCounty); - cuMemberGift.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberGift.setPkModified(SecurityUtils.getUserId()); - cuMemberGift.setModifiedTime(new Date()); - cuMemberGiftService.updateById(cuMemberGift); - }else{ - return R.fail("提交审核缺少参数!"); - } - } - return R.ok(); - } catch (Exception e) { - //会员礼包修改收货地址业务发生异常时,提醒审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", approveState, e); - return R.fail("会员礼包修改收货地址业务流程出错!"); - } - } - - - /** - * TDO转业务参数 - * - * @param approvalBusinessResultDTO 业务审批操作DTO - * @param approveState 审核状态 - * @param module 模块 - * @param businessCode 业务代码 - * @return MemberAccountAudit - */ - private MemberAccountAudit dtoToParam(ApprovalBusinessResultDTO approvalBusinessResultDTO, Integer approveState, Integer module, String businessCode) { - return MemberAccountAudit.builder() - .approver(approvalBusinessResultDTO.getLoginUser().getUserId()) - .pkModified(approvalBusinessResultDTO.getLoginUser().getUserId()) - .approveState(approveState) - .approveTime(approvalBusinessResultDTO.getOperationTime()) - .businessCode(businessCode).module(module) - .pkRole(approvalBusinessResultDTO.getSysUser().getUserId()) - .roleName(approvalBusinessResultDTO.getSysUser().getUserName()) - .build(); - } - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java index 6cfabf95..c86dc907 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java @@ -1,16 +1,10 @@ package com.hzs.member.address.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.address.CuMemberGiftRecord; /** - *

* 会员礼包收货地址修改记录表 服务类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface ICuMemberGiftRecordService extends IService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java index bc8b9236..f60a8dae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java @@ -8,30 +8,17 @@ import com.hzs.member.param.CuMemberGiftParam; import java.util.List; /** - *

* 会员礼包收货地址 服务类 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface ICuMemberGiftService extends IService { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:23 - * @param: [pkId] - * @return: com.hzs.member.address.vo.CuMemberGiftVO + * 查询会员礼包收货地址修改审批详情 **/ - CuMemberGiftVO approvalDetail(Long pkId); + CuMemberGiftVO approvalDetail(Long pkId); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java index 7c667da2..a33a6063 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.member.address.service.ICuMemberGiftRecordService; import org.springframework.stereotype.Service; /** - *

* 会员礼包收货地址修改记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ @Service public class CuMemberGiftRecordServiceImpl extends ServiceImpl implements ICuMemberGiftRecordService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java index 4c3369fb..508c1d0b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java @@ -1,78 +1,29 @@ package com.hzs.member.address.service.impl; -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.member.account.vo.ApprovalDetailVO; import com.hzs.member.address.mapper.CuMemberGiftMapper; -import com.hzs.member.address.service.ICuMemberGiftRecordService; import com.hzs.member.address.service.ICuMemberGiftService; import com.hzs.member.address.vo.CuMemberGiftVO; import com.hzs.member.param.CuMemberGiftParam; -import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalQueryDTO; -import com.hzs.system.sys.dto.ApprovalQueryDetailDTO; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; /** - *

* 会员礼包收货地址 服务实现类 - *

- * - * @author hzs - * @since 2022-08-22 */ @Service public class CuMemberGiftServiceImpl extends ServiceImpl implements ICuMemberGiftService { - @DubboReference - IApprovalServiceApi approvalServiceApi; - ICuMemberGiftRecordService cuMemberGiftRecordService; - /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List - **/ + @Override public List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam) { return baseMapper.selectCuMemberGiftList(memberGiftParam); } - /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:07 - * @param: [pkId] - * @return: java.util.List - **/ @Override - public CuMemberGiftVO approvalDetail(Long pkId) { -/* CuMemberGiftVO memberGiftVO=new CuMemberGiftVO(); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("PK_CU_MEMBER_GIFT",pkId); - CuMemberGiftRecord memberGiftRecord=cuMemberGiftRecordService.getOne(queryWrapper); - //调用审批流 -// R approvalQueryResult = approvalServiceApi.approvalDetail(EApprovalBusiness.CU_MEMBER_GIFT,null,null); - R approvalQueryResult=null; - List approvalDetailVOS = new ArrayList<>(); - if (approvalQueryResult.isSuccess()) { - //转换审批详情 - List approvalQueryDetailDTOS = approvalQueryResult.getData().getDetailList(); - approvalQueryDetailDTOS.forEach(item -> approvalDetailVOS.add(BeanUtil.copyProperties(item, ApprovalDetailVO.class))); - } - memberGiftVO.setDetailList(approvalDetailVOS); - return memberGiftVO;*/ + public CuMemberGiftVO approvalDetail(Long pkId) { return null; } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java index af0321cf..e77f33a3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java @@ -21,7 +21,6 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.service.ICuMemberTeamService; import com.hzs.member.base.vo.CuMemberTeamVO; -import com.hzs.system.base.ITransactionServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,28 +31,19 @@ import java.util.List; /** * 会员所属团队(隶属团队)前端控制器 - * - * @author zhangjing - * @since 2022-09-16 */ @RestController @RequestMapping("/manage/member-team") public class CuMemberTeamController extends BaseController { @Autowired - private ICuMemberTeamService cuMemberTeamService; + private ICuMemberTeamService iCuMemberTeamService; - @DubboReference - ITransactionServiceApi iTransactionServiceApi; @DubboReference IMemberServiceApi iMemberServiceApi; /** - * @description: 查询会员所属团队(隶属团队)列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询会员所属团队(隶属团队)列表 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -62,16 +52,12 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); startPage(); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); return getDataTable(list); } /** - * @description: 隶属团队下拉选 - * @author: zhang jing - * @date: 2022/11/16 15:43 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 隶属团队下拉选 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/listNoPage") @@ -79,7 +65,7 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setPkCountry(SecurityUtils.getPkCountry()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); List listVo = new ArrayList<>(); list.forEach(item -> listVo.add(BeanUtil.copyProperties(item, CuMemberTeamVO.class))); return getDataTable(listVo); @@ -92,32 +78,24 @@ public class CuMemberTeamController extends BaseController { */ @GetMapping("/find-all") public AjaxResult findAll() { - return AjaxResult.success(cuMemberTeamService.list( + return AjaxResult.success(iCuMemberTeamService.list( Wrappers.lambdaQuery().eq(CuMemberTeam::getSystemType, SecurityUtils.getSystemType())) ); } /** * 根据体系查询团队配置 - * - * @param pkVertexList - * @return */ @GetMapping("/find-vertex") public AjaxResult findByVertex(@RequestParam List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CuMemberTeam::getPkBdVertex, pkVertexList); queryWrapper.orderByAsc(CuMemberTeam::getTeamName); - return AjaxResult.success(cuMemberTeamService.list(queryWrapper)); + return AjaxResult.success(iCuMemberTeamService.list(queryWrapper)); } - /** - * @description: 新增会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.INSERT) @PostMapping("/save") @@ -139,29 +117,20 @@ public class CuMemberTeamController extends BaseController { } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); cuMemberTeam.setPkCountry(pkCountry); cuMemberTeam.setPkCreator(SecurityUtils.getUserId()); cuMemberTeam.setCreationTime(new Date()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - return toAjax(cuMemberTeamService.save(cuMemberTeam)); + return toAjax(iCuMemberTeamService.save(cuMemberTeam)); } - /** - * @description: 修改会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -186,52 +155,31 @@ public class CuMemberTeamController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); queryWrapper.ne(CuMemberTeam::getPkId, cuMemberTeam.getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - - if (null != cuMemberTeam.getPkTransaction()) { - iTransactionServiceApi.updateTransaction(pkCountry, - cuMemberTeam.getTeamName(), cuMemberTeam.getPkTransaction(), true); - } else { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); - } - cuMemberTeam.setPkModified(SecurityUtils.getUserId()); cuMemberTeam.setModifiedTime(new Date()); - return toAjax(cuMemberTeamService.updateById(cuMemberTeam)); + return toAjax(iCuMemberTeamService.updateById(cuMemberTeam)); } - /** - * @description: 查询单条会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { CuMemberTeamExt memberTeam = new CuMemberTeamExt(); memberTeam.setPkId(pkId); - List cuMemberTeam = cuMemberTeamService.queryCuMemberTeam(memberTeam); + List cuMemberTeam = iCuMemberTeamService.queryCuMemberTeam(memberTeam); CuMemberTeamExt cuMemberTeamExt = cuMemberTeam.get(0); return AjaxResult.success(cuMemberTeamExt); } - /** - * @description: 删除会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") @@ -241,37 +189,26 @@ public class CuMemberTeamController extends BaseController { updateWrapper.set(CuMemberTeam::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(CuMemberTeam::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(CuMemberTeam::getModifiedTime, new Date()); - //删除翻译 - CuMemberTeam memberTeam = cuMemberTeamService.getById(pkId); - List pkIdList = new ArrayList<>(); - pkIdList.add(memberTeam.getPkTransaction().longValue()); - iTransactionServiceApi.removeTransactionByPkId(pkIdList); - return toAjax(cuMemberTeamService.update(updateWrapper)); + return toAjax(iCuMemberTeamService.update(updateWrapper)); } /** - * @description: 更新所属团队(隶属团队) - * @author: sui q - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 更新所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/update-team/{pkTeamCode}") public AjaxResult updateTeamByVertex(@PathVariable Long pkTeamCode) { - cuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); + iCuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); return AjaxResult.success(); } /** * 刷新全部团队 - * - * @return */ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/flush-all") public AjaxResult flushAll() { - cuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); + iCuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); return AjaxResult.success(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java index 8d9618e1..cf2aad12 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberAgent; /** - *

* 会员信息-代理商信息 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface CuMemberAgentMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index 218c4d88..e935b14c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -246,15 +246,6 @@ public interface CuMemberMapper extends BaseMapper { */ List parentList(@Param("pkParent") Long pkParent, @Param("memberCode") String memberCode, @Param("memberName") String memberName, @Param("startCreateTime") Date startCreateTime, @Param("endCreateTime") Date endCreateTime, @Param("memberInfo") String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(@Param("topCode") String topCode, @Param("pkMember") Long pkMember); - /** * 校验会员编号是否存在 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java index 9683ac95..5cb5cd22 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java @@ -2,24 +2,10 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** - *

* 分享注册记录会员 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-15 */ public interface CuMemberShareMapper extends BaseMapper { - /** - * 海粉列表 - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java index 1c6e70ab..9c5d4fb7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java @@ -2,22 +2,16 @@ package com.hzs.member.base.provider; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuAwardsControlServiceApi; import com.hzs.member.base.dto.CuAwardsControlDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import com.hzs.system.config.dto.ServiceChargeDTO; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -27,8 +21,6 @@ import java.util.Map; /** * 真实奖衔控制涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceApi { @@ -36,39 +28,28 @@ public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceAp @Autowired private ICuMemberServiceLogService memberServiceLogService; @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; - @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * @description: 查询真实奖衔控制审核列表 - * @author: zhang jing - * @date: 2023/4/10 15:17 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> awardsControlList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); List list = new ArrayList<>(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); for (CuMemberServiceLog cs : msList) { //查询扣费金额,账户信息 CuAwardsControlDTO control = JSONObject.parseObject(cs.getNewValue(), CuAwardsControlDTO.class); control.setCost(control.getCost()); control.setPkAccount(control.getPkAccount()); - if(control.getPkAccount()!=null){ - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(control.getPkAccount()); + if (control.getPkAccount() != null) { + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(control.getPkAccount()); control.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); } control.setPkMember(cs.getPkMember()); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java index a76bfd34..792b27a4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java @@ -2,27 +2,18 @@ package com.hzs.member.base.provider; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuMemberAchieveLogServiceApi; import com.hzs.member.base.dto.CuMemberAchieveLogDTO; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.config.IAwardsServiceApi; -import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; import lombok.extern.slf4j.Slf4j; @@ -34,68 +25,47 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; -/** - * @description: - * @author: zhang jing - * @date: 2023/3/28 16:57 - * @param: - * @return: - **/ @Slf4j @DubboService public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogServiceApi { - @Autowired - private ICuMemberServiceLogService memberServiceLogService; - @Autowired - private ICuHandleBusinessService handleBusinessService; - @DubboReference - private IGradeServiceApi gradeServiceApi; - @DubboReference - private IAwardsServiceApi awardsServiceApi; - @DubboReference - private ICountryServiceApi countryServiceApi; @Autowired private ICuMemberAchieveLogService achieveLogService; @Autowired private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * 解析注水业绩诉求信息 - * - * @param analysisBusinessAppealParam 业务信息 - * @return R - */ + + @DubboReference + IServiceChargeServiceApi iServiceChargeServiceApi; + @Override public R> memberAchieveLog(AnalysisBusinessAppealParam analysisBusinessAppealParam) { - CuMemberAchieveLogVO cuMemberAchieveLogVO=new CuMemberAchieveLogVO(); - List list=new ArrayList<>(); + CuMemberAchieveLogVO cuMemberAchieveLogVO = new CuMemberAchieveLogVO(); + List list = new ArrayList<>(); cuMemberAchieveLogVO.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); List list1 = achieveLogService.queryTryAchieveLogList(cuMemberAchieveLogVO); - if(CollectionUtil.isNotEmpty(list1)){ + if (CollectionUtil.isNotEmpty(list1)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); Integer pkCountry = list1.get(0).getPkCountry(); - for(CuMemberAchieveLogVO cmal:list1){ + for (CuMemberAchieveLogVO cmal : list1) { Integer maxSecond = cuMemberAchieveLogService.selectByMaxApproveNumber(cmal.getPkMember(), EApproveStatus.FINISH.getValue()); //查询扣费金额,账户信息 ServiceChargeDTO serviceChargeDTO = new ServiceChargeDTO(); serviceChargeDTO.setType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); serviceChargeDTO.setQuantity(maxSecond + 1); serviceChargeDTO.setPkCountry(pkCountry); - R serviceChargeDTOR = serviceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); + R serviceChargeDTOR = iServiceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); //接口查询金额是否足够 cmal.setCost(serviceChargeDTOR.getData().getCost()); cmal.setPkAccount(serviceChargeDTOR.getData().getPkAccount()); - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); cmal.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); - cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getSettleDate())); - cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getDueDate())); + cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getSettleDate())); + cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getDueDate())); } } list1.forEach(item -> list.add(BeanUtil.copyProperties(item, CuMemberAchieveLogDTO.class))); @@ -104,5 +74,4 @@ public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogSe } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java deleted file mode 100644 index a7fa4e0c..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.member.base.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import com.hzs.member.base.IMemberLevelServiceApi; -import com.hzs.member.detail.service.ICuMemberLevelService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @Description: 会员等级相关dubbo服务 - * @Author: jiang chao - * @Time: 2025/2/27 9:25 - * @Classname: MemberLevelServiceProvider - * @PackageName: com.hzs.member.base.provider - */ -@DubboService -public class MemberLevelServiceProvider implements IMemberLevelServiceApi { - - @Autowired - private ICuMemberLevelService iCuMemberLevelService; - - @Override - public R> listMemberLevel(Long pkMember, Long pkOrder) { - return R.ok(iCuMemberLevelService.listMemberLevel(pkMember, pkOrder)); - } -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 6d2fb93d..50a00a47 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -5,11 +5,9 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ELoginType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -20,8 +18,6 @@ import com.hzs.member.base.service.*; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.swing.param.CuMemberSwingNetParam; -import com.hzs.member.swing.service.ICuMemberSwingNetService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -44,8 +40,6 @@ public class MemberServiceProvider implements IMemberServiceApi { @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Autowired - private ICuMemberRegisterService iCuMemberRegisterService; - @Autowired private ICuMemberEmptyCodeService iCuMemberEmptyCodeService; @Override @@ -181,11 +175,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R queryCuMemberByPkMember(Long pkReference) { - return R.ok(iCuMemberService.queryCuMemberByPkMember(pkReference)); - } - @Override public R saveMember(SaOrderExt saOrder, CuMemberAccountExt cuMemberAccountExt) { try { @@ -215,11 +204,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R createMemberIdAndCode(CuMember cuMember) { - return R.ok(iCuMemberService.createMemberIdAndCode(cuMember)); - } - @Override public R createRegisterMemberCode(CuMember cuMember) { return R.ok(iCuMemberService.createRegisterMemberCode(cuMember)); @@ -245,11 +229,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.findMemberByMemberId(pkMemberList, pkCountry)); } - @Override - public R queryCuMemberRegister(Long pkMember) { - return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); - } - @Override public R updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { try { @@ -274,11 +253,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberBusinessService.updateMemberLevel(cuMember, saOrder, pkOldLevel)); } - @Override - public R checkParent(String topCode, Long userId) { - return R.ok(iCuMemberService.checkParent(topCode, userId) > 0); - } - @Override public Integer getAwardsTranslateValue(Integer pkCountry, Integer pkId) { return iCuMemberService.getAwardsTranslateValue(pkCountry, pkId); @@ -378,9 +352,4 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } - - @Override - public R queryCuMemberShare(Long pkMember) { - return R.ok(iCuMemberShareService.queryCuMemberShare(pkMember)); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java index 02257292..f6b0a1b1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java @@ -1,24 +1,19 @@ package com.hzs.member.base.provider; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EPopupType; import com.hzs.common.core.enums.EnableStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; -import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.IUpPolicyCurrencyServiceApi; import com.hzs.member.base.dto.UpPolicyCurrencyDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -28,8 +23,6 @@ import java.util.Map; /** * 修改政策币涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyServiceApi { @@ -39,28 +32,20 @@ public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyService @Autowired private ITransactionCommonService iTransactionCommonService; - - /** - * @description: 查询修改政策币审核列表 - * @author: zhang jing - * @date: 2023/5/10 17:42 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> policyCurrencyList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { List list = new ArrayList<>(); CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); - Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(),EnableStatus.values(), EPopupType.values()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); + Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(), EnableStatus.values(), EPopupType.values()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { msList.forEach(item -> { UpPolicyCurrencyDTO upc = JSONObject.parseObject(item.getNewValue(), UpPolicyCurrencyDTO.class); - upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS+upc.getEnableStatus())); - upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE+upc.getTransfer())); + upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS + upc.getEnableStatus())); + upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE + upc.getTransfer())); list.add(upc); }); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java index a8a7706f..c152436b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java @@ -1,111 +1,53 @@ package com.hzs.member.base.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** - *

* 注水业绩记录表 服务类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ public interface ICuMemberAchieveLogService extends IService { /** - * @description: 特殊业务-注水业绩记录查询 - * @author: zhang jing - * @date: 2023/2/3 17:16 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩记录查询 **/ List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 特殊业务-注水业绩-审核列表 - * @author: zhang jing - * @date: 2023/3/28 16:28 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩-审核列表 **/ List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 查询某一期历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:20 - * @param: [calList] - * @return: java.util.List + * 查询某一期历史业绩 **/ List queryMemberAchieveHistoryList(List calList); /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:13 - * @param: [tableName, cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询单个会员当期业绩 **/ - CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO,Integer pkCountry); - /** - * @description: 查询最大审核次数 - * @author: zhang jing - * @date: 2023/2/6 16:10 - * @param: [pkMember, approveStatus] - * @return: java.lang.Integer - **/ - Integer selectByMaxApproveNumber(Long pkMember,int approveStatus); + CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry); /** - * @description: 注水业绩 - * @author: zhang jing - * @date: 2023/4/11 19:15 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询最大审核次数 + **/ + Integer selectByMaxApproveNumber(Long pkMember, int approveStatus); + + /** + * 注水业绩 **/ CuMemberAchieveLogVO infusingWater(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 发起签呈 - * @author: zhang jing - * @date: 2023/4/11 19:18 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 发起签呈 **/ CuMemberAchieveLogVO petition(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 审核注水业绩 - * @author: zhang jing - * @date: 2023/2/9 17:45 - * @param: [cuMemberAchieveLogVO] - * @return: boolean - **/ - boolean toExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO); - - /** - * 根据期间查询特殊业务注水业务,用于更新业绩,奖金计算使用 - * @param period 期间 - * @return: List - * @Author: sui q - * @Date: 2023/3/11 11:26 - */ - List queryMemberAchieveLogByPeriod(Integer period); - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List + * 校验是否存在未审核数据 **/ List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java index 7cb2bd87..1a698b6c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java @@ -7,20 +7,8 @@ import java.util.List; import java.util.Map; /** - *

* 会员信息-代理商信息 服务类 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface ICuMemberAgentService extends IService { - /** - * 查询所有的代理商会员会员 key 国家 +省 + 市 - * @return: List - * @Author: sui q - * @Date: 2023/1/5 15:16 - */ - Map> queryCuMemberAgent(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java index 11de7110..4b86fa28 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java @@ -123,15 +123,6 @@ public interface ICuMemberBusinessService { */ void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder); - /** - * 校验订单调换货物余额是否足够 - * - * @param saOrder 订单 - * @param updateOrder 新订单 - * @return - */ - String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder); - /** * 订单调换货物扣费处理 * @@ -142,17 +133,6 @@ public interface ICuMemberBusinessService { */ void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj); - /** - * 订单退单 - * - * @param saOrder 订单 - * @param userId 操作用户ID - * @param changeAmount 变动金额(除订单退回外,又追加的补偿或者扣款) -- 非必传 - * @param changeRemark 变动备注 -- 非必传 - * @return - */ - void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark); - /** * 订单退单注册会员 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index 1d4ae7f3..f2e6edae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -19,13 +19,6 @@ public interface ICuMemberRegisterService extends IService { */ List queryCuMemberRegisterExeByCondition(MemberParam memberParam); - /** - * 根据会员主键查询会员注册信息 - * - * @param pkMember 会员主键 - */ - CuMemberRegister queryCuMemberRegister(Long pkMember); - /** * 将用户注册表信息更改为死点 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 5aa1b321..777c21a1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -40,11 +40,6 @@ public interface ICuMemberService extends IService { */ Boolean saveMember(CuMember cuMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 根据会员编号获取会员信息(查库) * @@ -467,15 +462,6 @@ public interface ICuMemberService extends IService { */ List parentList(Long pkParent, String memberCode, String memberName, Date startCreateTime, Date endCreateTime, String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(String topCode, Long pkMember); - /** * 校验会员编号是否存在 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java index 9bac0405..3ee1fa76 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java @@ -2,30 +2,10 @@ package com.hzs.member.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** * 分享注册记录会员 服务类 - * - * @author hzs - * @since 2023-03-15 */ public interface ICuMemberShareService extends IService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); - /** - * 查询会员分享 - * - * @param pkMember 会员主键 - */ - CuMemberShare queryCuMemberShare(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java index 000e1c0d..2b3c8bc2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java @@ -2,9 +2,6 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; @@ -19,22 +16,18 @@ import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; -import com.hzs.member.account.dto.MemberAmountDTO; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.mapper.CuMemberAchieveLogMapper; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; import com.hzs.system.sys.dto.BusinessLogDTO; import com.hzs.system.sys.dto.LoginUser; import org.apache.dubbo.config.annotation.DubboReference; -import org.apache.ibatis.annotations.Param; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -42,20 +35,10 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneId; -import java.time.ZonedDateTime; -import java.time.temporal.ChronoUnit; import java.util.*; /** - *

* 注水业绩记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ @Service public class CuMemberAchieveLogServiceImpl extends ServiceImpl implements ICuMemberAchieveLogService { @@ -64,124 +47,37 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @DubboReference + ICurrencyServiceApi currencyServiceApi; + @Override public List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { - //先查询 -// List listAll = new ArrayList<>(); -// if (StringUtils.isNotNull(cuMemberAchieveLogVO.getStartDate()) && -// StringUtils.isNotNull(cuMemberAchieveLogVO.getEndtDate())) { -// Instant startInstant = cuMemberAchieveLogVO.getStartDate().toInstant(); -// Instant endInstant = cuMemberAchieveLogVO.getEndtDate().toInstant(); -// ZoneId zoneId = ZoneId.systemDefault(); -// LocalDate startLocalDate = startInstant.atZone(zoneId).toLocalDate(); -// LocalDate endLocalDate = endInstant.atZone(zoneId).toLocalDate(); -// //根据日期范围遍历日期 -// for (LocalDate localDate = startLocalDate; localDate.isBefore(endLocalDate); -// localDate = localDate.plusDays(1)) { -// ZonedDateTime zdt = localDate.atStartOfDay(zoneId); -// Date date = Date.from(zdt.toInstant()); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// listAll.addAll(list); -// } -// } else { -// Date date = new Date(); -// date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// listAll = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// } //先查询注水日志表 - List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), + return baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), cuMemberAchieveLogVO.getInfusingWaterType()); -// if (CollectionUtil.isNotEmpty(list)) { -// list.forEach(itm -> { -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, itm.getSettleDate()); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// //查询最新期数 -// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( -// DateUtils.parseDateToStr(datestr)).getPkId(); -// itm.setPeriod(period); -// itm.setTableName(tableName); -// }); -// List achieveHistoryList = baseMapper.queryMemberAchieveHistoryList(list); -// if (CollectionUtil.isNotEmpty(achieveHistoryList)) { -// list.forEach(itm -> { -// achieveHistoryList.forEach(itmm -> { -// if (itmm.getPkMember().equals(itm.getPkMember()) && -// itmm.getPeriod().equals(itm.getPeriod())) { -// itm.setAbalance(itmm.getAbalance()); -// itm.setBbalance(itmm.getBbalance()); -// itm.setAsumPv(itmm.getAsumPv()); -// itm.setBsumPv(itmm.getBsumPv()); -// itm.setAsumRealPv(itmm.getAsumRealPv()); -// itm.setBsumRealPv(itmm.getBsumRealPv()); -// itm.setRepABalance(itmm.getRepABalance()); -// itm.setRepBBalance(itmm.getRepBBalance()); -// itm.setRepASumPv(itmm.getRepASumPv()); -// itm.setRepBSumPv(itmm.getRepBSumPv()); -// } -// }); -// }); -// } -// } - return list; } - /** - * @description: 查询某一期的历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:19 - * @param: [calList] - * @return: java.util.List - **/ + @Override public List queryMemberAchieveHistoryList(List calList) { List list = baseMapper.queryMemberAchieveHistoryList(calList); R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - BigDecimal exchangeRate = SecurityUtils.getPkCountry() == CountryConstants.CHINA_COUNTRY ? currency.getData().getInExchangeRate() : BigDecimal.ONE; + BigDecimal exchangeRate = SecurityUtils.getPkCountry().equals(CountryConstants.CHINA_COUNTRY) ? currency.getData().getInExchangeRate() : BigDecimal.ONE; List listnew = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { list.forEach(itm -> { @@ -201,26 +97,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl + * 特殊业务-注水业绩-审核列表 **/ public List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { return baseMapper.queryTryAchieveLogList(cuMemberAchieveLogVO.getApproveStatus(), cuMemberAchieveLogVO.getBusinessNo()); } - - /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:14 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO - **/ @Override public CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry) { CuMemberAchieveLogVO achieveLogVO = new CuMemberAchieveLogVO(); @@ -256,25 +139,11 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免签呈 或 免签呈+免支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDSIGNING.getValue() || @@ -363,7 +232,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -437,13 +315,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl dtoList = new ArrayList<>(); //业务单号 String code = CommonUtil.createSerialNumber(EOrderPrefix.MEMBER_ACHIEVE.getValue()); - Set pkMemberIds = new HashSet<>(); cuMemberAchieveLogVO.setPkAccount(cuMemberAchieveLogVO.getCmalvList().get(0).getPkAccount()); for (CuMemberAchieveLogVO cmal : cuMemberAchieveLogVO.getCmalvList()) { @@ -469,14 +339,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免支付 或 需签呈+支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDPAY.getValue() || cuMemberAchieveLogVO.getProcessType() == EProcessType.DOUBLEPAY.getValue()) { - pkMemberIds.add(cmal.getPkMember()); CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); memberAchieveLog.setASumRealModifyPv(cmal.getAsumRealModifyPv()); memberAchieveLog.setBSumRealModifyPv(cmal.getBsumRealModifyPv()); @@ -502,7 +371,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 更后右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 更后右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -594,96 +472,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", approvalBusinessResultDTO.getBusinessCode()); - queryWrapper.eq("APPROVE_STATUS", EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = baseMapper.selectList(queryWrapper); - //审核通过 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - //修改日志表审核状态 - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - updateWrapper.set("APPROVE_STATUS", EApproveStatus.FINISH.getValue()); - updateWrapper.set("MODIFIED_TIME", date); - updateWrapper.set("PK_MODIFIED", userID); - baseMapper.update(null, updateWrapper); - } - } - } - //审核驳回 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - List memberAmountDTOList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - if (StringUtils.isNotNull(cmal.getCost()) && cmal.getCost().compareTo(BigDecimal.ZERO) > 0) { - MemberAmountDTO memberAmountDTO = new MemberAmountDTO(); - memberAmountDTO.setPkMember(cmal.getPkMember()); - memberAmountDTO.setTradeAmount(cmal.getCost()); - memberAmountDTO.setPkAccount(cmal.getPkAccount()); - memberAmountDTOList.add(memberAmountDTO); - } - //修改日志表审核状态 - CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); - memberAchieveLog.setModifiedTime(date); - memberAchieveLog.setPkModified(userID); - memberAchieveLog.setPkCountry(pkCountry); - memberAchieveLog.setApproveStatus(EApproveStatus.REJECTED.getValue()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - baseMapper.update(memberAchieveLog, updateWrapper); - } - if (CollectionUtil.isNotEmpty(memberAmountDTOList)) { - //退款 - BusinessCommissionDTO businessCommissionDTO = new BusinessCommissionDTO(); - businessCommissionDTO.setPkCountry(pkCountry); - businessCommissionDTO.setPkAccount(memberAmountDTOList.get(0).getPkAccount()); - businessCommissionDTO.setMemberAmountDTOList(memberAmountDTOList); - businessCommissionDTO.setTradeType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); - businessCommissionDTO.setTradeCode(approvalBusinessResultDTO.getBusinessCode()); - businessCommissionDTO.setPkCreator(approvalBusinessResultDTO.getLoginUser().getUserId()); - Boolean result = cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO, EApproveStatus.REJECTED); - if (!result) { - throw new ServiceException(ConfigMsgConstants.MEMBER_ACHIEVE_IS_REFUND); - } - } - } - } - return true; - } - - @Override - public List queryMemberAchieveLogByPeriod(Integer period) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - queryWrapper.in(SystemFieldConstants.APPROVE_STATUS, EApproveStatus.FINISH.getValue()); - queryWrapper.orderByAsc(MemberFieldConstants.PK_MEMBER, SystemFieldConstants.CREATION_TIME); - return baseMapper.selectList(queryWrapper); - } - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List - **/ @Override public List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO) { return baseMapper.checkAchieveList(memberAchieveLogVO); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java index dc9b6cbf..8142128b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java @@ -1,48 +1,15 @@ package com.hzs.member.base.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; -import com.hzs.common.core.enums.EAgentType; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.member.base.CuMemberAgent; import com.hzs.member.base.mapper.CuMemberAgentMapper; import com.hzs.member.base.service.ICuMemberAgentService; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** - *

* 会员信息-代理商信息 服务实现类 - *

- * - * @author hzs - * @since 2022-08-31 */ @Service public class CuMemberAgentServiceImpl extends ServiceImpl implements ICuMemberAgentService { - @Override - public Map> queryCuMemberAgent() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select(" pk_member,agent_province,agent_city,agent_county,agent_grade,pk_country ") - .eq(MemberFieldConstants.AGENT_TYPE, EAgentType.AGENT.getValue()); - List cuMemberAgentList = baseMapper.selectList(queryWrapper); - Map> cuMemberAgentMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAgentList.size())); - cuMemberAgentList.forEach(cuMemberAgent -> { - String key = cuMemberAgent.getPkCountry().toString() + cuMemberAgent.getAgentProvince().toString() + cuMemberAgent.getAgentCity().toString(); - if(cuMemberAgentMap.containsKey(key)){ - cuMemberAgentMap.get(key).add(cuMemberAgent); - }else{ - List cuMemberAgents = new ArrayList<>(); - cuMemberAgents.add(cuMemberAgent); - cuMemberAgentMap.put(key, cuMemberAgents); - } - }); - return cuMemberAgentMap; - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index 0c0ee068..fa151657 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -29,7 +28,6 @@ import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -90,13 +88,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Autowired private RabbitTemplate rabbitTemplate; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired private ICuMemberService cuMemberService; private ICuMemberRegisterService cuMemberRegisterService; - @Autowired - private ICuMemberAccountService iCuMemberAccountService; - - private ICuMemberAccountService cuMemberAccountService; private ICuMemberTradeService cuMemberTradeService; @@ -142,16 +139,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { this.cuMemberTradeService = cuMemberTradeService; } - @Autowired - public void setCuMemberAccountService(ICuMemberAccountService cuMemberAccountService) { - this.cuMemberAccountService = cuMemberAccountService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - @Autowired public void setCuMemberRegisterService(ICuMemberRegisterService cuMemberRegisterService) { this.cuMemberRegisterService = cuMemberRegisterService; @@ -311,7 +298,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); } private void saveMemberRecords(CuMember cuMember, SaOrder saOrder) { @@ -375,7 +362,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccount.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); if (cuMemberAccountExtList.size() == 0) { throw new RuntimeException("没有找到会员账户"); } @@ -544,7 +531,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } // 更新账户余额 try { - if (!cuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { + if (!iCuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { throw new RuntimeException("用户付款失败,请重试!"); } } finally { @@ -599,7 +586,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberByRegisterOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { // 会员账号 验证会员账户是否存在金额 @@ -634,7 +621,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberBySelfRevokeOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); // 回退给创建人 - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { // 会员账号 验证会员账户是否存在金额 CuMember member = cuMemberService.getMember(saOrder.getPkMember()); @@ -678,7 +665,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { CuMemberAccount cuMemberAccountParam = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccountParam.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); if (CollectionUtil.isEmpty(cuMemberAccountExtList)) { return Boolean.FALSE; } @@ -861,7 +848,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 按照memberList 倒叙往后删除 Date currentDateTime = DateUtils.currentDateTime(); List centerIdList = saOrderMap.values().stream().map(BaseEntity::getPkCreator).distinct().collect(Collectors.toList()); - List cuMemberAccountList = cuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); + List cuMemberAccountList = iCuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); Map cuMemberAccountMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAccountList.size())); cuMemberAccountList.forEach(cuMemberAccount -> cuMemberAccountMap.put(cuMemberAccount.getPkMember(), cuMemberAccount)); @@ -873,7 +860,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 回退奖衔,根据订单从 cu_member_awards查询 cuMemberAwardsService.deleteCuMemberAwards(saOrder.getPkId(), pkApprove, currentDateTime); cuMemberService.deleteCuMemberByPkMember(pkMember, pkApprove, currentDateTime); - cuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); + iCuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); // 撤销正常订单,修改 cu_member_register 账户状态为死点 CuMemberRegister cuMemberRegister = new CuMemberRegister(); cuMemberRegister.setPkMember(pkMember); @@ -939,7 +926,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override @Transactional(rollbackFor = Exception.class) public Boolean cancelMemberAccount(Long pkMember, SaOrder saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 回退账号余额 cancelOrderBackAccount(pkMember, saOrder, payMemberAccount); return Boolean.TRUE; @@ -947,7 +934,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override public void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); BigDecimal backOrderAmount = saOrder.getBackOrderAmount(); // 考虑部分撤单 // 部分退,回退金额按照 币种扣除的倒叙扣除 现金->消费->奖金 奖金->消费->现金 @@ -1019,62 +1006,18 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { saveAndUpdateCuMember(cuMemberTradeList, updateMemberAccount); } - @Transactional(rollbackFor = Exception.class) - @Override - public String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - // 查询会员订单支付币种 - List cuMemberTrades = cuMemberTradeService.queryCuMemberTrade(saOrder.getPkCreator(), saOrder.getOrderCode()); - - // 查询会员当前余额 - CuMemberAccount cuMemberAccount = new CuMemberAccount(); - cuMemberAccount.setPkCountry(saOrder.getPkCountry()); - cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); - - if (CollectionUtil.isNotEmpty(cuMemberTrades)) { - List currencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyByPkCountry(saOrder.getPkCountry()).getData(); - Map areaCurrencyMap = new HashMap<>(); - currencyDTOList.forEach(areaCurrencyDTO -> areaCurrencyMap.put(areaCurrencyDTO.getPkAccount(), areaCurrencyDTO)); - - for (CuMemberTrade cuMemberTrade : cuMemberTrades) { - BigDecimal tradeMoney = cuMemberTrade.getTradeAmount().negate(); - - AreaCurrencyDTO currencyDto = areaCurrencyMap.get(cuMemberTrade.getPkAccount()); - // 用于更新账户余额 - BigDecimal oriTradeMoney = ReflectUtils.invokeGetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue()); - ReflectUtils.invokeSetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue(), ComputeUtil.computeAdd(oriTradeMoney, tradeMoney)); - } - } - - // 获取需要扣除币种金额 - R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); - if (!resultR.isSuccess()) { - log.error("调换货物校验余额是否足够失败: {}", resultR.getMsg()); - return "调换货物校验余额是否足够失败"; - } - CuMemberAccountExt cuMemberAccountExt = resultR.getData(); - if (!cuMemberAccountExt.getIsPayment()) { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY); - } else { - return cuMemberAccountExt.getErrorMsg(); - } - } - return null; - } - @Transactional(rollbackFor = Exception.class) @Override public void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj) { if (null != saOrder && null != updateOrder) { // 撤销订单 - this.cancelOrderBackAccount(userId, saOrder, cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); + this.cancelOrderBackAccount(userId, saOrder, iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); // 查询会员当前余额 CuMemberAccount cuMemberAccount = new CuMemberAccount(); cuMemberAccount.setPkCountry(saOrder.getPkCountry()); cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); + CuMemberAccountExt tmpCuMemberAccount = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); // 获取需要扣除各币种金额 R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); @@ -1113,129 +1056,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } } - @Transactional(rollbackFor = Exception.class) - @Override - public void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - // 当前时间 - Date nowDate = new Date(); - // 订单编号 - String orderCode = saOrder.getOrderCode(); - // 订单购买人 - Long pkMember = saOrder.getPkCreator(); - // 订单所属国 - Integer pkCountry = saOrder.getPkCountry(); - - // 更新账户余额 - CuMemberAccount updateMemberAccount = new CuMemberAccount(); - updateMemberAccount.setPkMember(pkMember); - updateMemberAccount.setPkCountry(pkCountry); - // 红冲交易明细数据 - List saveMemberTradeList = new ArrayList<>(); - - // 查询订单创建人账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); - // 订单所属专区扣币的第一位配置 - AreaCurrencyDTO areaCurrencyDTO = iAreaCurrencyServiceApi.queryAreaCurrencyByCondition(saOrder.getOrderType(), pkCountry).getData().get(0); - // 专区扣币的第一位配置所用字段 - String accountField = MemberFieldConstants.ACCOUNT + areaCurrencyDTO.getFieldValue(); - - if (EOrderPayType.WALLET.getValue() == saOrder.getPayType()) { - // 钱包支付 - // 查询之前订单的支付明细 - List memberTradeList = cuMemberTradeService.querySourceCodeLastTrade(pkMember, orderCode, null); - - // 获取所有账户配置ID - List pkAccountList = memberTradeList.stream().map(CuMemberTrade::getPkAccount).collect(Collectors.toList()); - // 账户对应账户配置map - Map accountMap = iAccountServiceApi.getAccountMap(pkAccountList).getData(); - - // 根据之前交易明细,生成红冲交易数据 - for (CuMemberTrade cuMemberTrade : memberTradeList) { - // 账户取值所用字段 - String field = MemberFieldConstants.ACCOUNT + accountMap.get(cuMemberTrade.getPkAccount()).getFieldValue(); - // 交易金额 - BigDecimal tradeAmount = cuMemberTrade.getTradeAmount().negate(); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, field); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装红冲交易明细 - saveMemberTradeList.add(this.createMemberTradeByTrade(cuMemberTrade, ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, field, tradeBalance); - // 设置更新账户变动余额 - ReflectUtils.invokeSetter(updateMemberAccount, field, tradeAmount); - } - } else { - // 在线支付 - // 交易金额(订单金额 + 邮费) - BigDecimal tradeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, accountField, tradeBalance); - // 设置更新账户余额 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, tradeAmount); - } - - if (null != changeAmount && changeAmount.compareTo(BigDecimal.ZERO) != 0) { - // 存在退返金额 并且不为0,则进行处理,退回给订单所属专区扣币第一位配置 - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.ORDER_REFUND_ADJUST, ETradeClassify.REFUND, tradeBeforeBalance, changeAmount, changeRemark, userId)); - - // 变动前账户 - BigDecimal changeBeforeAccount = ReflectUtils.invokeGetter(updateMemberAccount, accountField); - if (null == changeBeforeAccount) { - // 如果为空,直接赋值 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeAmount); - } else { - // 如果不为空,进行累加 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeBeforeAccount.add(changeAmount)); - } - } - - // 批量插入会员明细 - cuMemberTradeService.batchSaveTradeByMemberCode(saveMemberTradeList); - - // 奖金账户有变化,需要同步处理 可提现奖金账户 - BigDecimal bonusBigDecimal = ReflectUtils.invokeGetter(updateMemberAccount, MemberFieldConstants.ACCOUNT + 4); - if (null != bonusBigDecimal && bonusBigDecimal.compareTo(BigDecimal.ZERO) != 0) { - // 奖金账户变化不为空,则需要同步处理 奖金可提现账户 - ReflectUtils.invokeSetter(updateMemberAccount, MemberFieldConstants.WITHDRAW_ACCOUNT + 4, bonusBigDecimal); - } - // 更新会员余额 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); - - // 更新创建人账号(根据订单类型不同,进行处理) - switch (EOrderType.getEnumByValue(saOrder.getOrderType())) { - case REGISTER_ORDER: - // 注册类订单,需要更新用户为已注销状态 - LambdaUpdateWrapper memberUpdateWrapper = new LambdaUpdateWrapper<>(); - memberUpdateWrapper.eq(CuMember::getPkId, saOrder.getPkMember()); - memberUpdateWrapper.set(CuMember::getPkModified, userId); - memberUpdateWrapper.set(CuMember::getModifiedTime, nowDate); - memberUpdateWrapper.set(CuMember::getCategory, ECategory.LOGGED_OUT.getValue()); - cuMemberService.update(memberUpdateWrapper); - // 添加会员信息修改记录 - CuMemberChangeLog cuMemberChangeLog = new CuMemberChangeLog(); - cuMemberChangeLog.setPkMember(saOrder.getPkMember()); - cuMemberChangeLog.setChangeType(EMemberChangeType.ORDER_RETURN.getValue()); - cuMemberChangeLog.setChangeAfter(ECategory.LOGGED_OUT.getLabel()); - cuMemberChangeLogService.save(cuMemberChangeLog); - } - } - @Transactional(rollbackFor = Exception.class) @Override public void orderReturnMember(List pkMemberList, Long userId) { @@ -1342,7 +1162,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { Date nowDate = new Date(); // 会员账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount cuMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 会员更新账户 CuMemberAccount updateMemberAccount = new CuMemberAccount(); updateMemberAccount.setPkMember(pkMember); @@ -1371,7 +1191,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 保存会员交易明细 cuMemberTradeService.save(cuMemberTrade); // 更新会员账户 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); + iCuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); return null; } @@ -1395,7 +1215,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); // 保存会员注册信息 CuMemberRegister cuMemberRegister = BeanUtil.copyProperties(cuMember, CuMemberRegister.class); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index 002e2a6c..d2dc5e91 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -27,15 +27,6 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRegister::getPkMember, pkMember); - queryWrapper.orderByAsc(CuMemberRegister::getPayTime); - List cuMemberRegisters = baseMapper.selectList(queryWrapper); - return cuMemberRegisters.get(0); - } - @Override public void updateCuMemberRegister(CuMemberRegister cuMemberRegister) { baseMapper.updateCuMemberRegister(cuMemberRegister); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 6374a91a..38f59014 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -140,21 +140,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return save; } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMember::getPkParent, pkReference); - queryWrapper.eq(CuMember::getCategory, ECategory.NORMAL.getValue()); - queryWrapper.eq(CuMember::getPayStatus, EPayStatus.PAID.getValue()); - List customerList = new ArrayList<>(); - customerList.add(ECustomerType.NORMAL.getValue()); - customerList.add(ECustomerType.EMPTY_ORDER.getValue()); - customerList.add(ECustomerType.FANS.getValue()); - queryWrapper.in(CuMember::getCustomerType, customerList); - Integer count = baseMapper.selectCount(queryWrapper); - return count == null ? 0 : count; - } - @Override public CuMemberExt getMemberById(Long memberId) { return baseMapper.queryLoginMember(null, memberId); @@ -2461,11 +2446,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.selectRegList(marketNewsParam); } - @Override - public int checkParent(String topCode, Long pkMember) { - return baseMapper.checkParent(topCode, pkMember); - } - @Override public Map checkMemberCodeExist(Collection codeList, Boolean checkEmpty, Long excludeMemberEmpty) { Map resultMap = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java index 33371947..ed3b1eea 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java @@ -1,40 +1,15 @@ package com.hzs.member.base.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.member.base.mapper.CuMemberShareMapper; import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import org.springframework.stereotype.Service; -import java.util.List; - /** * 分享注册记录会员 服务实现类 - * - * @author hzs - * @since 2023-03-15 */ @Service public class CuMemberShareServiceImpl extends ServiceImpl implements ICuMemberShareService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - @Override - public List seaFlourList(SeaFlourParam seaFlourParam) { - return baseMapper.seaFlourList(seaFlourParam); - } - - @Override - public CuMemberShare queryCuMemberShare(Long pkMember) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("PK_ID,MEMBER_CODE,MEMBER_NAME,PHONE,PK_PARENT"); - return baseMapper.selectById(pkMember); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java index f0d1d24f..c5e4c3e5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; /** - *

* 会员奖金-直推历史轮次记录 Mapper 接口 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface CuMemberBonusPushHisMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java index 67dea457..46d4d53c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java @@ -2,32 +2,10 @@ package com.hzs.member.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** - *

* 会员奖金-直推收益明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface CuMemberBonusPushMapper extends BaseMapper { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(@Param("pkMember") Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java index 35dd9eb3..5c75b534 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java @@ -3,23 +3,9 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务类 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface ICuMemberBonusPushHisService extends IService { - /* - * @description: 查询会员历史推荐 - * @author: sui q - * @date: 2023/9/10 14:23 - * @param: null null - **/ - List queryCuMemberBonusPushHis(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java index b915c039..52a03351 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java @@ -1,36 +1,10 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; -import java.util.Set; /** - *

* 会员奖金-直推收益明细表 服务类 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface ICuMemberBonusPushService extends IService { - - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java index 66e55b27..0acb3e7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java @@ -1,32 +1,15 @@ package com.hzs.member.bonus.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; import com.hzs.member.bonus.mapper.CuMemberBonusPushHisMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务实现类 - *

- * - * @author hzs - * @since 2023-09-10 */ @Service public class CuMemberBonusPushHisServiceImpl extends ServiceImpl implements ICuMemberBonusPushHisService { - @Override - public List queryCuMemberBonusPushHis(Long pkMember) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("(round+1) round,second,cal_achieve"); - queryWrapper.eq(MemberFieldConstants.PK_MEMBER, pkMember); - queryWrapper.orderByDesc("round,second"); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java index 7b335116..23194c45 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java @@ -2,45 +2,14 @@ package com.hzs.member.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.member.bonus.mapper.CuMemberBonusPushMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushService; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** - *

* 会员奖金-直推收益明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-11-10 */ @Service public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusPushService { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - @Override - public List tripleCycleList(TripleCycleListParam tripleCycleListParam) { - return baseMapper.tripleCycleList(tripleCycleListParam); - } - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - @Override - public CuMemberBonusPush nextRound(Long pkMember) { - return baseMapper.nextRound(pkMember); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java index d44bb3d0..1261a153 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java @@ -37,13 +37,4 @@ public interface ICuMemberLevelService extends IService { */ int insertGradeBatch(List memberGradeList); - /** - * 获取会员升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID -- 可为空 - * @return - */ - List listMemberLevel(Long pkMember, Long pkOrder); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java index e2507504..6ece88f0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java @@ -1,7 +1,6 @@ package com.hzs.member.detail.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.detail.CuMemberGrade; @@ -39,13 +38,4 @@ public class CuMemberLevelServiceImpl extends ServiceImpl listMemberLevel(Long pkMember, Long pkOrder) { - return this.list(Wrappers.lambdaQuery() - .eq(CuMemberLevel::getPkMember, pkMember) - .eq(null != pkOrder, CuMemberLevel::getPkOrder, pkOrder) - .orderByAsc(CuMemberLevel::getUpgradeTime) - ); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java index a3181c2c..ec87797f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java @@ -1,31 +1,15 @@ package com.hzs.member.marketnews.controller.api; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateUtil; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.enums.EPlaceDept; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; -import com.hzs.member.bonus.service.ICuMemberBonusPushService; import com.hzs.member.marketnews.param.MarketNewsParam; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; @@ -37,33 +21,14 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.math.BigDecimal; import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.function.Function; -import java.util.stream.Collectors; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/13 16:38 - * @Classname: MarketNewsController - * @PackageName: com.hzs.member.marketNews.controller.api - */ @RestController @RequestMapping("/api/market-news") public class MarketNewsController extends BaseController { - @Autowired - private ITransactionCommonService iTransactionCommonService; - @Autowired - private ICuMemberShareService memberShareService; + @Autowired private ICuMemberService memberService; - @Autowired - private ICuMemberBonusPushService memberBonusPushService; - @Autowired - private ICuMemberBonusPushHisService cuMemberBonusPushHisService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -75,7 +40,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("bidding-list") + @GetMapping("/bidding-list") public TableDataInfo biddingList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); R> gradeDate = gradeServiceApi.queryGradeList(pkCountry); @@ -114,7 +79,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("reg-list") + @GetMapping("/reg-list") public TableDataInfo regList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); marketNewsParam.setPkCountry(pkCountry); @@ -164,124 +129,4 @@ public class MarketNewsController extends BaseController { return getDataTable(list); } - /** - * 海粉列表 - */ - @GetMapping("sea_flour_list") - public TableDataInfo seaFlourList(SeaFlourParam seaFlourParam) { - seaFlourParam.setPkMember(SecurityUtils.getUserId()); - if (seaFlourParam.getStartCreationTime() != null) { - seaFlourParam.setStartCreationTime(DateUtil.beginOfDay(seaFlourParam.getStartCreationTime())); - } - if (seaFlourParam.getEndCreationTime() != null) { - seaFlourParam.setEndCreationTime(DateUtil.endOfDay(seaFlourParam.getEndCreationTime())); - } - startPage(); - List memberList = memberShareService.seaFlourList(seaFlourParam); - if (CollectionUtil.isNotEmpty(memberList)) { - for (SeaFlourVo seaFlourVo : memberList) { - seaFlourVo.setMemberCode(seaFlourVo.getMemberCode()); - seaFlourVo.setMemberName(seaFlourVo.getMemberName()); - } - } - return getDataTable(memberList); - } - - /** - * 轮次历史业绩 - */ - @GetMapping("/round-his") - public TableDataInfo seaFlourList() { - List cuMemberBonusPushHis = cuMemberBonusPushHisService.queryCuMemberBonusPushHis(SecurityUtils.getUserId()); - if (Objects.equals(CountryConstants.CHINA_COUNTRY, SecurityUtils.getPkCountry())) { - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()).getData(); - cuMemberBonusPushHis.forEach(bonusPushHis -> - bonusPushHis.setCalAchieve(ComputeUtil.computeMultiply(bonusPushHis.getCalAchieve(), currencyDTO.getInExchangeRate()))); - } - return getDataTable(cuMemberBonusPushHis); - } - - /** - * 三单循环列表 - */ - @GetMapping("triple_cycle_list") - public TableDataInfo tripleCycleList(TripleCycleListParam tripleCycleListParam) { - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - // 汇率比例 - BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); - R> gradeDto = gradeServiceApi.findAll(); - List gradeDate = gradeDto.getData(); - tripleCycleListParam.setPkMember(SecurityUtils.getUserId()); - startPage(); - if (tripleCycleListParam.getStartCreationTime() != null) { - tripleCycleListParam.setStartCreationTime(DateUtil.beginOfDay(tripleCycleListParam.getStartCreationTime())); - } - if (tripleCycleListParam.getEndCreationTime() != null) { - tripleCycleListParam.setEndCreationTime(DateUtil.endOfDay(tripleCycleListParam.getEndCreationTime())); - } - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EOrderType.values()); - Map transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE); - //查询所有汇率 - R> currencyDTOList = currencyServiceApi.findAll(); - Map currencyMap = currencyDTOList.getData().stream().collect(Collectors.toMap(CurrencyDTO::getPkCountry, Function.identity())); - // 禅道bug 8461 会员端,招商列表下的【三单循环】历史轮次需要显示已退单的会员数据 需要展示已删除的会员信息 - List list = memberBonusPushService.tripleCycleList(tripleCycleListParam); - for (CuMemberBonusPushExt cuMemberBonusPush : list) { - - cuMemberBonusPush.setMemberCode(cuMemberBonusPush.getMemberCode()); - cuMemberBonusPush.setMemberName(cuMemberBonusPush.getMemberName()); - - for (GradeDTO gradeDTO : gradeDate) { - // 注册等级 - if (cuMemberBonusPush.getPkRegisterGrade() != null) { - if (cuMemberBonusPush.getPkRegisterGrade().equals(gradeDTO.getPkId())) { - cuMemberBonusPush.setPkRegisterGradeStr(transactionMap1.get(gradeDTO.getPkTransaction())); - } - } - } - if (cuMemberBonusPush.getOrderType() != null) { - cuMemberBonusPush.setOrderTypeStr(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + cuMemberBonusPush.getOrderType())); - } - if (cuMemberBonusPush.getOrderAchieve() == null) { - cuMemberBonusPush.setOrderAchieve(BigDecimal.ZERO); - } - cuMemberBonusPush.setOrderAchieve(cuMemberBonusPush.getOrderAchieve().multiply(inExchangeRate)); - cuMemberBonusPush.setCreationTime(cuMemberBonusPush.getMemberPayTime()); - - // 跨国报单 汇率转换 - Long pkCreator = cuMemberBonusPush.getPkCreator(); - CuMember member = memberService.getMember(pkCreator); - if (!member.getPkSettleCountry().equals(cuMemberBonusPush.getPkCountry())) { - // 会员结算国是中国 并且会员结算国和订单下单国家不一致 - CurrencyDTO thisCurrency = currencyMap.get(member.getPkSettleCountry()); - CurrencyDTO settleCurrency = currencyMap.get(cuMemberBonusPush.getPkCountry()); - cuMemberBonusPush.setOrderAmount(cuMemberBonusPush.getOrderAmount().divide(settleCurrency.getInExchangeRate(), 2, BigDecimal.ROUND_HALF_UP).multiply(thisCurrency.getInExchangeRate())); - } - - } - return getDataTable(list); - } - - /** - * 三单循环获取下一轮次 - */ - @GetMapping("next-round") - public AjaxResult nextRound() { - // Integer pkCountry = SecurityUtils.getPkCountry(); - Long pkMember = SecurityUtils.getUserId(); - CuMemberBonusPush memberBonusPush = memberBonusPushService.nextRound(pkMember); - if (memberBonusPush == null || memberBonusPush.getRound() == null || memberBonusPush.getSecond() == null) { - memberBonusPush.setSecond(1); - memberBonusPush.setRound(1); - } - if (memberBonusPush.getSecond() == 3) { - // 三单循环第三轮 - memberBonusPush.setSecond(1); - memberBonusPush.setRound(memberBonusPush.getRound() + 1); - } else { - memberBonusPush.setSecond(memberBonusPush.getSecond() + 1); - } - return AjaxResult.success(memberBonusPush); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java index 4ba65ec0..92f4acd4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java @@ -5,13 +5,6 @@ import lombok.Data; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 11:43 - * @Classname: MarketNewsParam - * @PackageName: com.hzs.member.marketNews.param - */ @Data public class MarketNewsParam { /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java deleted file mode 100644 index 865034cd..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:36 - * @Classname: seaFlourParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-06 17:36 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourParam { - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - - /** - * 会员信息 - */ - private String memberInfo; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java deleted file mode 100644 index 69cbbbeb..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/7 14:43 - * @Classname: TripleCycleListParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-07 14:43 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class TripleCycleListParam { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - /** - * 查询会员信息 - */ - private String memberInfo; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java deleted file mode 100644 index 5cff138f..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.hzs.member.marketnews.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:38 - * @Classname: SeaFlourVo - * @PackageName: com.hzs.member.marketnews.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.vo - *@Author: yh - *@CreateTime: 2023-06-06 17:38 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourVo { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员名称 - */ - private String memberName; - - /** - * 会员手机 - */ - private String phone; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 所属体系 - */ - private Long pkVertex; - - /** - * 服务编号 - */ - private String serviceCode; - - /** - * 会员昵称 - */ - private String nickName; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java index 44eb9d7d..14de2184 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java @@ -8,13 +8,6 @@ import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 10:44 - * @Classname: UserInvestmentVo - * @PackageName: com.hzs.member.marketNews.vo - */ @Data public class UserInvestmentVo { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java index 24ee9d32..58aa87c5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java @@ -7,12 +7,7 @@ import java.util.Date; import java.util.List; /** - * @description: 甩网配置 - * @author: sui q - * @time: 2023/8/30 11:12 - * @classname: CuMemberSwingNetVO - * @package_name: com.hzs.member.swing.param - * version 1.0.0 + * 甩网配置 */ @Data public class CuMemberSwingNetParam implements Serializable { diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml index 1e17c534..f95b1c39 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml @@ -31,15 +31,15 @@ m.member_name as memberName, v.VERTEX_NAME as vertexName, c.TEAM_NAME as teamName - from cu_member_trade t - left join cu_member m - on t.pk_member = m.pk_id - left join cu_member_team c - ON c.pk_id = m.pk_team_code - and c.del_flag = 0 - left join bd_vertex v - on v.pk_id = m.PK_VERTEX - and v.del_flag = 0 + from cu_member_trade t + left join cu_member m + on t.pk_member = m.pk_id + left join cu_member_team c + ON c.pk_id = m.pk_team_code + and c.del_flag = 0 + left join bd_vertex v + on v.pk_id = m.PK_VERTEX + and v.del_flag = 0
@@ -112,24 +112,14 @@ order by t.creation_time Desc,t.PK_ID Desc - - - @@ -160,20 +150,20 @@ - select distinct t.trade_type - from cu_member_trade t + select distinct t.trade_type + from cu_member_trade t where t.del_flag = 0 - and t.pk_country =#{pkCountry} - and t.pk_member= #{pkMember} + and t.pk_country = #{pkCountry} + and t.pk_member = #{pkMember} order by t.trade_type @@ -232,69 +222,16 @@ #{item} - - merge into cu_member_trade a - using ( - select m.pk_id, m.pk_member, m.trade_code, m.pk_account, m.trade_type,m.trade_classify, m.pk_rate, m.trade_amount, - (case when ba.field_value=4 then ca.account4 + m.trade_amount when ba.field_value=5 then ca.account5 + m.trade_amount - when ba.field_value=8 then ca.account8 + m.trade_amount when ba.field_value=9 then ca.account9 + m.trade_amount - else ca.account10 + m.trade_amount end) trade_balance, - (case when ba.field_value=4 then ca.account4 when ba.field_value=5 then ca.account5 when ba.field_value=8 then ca.account8 - when ba.field_value=9 then ca.account9 else ca.account10 end) trade_before_balance, - m.source_code, m.trade_statue, m.remarks, m.pk_country, m.creation_time, m.pk_creator from( - - select #{item.pkId} pk_id,#{item.tradeCode} trade_code, #{item.tradeClassify} trade_classify, - #{item.pkMember} pk_member,#{item.pkAccount} pk_account,#{item.pkRate} pk_rate,#{item.tradeAmount} trade_amount, - #{item.sourceCode} source_code,#{item.tradeStatue} trade_statue,#{item.remarks} remarks, - #{item.tradeType} trade_type,#{item.pkCountry} pk_country,#{item.pkCreator} pk_creator, - #{item.creationTime} creation_time from dual - ) m - inner join cu_member_account ca - on m.pk_member = ca.pk_member - inner join bd_account ba - on ba.pk_id = m.pk_account - ) b - on (a.pk_id = b.pk_id) - when not matched then - insert (pk_id, pk_member, trade_code, pk_account, trade_type, - trade_classify, pk_rate, trade_amount, trade_balance,trade_before_balance, - source_code, trade_statue, remarks, pk_country, creation_time, pk_creator) - values(b.pk_id,b.pk_member,b.trade_code,b.pk_account,b.trade_type, - b.trade_classify,b.pk_rate,b.trade_amount,b.trade_balance,b.trade_before_balance, - b.source_code,b.trade_statue,b.remarks,b.pk_country,b.creation_time,b.pk_creator) - - - select * - from cu_member_trade cmt - where cmt.pk_id in - (select max(pk_id) - from cu_member_trade cmt - where cmt.del_flag = 0 - and cmt.pk_member = #{pkMember} - and cmt.source_code = #{sourceCode} - - and cmt.trade_classify = #{tradeClassify} - - group by cmt.trade_classify, cmt.pk_account) + from cu_member_trade t + left join bd_account a + on t.pk_account = a.pk_id + and a.del_flag = 0 + where t.del_flag = 0 + and a.field_value = 4 + and t.source_code = #{sourceCode} - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml index 514ef1cf..322c218f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml @@ -4,24 +4,24 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - - - - select ms.MEMBER_CODE memberCode,ms.MEMBER_NAME memberName,ms.PHONE phone,ms.CREATION_TIME creationTime, - ms.pk_vertex, - ms.service_code, - ms.nick_name - from CU_MEMBER ms - inner join bd_grade bg - on ms.pk_settle_grade = bg.pk_id - where 1= 1 and bg.grade_value= 20 - and - ( - (select count(so.PK_ID) from sa_order so where so.PK_CREATOR = ms.pk_id and so.del_flag = 0 and so.ORDER_STATUS = 1) = 0 - ) - - and ms.PK_PARENT = #{pkMember} - - - and (ms.MEMBER_NAME=#{memberInfo} or ms.MEMBER_CODE=#{memberInfo}) - - - and (ms.member_code = #{memberCode} or ms.SERVICE_CODE = #{memberCode}) - - - and (ms.member_name = #{memberName} or ms.NICK_NAME = #{memberName}) - - - and ms.CREATION_TIME >= #{startCreationTime} - - - and ms.CREATION_TIME < #{endCreationTime} - - order by ms.CREATION_TIME desc - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml index 883f8907..d179b3ca 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml @@ -2,19 +2,5 @@ - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml index 58bf949a..d703ffa5 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml @@ -2,127 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java index 4746444b..c92099ba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java @@ -10,9 +10,6 @@ import java.util.List; /** * 活动基本配置表 Mapper 接口 - * - * @author hzs - * @since 2023-04-20 */ public interface AcBaseConfigMapper extends BaseMapper { @@ -25,27 +22,8 @@ public interface AcBaseConfigMapper extends BaseMapper { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 */ List queryBaseConfigList(@Param("pkCountry") Integer pkCountry, @Param("pkMember") Long pkMember); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(@Param("actType") Integer actType, - @Param("pkCountry") Integer pkCountry, - @Param("systemType") Integer systemType, - @Param("startDate") String startDate, - @Param("endDate") String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java index 4aad5946..9769521e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java @@ -7,18 +7,12 @@ import com.hzs.activity.draw.service.IAcDrawRewardNumService; import com.hzs.activity.dto.AcRecommendUpgradeDTO; import com.hzs.activity.recommend.dto.AcRecommendUpgrade; import com.hzs.activity.recommend.service.IAcRepurCouponsRuleConfigService; -import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; -import java.util.List; - /** * 所有活动的生效,获得赠品入口 */ @@ -27,11 +21,9 @@ import java.util.List; public class ActivityServiceProvider implements IActivityServiceApi { @Autowired - private IAcDrawRewardNumService acDrawRewardNumService; + private IAcDrawRewardNumService iAcDrawRewardNumService; @Autowired - private IAcRepurCouponsRuleConfigService acRepurCouponsRuleConfigService; - @Autowired - private IAcRepurSharRuleConfigService acRepurSharRuleConfigService; + private IAcRepurCouponsRuleConfigService iAcRepurCouponsRuleConfigService; @Autowired private IActivityService iActivityService; @@ -47,31 +39,16 @@ public class ActivityServiceProvider implements IActivityServiceApi { @Override public R backGiveMemberDrawNum(SaOrderExt saOrderExt) { try { - return R.ok(acDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); + return R.ok(iAcDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); } catch (Exception e) { return R.fail(); } } - @Override - public R> queryAcRepurchaseCouponsRule(Date settleDate) { - List acRepurCouponsRuleConfigList = acRepurCouponsRuleConfigService.queryAcRepurchaseCouponsRule(settleDate); - if (acRepurCouponsRuleConfigList != null && acRepurCouponsRuleConfigList.size() > 0) { - return R.ok(acRepurCouponsRuleConfigList); - } else { - return R.fail(); - } - } - - @Override - public R> queryRepurSharRuleConfig(Date startDate, Date endDate) { - return R.ok(acRepurSharRuleConfigService.queryRepurSharRuleConfig(startDate, endDate)); - } - @Override public R invokeRecommendUpgrade(AcRecommendUpgradeDTO recommendUpgradeDTO) { try { - return R.ok(acRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); + return R.ok(iAcRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); } catch (Exception e) { return R.fail(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java index 91b05330..a3132aeb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java @@ -9,9 +9,6 @@ import java.util.List; /** * 活动基本配置表 服务类 - * - * @author hzs - * @since 2023-04-20 */ public interface IAcBaseConfigService extends IService { @@ -24,26 +21,17 @@ public interface IAcBaseConfigService extends IService { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 **/ List queryBaseConfigList(Integer pkCountry, Long pkMember); /* - * @description: 查询订单详情 - * @author: sui q - * @date: 2023/6/21 10:41 - * @param: null null + * 查询订单详情 **/ AcBaseConfigExt queryBaseConfigDetail(Long pkId, Integer pkCountry); /** - * @description: 根据主键查询活动配置 - * @author: sui q - * @date: 2023/4/27 14:05 - * @param: null null + * 根据主键查询活动配置 **/ AcBaseConfig queryBaseConfigById(Long pkBaseId); @@ -56,16 +44,4 @@ public interface IAcBaseConfigService extends IService { */ Boolean deleteBaseConfigById(Long pkBaseId, Long pkModifyId); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java index 3ec57ec0..39f92032 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java @@ -17,9 +17,6 @@ import java.util.List; /** * 活动基本配置表 服务实现类 - * - * @author hzs - * @since 2023-04-20 */ @Service public class AcBaseConfigServiceImpl extends ServiceImpl implements IAcBaseConfigService { @@ -58,9 +55,4 @@ public class AcBaseConfigServiceImpl extends ServiceImpl listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate) { - return baseMapper.listProgressList(actType, pkCountry, systemType, startDate, endDate); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java index 53b3ecbc..f8f74c0f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java @@ -2,39 +2,10 @@ package com.hzs.activity.pick.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员提货赠送活动日志表 Mapper 接口 - * - * @author zhangjing - * @since 2025-01-15 */ public interface AcRetailPickLogMapper extends BaseMapper { - /** - * 批量插入提货日志 - * - * @param pkBaseId 活动ID - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param pkWaresList 活动商品ID列表 - * @param waresQuantity 购买商品数量 - * @param giftQuantity 赠送商品数量 - * @param createDate 创建时间 - * @param systemType 系统类型 - * @return - */ - int insertPickLog(@Param("pkBaseId") Long pkBaseId, - @Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("pkWaresList") List pkWaresList, - @Param("waresQuantity") Integer waresQuantity, - @Param("giftQuantity") Integer giftQuantity, - @Param("createDate") Date createDate, - @Param("systemType") Integer systemType); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java index ed3ec509..6f317a96 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java @@ -6,14 +6,10 @@ import com.hzs.common.domain.activity.pick.AcRetailPick; import com.hzs.common.domain.activity.pick.ext.AcRetailPickExt; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** * 新零售会员提货数量 Mapper 接口 - * - * @author hzs - * @since 2025-01-09 */ public interface AcRetailPickMapper extends BaseMapper { @@ -31,20 +27,10 @@ public interface AcRetailPickMapper extends BaseMapper { @Param("quantity") Integer quantity, @Param("pkModified") Long pkModified); - - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(@Param("pkBaseId") Long pkBaseId, @Param("nowDate") Date nowDate); - /** * 列表数据 * - * @param param 查询入参 + * @param param 查询入参 * @return */ List listData(@Param("param") AcRetailPickParam param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java index 5e375fe9..65fee8fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; /** - *

* 提货赠送活动商品配置 Mapper 接口 - *

- * - * @author hzs - * @since 2025-01-13 */ public interface AcRetailPickProductConfigMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java deleted file mode 100644 index af4a2660..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.activity.pick.provider; - -import com.hzs.activity.pick.IAcRetailPickLogServiceApi; -import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - - -/** - * @description: 会员提货赠送活动日志dubbo服务 - * @author: zhang jing - * @date: 2025/1/15 17:01 - * @param: - * @return: - **/ -@Slf4j -@DubboService -public class AcRetailPickLogServiceProvider implements IAcRetailPickLogServiceApi { - - - @Autowired - private IAcRetailPickLogService iAcRetailPickLogService; - - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:12 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R deliveryLog() { - try { - iAcRetailPickLogService.deliveryLog(); - } catch (Exception e) { - log.error("添加会员提货赠送活动日志错误 error:", e); - return R.fail(); - } - return R.ok(); - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java index 53550e83..fa1f831b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java @@ -1,25 +1,11 @@ package com.hzs.activity.pick.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.pick.AcRetailPickLog; /** - *

* 会员提货赠送活动日志表 服务类 - *

- * - * @author zhangjing - * @since 2025-01-15 */ public interface IAcRetailPickLogService extends IService { - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:14 - * @param: [] - * @return: void - **/ - void deliveryLog(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java index 3ac349f7..fdf52e0d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java @@ -7,36 +7,21 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** * 提货赠送活动商品配置 服务类 - * - * @author hzs - * @since 2025-01-13 */ public interface IAcRetailPickProductConfigService extends IService { /** - * @description:会员消费赠送发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [memberConsumeRuleVo] - * @return: java.lang.Boolean + * 会员消费赠送发起签呈 **/ Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo); /** - * @description: 会员提货赠送活动审批 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [businessResult] - * @return: java.lang.String + * 会员提货赠送活动审批 **/ String approvalAgree(ApprovalBusinessResultDTO businessResult); /** - * @description: 新增提货赠送规格 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [mcrVo] - * @return: java.lang.Long + * 新增提货赠送规格 **/ Long saveGift(AcRetailPickProductConfigVO mcrVo); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java index 06bee372..bb7044ef 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java @@ -12,9 +12,6 @@ import java.util.List; /** * 新零售会员提货数量 服务类 - * - * @author hzs - * @since 2025-01-09 */ public interface IAcRetailPickService extends IService { @@ -37,15 +34,6 @@ public interface IAcRetailPickService extends IService { */ boolean cancelRetailPickOrder(Long pkOrder, Long userId); - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(Long pkBaseId, Date nowDate); - /** * 列表数据 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java index f1a66e29..466388ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java @@ -1,103 +1,17 @@ package com.hzs.activity.pick.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.pick.mapper.AcRetailPickLogMapper; import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.activity.pick.service.IAcRetailPickProductConfigService; -import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.enums.EActType; -import com.hzs.common.core.enums.ESystemType; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; /** * 会员提货赠送活动日志表 服务实现类 - * - * @author zhangjing - * @since 2025-01-15 */ @Service @Slf4j public class AcRetailPickLogServiceImpl extends ServiceImpl implements IAcRetailPickLogService { - @Autowired - private IAcBaseConfigService baseConfigService; - @Autowired - private IAcRetailPickProductConfigService iAcRetailPickProductConfigService; - @Autowired - private IAcRetailPickService iAcRetailPickService; - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/2/6 10:54 - * @param: [] - * @return: void - **/ - @Transactional(rollbackFor = Exception.class) - @Override - public void deliveryLog() { - Date now = new Date(); - // 获取上个月的第一天和最后一天 - Date lastMonthFirstDay = DateUtils.beforeMonthFirstDate(now); - Date lastMonthLastDay = DateUtils.beforeMonthLastDate(now); - - for (ESystemType eSystemType : ESystemType.getEnableList()) { - List configs = baseConfigService.listProgressList(EActType.PICK_GIFT.getValue(), CountryConstants.CHINA_COUNTRY, eSystemType.getValue(), - DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthFirstDay), DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthLastDay)); - if (CollectionUtil.isEmpty(configs)) { - log.info("没有进行中的提货赠送活动"); - return; - } - - for (AcBaseConfig config : configs) { - if (DateUtils.compareDate(lastMonthFirstDay, config.getActStartDate()) < 0) { - lastMonthFirstDay = config.getActStartDate(); - } - - if (DateUtils.compareDate(lastMonthLastDay, config.getActEndDate()) > 0) { - lastMonthLastDay = config.getActEndDate(); - } - if (DateUtils.compareDate(lastMonthFirstDay, lastMonthLastDay) > 0) { - log.info("不在活动时间范围内"); - return; - } - //查询赠送活动规则 - LambdaQueryWrapper productConfigWrapper = new LambdaQueryWrapper<>(); - productConfigWrapper.eq(AcRetailPickProductConfig::getPkBaseId, config.getPkId()); - List productConfigs = iAcRetailPickProductConfigService.list(productConfigWrapper); - - if (CollectionUtil.isNotEmpty(productConfigs)) { - List pkWaresList = productConfigs.stream().map(AcRetailPickProductConfig::getPkWares).collect(Collectors.toList()); - handleQualifiedOrders(productConfigs.get(0), lastMonthFirstDay, lastMonthLastDay, pkWaresList, eSystemType.getValue()); - } - } - } - } - - - //查询符合提货赠送活动的会员订单 - private void handleQualifiedOrders(AcRetailPickProductConfig productConfig, Date startDate, Date endDate, List pkWaresList, Integer systemType) { - Date nowDate = new Date(); - // 插入提货赠送日志 - baseMapper.insertPickLog(productConfig.getPkBaseId(), DateUtils.getStartTime(startDate), DateUtils.getEndTime(endDate), pkWaresList, productConfig.getWaresQuantity(), productConfig.getGiftQuantity(), nowDate, systemType); - // 批量更新提货数据 - iAcRetailPickService.handlePick(productConfig.getPkBaseId(), nowDate); - } - - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java index f5d4c4d1..2eab5152 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java @@ -35,29 +35,20 @@ import java.util.List; /** * 提货赠送活动商品配置 服务实现类 - * - * @author hzs - * @since 2025-01-13 */ @Service public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickProductConfigService { @Autowired private IActivityService iActivityService; - @DubboReference - IApprovalServiceApi approvalServiceApi; @Autowired private IAcApprovalLogService acApprovalLogService; @Autowired private IAcBaseConfigService baseConfigService; - /** - * @description: 会员提货赠送活动发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [rppcVo] - * @return: java.lang.Boolean - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @Override public Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo) { EApprovalBusiness approvalBusiness = null; @@ -78,13 +69,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl mcrList = mcrVo.getRppcList(); for (AcRetailPickProductConfigExt mcr : mcrList) { @@ -240,13 +190,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickService { @@ -79,11 +75,6 @@ public class AcRetailPickServiceImpl extends ServiceImpl listData(AcRetailPickParam param) { return baseMapper.listData(param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java index a8f4c18b..fdb74a95 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java @@ -1,27 +1,11 @@ package com.hzs.activity.recommend.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import java.util.Date; -import java.util.List; - /** - *

* 直推-复购券规则配置 Mapper 接口 - *

- * - * @author hzs - * @since 2023-04-22 */ public interface AcRepurCouponsRuleConfigMapper extends BaseMapper { - /* - * @description: 查询目前所有启用的复购券规则 - * @author: sui q - * @date: 2023/4/28 15:47 - * @param: null null - **/ - List queryAcRepurchaseCouponsRule(Date settleDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java index 9f0dbec0..29a7d05b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java @@ -2,37 +2,10 @@ package com.hzs.activity.recommend.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 Mapper 接口 - * - * @author hzs - * @since 2023-05-04 */ public interface AcRepurSharRuleConfigMapper extends BaseMapper { - /** - * 根据条件删除规则配置 - * - * @param orderTypeList 订单类型 - * @param activityId 活动ID - * @param pkModifyId 修改人ID - * @return - */ - Integer deleteSharRuleConfigByActivityId(@Param("orderTypeList") List orderTypeList, - @Param("activityId") Long activityId, @Param("pkModifyId") Long pkModifyId); - - /* - * @description: 查询复购券均分收益 - * @author: sui q - * @date: 2023/5/5 16:29 - * @param: null null - **/ - List queryRepurSharRuleConfig(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java index 94b4addb..b4f68589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java @@ -7,9 +7,6 @@ import com.hzs.activity.recommend.vo.AcRecommendVO; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.util.Date; -import java.util.List; - /** * 直推-复购券规则配置 服务类 */ @@ -66,11 +63,6 @@ public interface IAcRepurCouponsRuleConfigService extends IService queryAcRepurchaseCouponsRule(Date settleDate); - /** * 根据活动配置主键删除复购券规则配置 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java index 02657215..f43748c4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java @@ -2,16 +2,9 @@ package com.hzs.activity.recommend.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 服务类 - * - * @author hzs - * @since 2023-05-04 */ public interface IAcRepurSharRuleConfigService extends IService { @@ -33,12 +26,5 @@ public interface IAcRepurSharRuleConfigService extends IService queryRepurSharRuleConfig(Date startDate, Date endDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java index 0452af1c..9d844b08 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java @@ -57,9 +57,6 @@ import java.util.stream.Collectors; /** * 直推配置 服务实现类 - * - * @author hzs - * @since 2023-04-22 */ @Slf4j @Service @@ -102,21 +99,7 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl atcModuleList = recommendParam.getActivityParam().getAtcModuleList(); EApprovalBusiness approvalBusiness = EApprovalBusiness.DIRECT_PUSH_GIFT; -/* for (Integer atcModule : atcModuleList) { - switch (EActModule.getByValue(atcModule)) { - case REPURCHASE_COUPON: - approvalBusiness = EApprovalBusiness.REPURCHASE_COUPON; - break; - case DIRECT_PUSH_UPGRADE: - approvalBusiness = EApprovalBusiness.DIRECT_PUSH_UPGRADE; - break; - default: - approvalBusiness = EApprovalBusiness.REPURCHASE_SHAR; - break; - } - }*/ //根据产品ID查询产品名称 List recommendUpgradeList = recommendParam.getRecommendUpgradeList(); if (CollUtil.isNotEmpty(recommendUpgradeList)) { @@ -624,11 +607,6 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl queryAcRepurchaseCouponsRule(Date settleDate) { - return baseMapper.queryAcRepurchaseCouponsRule(settleDate); - } - /** * 处理业务(正常报单) * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java index b57380a3..f3ea53fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java @@ -7,17 +7,12 @@ import com.hzs.activity.recommend.mapper.AcRepurSharRuleConfigMapper; import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import org.springframework.stereotype.Service; import java.util.Date; -import java.util.List; /** * 复购均分配置 服务实现类 - * - * @author hzs - * @since 2023-05-04 */ @Service public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl implements IAcRepurSharRuleConfigService { @@ -39,8 +34,4 @@ public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl queryRepurSharRuleConfig(Date startDate, Date endDate) { - return baseMapper.queryRepurSharRuleConfig(startDate, endDate); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java index 23b18aaf..9faf6bfb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java @@ -146,14 +146,6 @@ public interface SaOrderItemsMapper extends BaseMapper { **/ List waresListByOrderId(@Param("orderIdList") List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(@Param("orderId") Long orderId); - /** * 根据订单明细ID查询订单明细列表 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java index 1e3b73ec..e8da7c05 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java @@ -33,16 +33,6 @@ public interface SaOrderMapper extends BaseMapper { **/ void updateSaOrderByMember(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); - - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - /** * 查询总销售金额 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java index 0dcf2b09..6748775d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java @@ -16,11 +16,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 销售订单-明细表 - * @Author: zhangjing - * @Time: 2023/11/16 20:06 - * @Classname: SaOrderItemsServiceProvider - * @PackageName: com.hzs.sale.order.provider + * 销售订单-明细表 */ @Slf4j @DubboService @@ -29,13 +25,6 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { @Autowired private ISaOrderItemsService iSaOrderItemsService; - /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/11/16 9:23 - * @param: [orderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> waresListByOrderId(List orderIdList) { List dtoList = new ArrayList<>(); @@ -46,34 +35,9 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { return R.ok(dtoList); } - @Override - public R> waresListByOrderId(Long orderId) { - List dtoList = new ArrayList<>(); - List list = iSaOrderItemsService.queryWaresListByOrderId(orderId); - if (CollectionUtil.isNotEmpty(list)) { - list.forEach(itm -> dtoList.add(BeanUtil.copyProperties(itm, WaresOrderDTO.class))); - } - return R.ok(dtoList); - } - - /** - * @description: 根据订单ID查询订单明细列表 - * @author: zhang jing - * @date: 2023/11/16 9:34 - * @param: [orderIdList, tOrderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> queryListByOrderId(List orderIdList, List tOrderIdList) { return R.ok(iSaOrderItemsService.queryListByOrderId(orderIdList)); } - @Override - public R orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry) { - if (iSaOrderItemsService.orderItemsReturn(orderItemsIdList, userId, pkCountry)) { - return R.ok(); - } - return R.fail(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index b3e21cac..b334c14e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -37,11 +37,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Autowired private ISaOrderService iSaOrderService; - @Override - public R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return R.ok(iSaOrderService.queryRetailSaOrderByDay(startDate, endDate, orderCode)); - } - @Override @Transactional(rollbackFor = Exception.class) public R regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index d92177ae..51d59ae8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -102,14 +102,6 @@ public interface ISaOrderItemsService extends IService { **/ List waresListByOrderId(List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(Long orderId); - /** * 根据订单明细ID查询订单明细列表 * @@ -178,16 +170,6 @@ public interface ISaOrderItemsService extends IService { */ int updateToPayByPkOrder(List pkOrderList, Integer pkCountry, Long userId); - /** - * 订单明细退货 - * - * @param orderItemsIdList 订单明细ID列表 - * @param userId 操作人ID - * @param pkCountry 所属国家(可为空) - * @return - */ - boolean orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry); - /** * 抵扣订单明细插入 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index c7610bbe..9372e005 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -129,14 +129,6 @@ public interface ISaOrderService extends IService { */ String registerEmptyOrder(OrderBlankRegParams orderBlankRegParams); - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - /** * 获取系统参数 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 2840ac68..2a8acef8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -1,9 +1,6 @@ package com.hzs.sale.order.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -18,7 +15,6 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.vo.WaresOrderVo; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.*; @@ -78,11 +74,6 @@ public class SaOrderItemsServiceImpl extends ServiceImpl queryWaresListByOrderId(Long orderId) { - return baseMapper.queryWaresListByOrderId(orderId); - } - @Override public List queryListByItemId(List itemIdList, List statusList, Integer pkCountry) { return baseMapper.queryListByItemId(itemIdList, statusList, pkCountry); @@ -128,31 +119,6 @@ public class SaOrderItemsServiceImpl extends ServiceImpl orderItemsIdList, Long userId, Integer pkCountry) { - // 验证订单是否存在,存在回写,不存在说明已经撤单,不需要管; - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - List saOrderItemsList = baseMapper.selectList(queryWrapper); - if (saOrderItemsList == null || saOrderItemsList.size() == 0) { - return Boolean.TRUE; - } - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - // 订单状态不包含 待付款、已关闭 才能进行更新 - updateWrapper.notIn(SaOrderItems::getOrderStatus, EOrderStatus.WAIT_PAY.getValue(), EOrderStatus.CANCEL.getValue()); - if (null != pkCountry) { - updateWrapper.eq(SaOrderItems::getPkCountry, pkCountry); - } - updateWrapper.set(SaOrderItems::getOrderStatus, EOrderStatus.PAY.getValue()); - updateWrapper.set(SaOrderItems::getLogisticsCode, ""); - updateWrapper.set(SaOrderItems::getLogisticsCompany, ""); - updateWrapper.set(SaOrderItems::getPkModified, userId); - updateWrapper.set(SaOrderItems::getModifiedTime, new Date()); - return this.update(updateWrapper); - } - @Override public int copyDeductionItems(Long pkOrderOld, Long pkOrderNew, Long userId, Date nowDate) { return baseMapper.copyDeductionItems(pkOrderOld, pkOrderNew, userId, nowDate); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 804ec55d..551bc2a8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -816,11 +816,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - @Override - public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); - } - @Override public String querySystemConfigByKey(Integer pkCountry, String key) { return systemConfigServiceApi.getBonusSystemConfig(pkCountry, key).getData(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java index 2e22549f..951582e8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java @@ -13,11 +13,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 邮费服务API - * @Author: jiang chao - * @Time: 2023/4/25 14:41 - * @Classname: IPostageServiceProvider - * @PackageName: com.hzs.sale.postage.provider + * 邮费服务API */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java index 96e6b6ed..354777e3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java @@ -4,11 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.WaresMsgConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; @@ -20,9 +17,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdClassifyService; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.product.vo.ClassIfyVo; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,11 +27,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 规格分类controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdClassifyController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格分类controller */ @Slf4j @RestController @@ -44,24 +35,16 @@ import java.util.List; public class BdClassifyController extends BaseController { @Autowired - private RedisService redisService; + private IBdProductService iBdProductService; @Autowired - private IBdProductService productService; - @Autowired - private IBdClassifyService classifyService; - - @DubboReference - ITransactionServiceApi transactionServiceApi; + private IBdClassifyService iBdClassifyService; /** * 查询规格分类 - * - * @param classIfyVo - * @return */ @AccessPermissions("cpfl") @Log(module = EOperationModule.SPECIFICATIONS_CONFIG, business = EOperationBusiness.PRODUCT_CLASSIFY, method = EOperationMethod.SELECT) - @GetMapping("list") + @GetMapping("/list") public TableDataInfo list(ClassIfyVo classIfyVo) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classIfyVo.getName())) { @@ -72,92 +55,71 @@ public class BdClassifyController extends BaseController { } queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); startPage(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); return getDataTable(list); } /** * 生成规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_SAVE, method = EOperationMethod.INSERT) - @PostMapping("save") + @PostMapping("/save") public AjaxResult save(@RequestBody BdClassify classify) { - classify.setPkCreator(SecurityUtils.getUserId()); - classify.setCreationTime(new Date()); - classify.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, classify.getName(), EYesNo.NO, EYesNo.NO); - classify.setPkTransactionKey(transaction.getData()); LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); qw.eq(BdClassify::getName, classify.getName()); qw.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - int count = classifyService.count(qw); - if (count > 0) { + if (iBdClassifyService.count(qw) > 0) { return AjaxResult.error(WaresMsgConstants.CLASSIFICATION_DUPLICATION); } - return AjaxResult.success(classifyService.save(classify)); + + classify.setPkCreator(SecurityUtils.getUserId()); + classify.setCreationTime(new Date()); + classify.setPkCountry(SecurityUtils.getPkCountry()); + return AjaxResult.success(iBdClassifyService.save(classify)); } /** * 编辑规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE, method = EOperationMethod.UPDATE) - @PostMapping("update") + @PostMapping("/update") public AjaxResult update(@RequestBody BdClassify classify) { classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); classify.setPkCountry(SecurityUtils.getPkCountry()); - String redisKey = CacheConstants.BD_CLASSIFY + classify.getPkId(); - redisService.deleteObject(redisKey); - return AjaxResult.success(classifyService.updateById(classify)); + return AjaxResult.success(iBdClassifyService.updateById(classify)); } - /** * 删除规格分类 - * - * @param pkId - * @return */ @Log(module = EOperationModule.CLASSIFY_DELETE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Integer pkId) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(BdProduct::getPkClassify, pkId); + if (iBdProductService.count(qw) > 0) { + return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); + } + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdClassify::getPkId, pkId); updateWrapper.set(BdClassify::getModifiedTime, new Date()); updateWrapper.set(BdClassify::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdClassify::getDelFlag, EDelFlag.DELETE.getValue()); - - String redisKey = CacheConstants.BD_CLASSIFY + pkId; - redisService.deleteObject(redisKey); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(BdProduct::getPkClassify, pkId); - int count = productService.count(qw); - if (count > 0) { - return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); - } - return toAjax(classifyService.update(updateWrapper)); + return toAjax(iBdClassifyService.update(updateWrapper)); } /** * 查询规格分类详情 - * - * @param classifyId - * @return */ - @GetMapping("detail") + @GetMapping("/detail") public AjaxResult detail(Long classifyId) { - return AjaxResult.success(classifyService.getById(classifyId)); + return AjaxResult.success(iBdClassifyService.getById(classifyId)); } - /** * 修改规格分类状态 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE_ENABLE, method = EOperationMethod.UPDATE) @PostMapping("/updateEnable/{pkId}/{enable}") @@ -167,36 +129,30 @@ public class BdClassifyController extends BaseController { classify.setPkId(pkId); classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); - return toAjax(classifyService.updateById(classify)); + return toAjax(iBdClassifyService.updateById(classify)); } /** * 查询所有产品分类 - * - * @return */ - @GetMapping("find-all") + @GetMapping("/find-all") public AjaxResult findAll() { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - return AjaxResult.success(classifyService.list(queryWrapper)); + return AjaxResult.success(iBdClassifyService.list(queryWrapper)); } /** * 产品分类导出 - * - * @param response - * @param classify */ @PostMapping("/export") - public void export(HttpServletResponse response, - BdClassify classify) { + public void export(HttpServletResponse response, BdClassify classify) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classify.getName())) { queryWrapper.eq(BdClassify::getName, classify.getName()); } List resultList = new ArrayList<>(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); for (BdClassify bdClassify : list) { ClassIfyVo classIfyVo = new ClassIfyVo(); classIfyVo.setCreationTime(bdClassify.getCreationTime()); @@ -205,6 +161,6 @@ public class BdClassifyController extends BaseController { } ExcelUtil util = new ExcelUtil<>(ClassIfyVo.class); util.exportExcel(response, resultList, "分类导出"); - } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java index 478a7f1a..6fff4524 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java @@ -1,11 +1,8 @@ package com.hzs.sale.product.controller.manage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -13,144 +10,108 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.Arrays; import java.util.Date; import java.util.List; /** - * @Description: 规格controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdSpecsController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格controller */ @Slf4j @RestController @RequestMapping("/manage/specs") public class BdSpecsController extends BaseController { - @DubboReference - private ITransactionServiceApi transactionServiceApi; @Autowired - private IBdSpecsService specsService; - @Autowired - private RedisService redisService; - /** - * 查询规格列表 - * @return - */ - @GetMapping("list") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public TableDataInfo list(BdSpecs bdSpecs){ + private IBdSpecsService iBdSpecsService; - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (StringUtils.isNotBlank(bdSpecs.getSpecsName())){ - queryWrapper.eq("SPECS_NAME",bdSpecs.getSpecsName()); + /** + * 查询规格列表 + */ + @GetMapping("/list") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public TableDataInfo list(BdSpecs bdSpecs) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotBlank(bdSpecs.getSpecsName())) { + queryWrapper.eq(BdSpecs::getSpecsName, bdSpecs.getSpecsName()); } startPage(); - List list = specsService.list(queryWrapper); + List list = iBdSpecsService.list(queryWrapper); return getDataTable(list); } /** * 新增规格 - * @param bdSpecs - * @return */ - @PostMapping("save") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) - public AjaxResult save(@RequestBody BdSpecs bdSpecs){ + @PostMapping("/save") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) + public AjaxResult save(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkCreator(SecurityUtils.getUserId()); bdSpecs.setCreationTime(new Date()); bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO, EYesNo.NO); - bdSpecs.setPkTransactionKey(transaction.getData()); - specsService.save(bdSpecs); + iBdSpecsService.save(bdSpecs); return AjaxResult.success(); } /** * 修改规格 - * @param bdSpecs - * @return */ - @PostMapping("update") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult update(@RequestBody BdSpecs bdSpecs){ - BdSpecs specs = specsService.getById(bdSpecs.getPkId()); + @PostMapping("/update") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult update(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - String redisKey = CacheConstants.BD_SPECS + bdSpecs.getPkId(); - transactionServiceApi.updateTransaction(specs.getPkCountry(),bdSpecs.getSpecsName(),specs.getPkTransactionKey(),true); - redisService.deleteObject(redisKey); - specsService.updateById(bdSpecs); + iBdSpecsService.updateById(bdSpecs); return AjaxResult.success(); } /** * 删除规格 - * - * @param pkId - * @return */ @DeleteMapping("/{pkId}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) public AjaxResult delete(@PathVariable Integer pkId) { - BdSpecs sp = specsService.getById(pkId); BdSpecs specs = new BdSpecs(); specs.setPkId(pkId); specs.setDelFlag(EDelFlag.DELETE.getValue()); specs.setModifiedTime(new Date()); specs.setPkModified(SecurityUtils.getUserId()); - String redisKey = CacheConstants.BD_SPECS + pkId; - redisService.deleteObject(redisKey); - // 删除翻译 - transactionServiceApi.removeTransactionByPkId(Arrays.asList(sp.getPkTransactionKey().longValue())); - return toAjax(specsService.updateById(specs)); + return toAjax(iBdSpecsService.updateById(specs)); } /** * 查询规格详情 - * @param specsId - * @return */ - @GetMapping("detail") - public AjaxResult detail(Long specsId){ - return AjaxResult.success(specsService.getById(specsId)); + @GetMapping("/detail") + public AjaxResult detail(Long specsId) { + return AjaxResult.success(iBdSpecsService.getById(specsId)); } - /** * 修改规格状态 - * @return */ @PostMapping("/updateEnable/{pkId}/{enable}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult updateEnable(@PathVariable Integer pkId,@PathVariable Integer enable){ - BdSpecs bdSpecs= new BdSpecs(); + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult updateEnable(@PathVariable Integer pkId, @PathVariable Integer enable) { + BdSpecs bdSpecs = new BdSpecs(); bdSpecs.setEnableState(enable); bdSpecs.setPkId(pkId); bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - return toAjax(specsService.updateById(bdSpecs)); + return toAjax(iBdSpecsService.updateById(bdSpecs)); } - /** - * 查询规格列表 - * @return + * 查询规格列表 */ - @GetMapping("find-all") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public AjaxResult findAll(){ - List list = specsService.list(); + @GetMapping("/find-all") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public AjaxResult findAll() { + List list = iBdSpecsService.list(); return AjaxResult.success(list); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java index 79ec2e29..75d5035a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -9,18 +8,16 @@ import com.hzs.sale.product.vo.AreaClassifyVo; import java.util.List; /** - *

* 商品分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface BdAreaClassifyMapper extends BaseMapper { + /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java index c9520406..ce26806f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdClassify; /** - *

* 规格分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface BdClassifyMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java index ca64d1d3..3482dab2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java @@ -32,11 +32,6 @@ public interface BdProductMapper extends BaseMapper { */ List selectByQueryList(ProductParams productParams); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtBySpecsId(@Param("productSpecsList") List productSpecsList, @Param("pkCountry") Integer pkCountry); - /** * 查询带有规格的产品列表 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java index 999f1c6f..23a2ae13 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java @@ -3,14 +3,8 @@ package com.hzs.sale.product.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdSpecs; - /** - *

* 产品规格表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java index a0f36508..b767d1b6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java @@ -6,20 +6,17 @@ import com.hzs.sale.product.vo.SpecsTypeVo; import java.util.List; - /** - *

* 规格类型表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsTypeMapper extends BaseMapper { + /** * 查询列表 + * * @param specsType * @return */ List selectSpecsTypeList(BdSpecsType specsType); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java index ce80244b..57f3601e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java @@ -1,54 +1,26 @@ package com.hzs.sale.product.provider; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.hzs.common.core.constant.SystemFieldConstants; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.IProductServiceApi; -import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.dto.ProductDTO; -import com.hzs.sale.product.dto.ProductParamDTO; import com.hzs.sale.product.service.IBdProductService; -import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:56 - * @Classname: IProductServiceProvider - * @PackageName: com.hzs.sale.product.provider - */ @Slf4j @DubboService public class IProductServiceProvider implements IProductServiceApi { @Autowired - private IBdProductService productService; + private IBdProductService iBdProductService; - @Autowired - private IBdSpecsService specsService; - - /** - * 根据产品id 查询产品 - * - * @param productId - * @return - */ @Override public R getProduct(Integer productId) { - BdProduct product = productService.getProduct(productId); + BdProduct product = iBdProductService.getProduct(productId); if (product == null) { return R.fail("产品不存在"); } @@ -57,17 +29,11 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryProductDtoById(List productSpecsList, Integer pkCountry) { - List productExtList = productService.queryProductExtById(productSpecsList, pkCountry); - return R.ok(productExtList); - } - @Override public R getProduct(String productCode) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PRODUCT_CODE", productCode); - BdProduct product = productService.getOne(queryWrapper); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdProduct::getProductCode, productCode); + BdProduct product = iBdProductService.getOne(queryWrapper); if (product == null) { return R.fail("产品不存在"); } @@ -76,33 +42,4 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryBdSpecsByIdList(List idList) { - return R.ok(specsService.queryBdSpecsByIdList(idList)); - } - /** - * 产品新增 - * @param productParamDTO - * @return - */ - @Override - public R saveProduct(ProductParamDTO productParamDTO, LoginUser loginUser) { - ProductParams productParams = BeanUtil.copyProperties(productParamDTO, ProductParams.class); - return R.ok(productService.saveProduct(productParams,loginUser)); - } - - /** - * 根据产品主键修改所关联商品是下架/预售 - * @param productDTOList - * @return - */ - @Override - public R updateWaresPreSaleStatus(List productDTOList) { - List productList = productDTOList.stream().map(a -> { - BdProduct bdProduct = new BdProduct(); - bdProduct.setPkId(a.getProductId()); - return bdProduct; - }).collect(Collectors.toList()); - return R.ok(productService.updateWaresPreSaleStatus(productList)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java index ea4428cd..1cdffd24 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -10,17 +9,13 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; /** - *

* 商品分类 服务类 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface IBdAreaClassifyService extends IService { /** * 新增商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -28,6 +23,7 @@ public interface IBdAreaClassifyService extends IService { /** * 修改商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -35,6 +31,7 @@ public interface IBdAreaClassifyService extends IService { /** * 根据主键查询商品分类 + * * @param areaClassifyId * @return */ @@ -42,6 +39,7 @@ public interface IBdAreaClassifyService extends IService { /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ @@ -49,6 +47,7 @@ public interface IBdAreaClassifyService extends IService { /** * 删除 + * * @param pkId */ void deleteAreaClassify(Integer pkId); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java index a4d882ba..b9cff1d2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java @@ -3,22 +3,17 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdClassify; - /** - *

* 规格分类 服务类 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface IBdClassifyService extends IService { - /** * 根据id 查询详情 + * * @param classifyId * @return */ BdClassify getClassify(Integer classifyId); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java index 92136316..57bf6a4f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java @@ -3,7 +3,6 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.vo.ProductVo; @@ -26,11 +25,6 @@ public interface IBdProductService extends IService { */ BdProduct getProduct(Integer pkProduct); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtById(List productSpecsList, Integer pkCountry); - /** * 新增商品信息 * @@ -99,14 +93,6 @@ public interface IBdProductService extends IService { */ List queryProductExistSpecs(Integer pkCountry, Integer systemType); - /** - * 根据产品主键修改所关联商品是下架/预售 - * - * @param productList - * @return - */ - Boolean updateWaresPreSaleStatus(List productList); - /** * 供应商产品统计 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java index 5d380819..e47d27d6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java @@ -2,32 +2,23 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.classify.BdSpecsType; import java.util.List; - /** - *

* 产品规格表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsService extends IService { /** * 根据id查询产品规格表 + * * @param specsId */ BdSpecs getSpecs(Integer specsId); /* - * @description: 根据主键List查询规格 - * @author: sui q - * @date: 2023/11/30 15:18 - * @param: null null + * 根据主键List查询规格 **/ List queryBdSpecsByIdList(List idList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java index c98f7ad4..8409026c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java @@ -8,31 +8,28 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; - /** - *

* 规格类型表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsTypeService extends IService { /** * 根据id 查询规格分类 + * * @return */ BdSpecsType getSpecsType(Integer specsTypeId); /** * 新增规格分类 + * * @param specsTypeParam */ void saveSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser); /** * 修改规格分类 + * * @param specsTypeParam * @param loginUser */ @@ -40,6 +37,7 @@ public interface IBdSpecsTypeService extends IService { /** * 查询列表 + * * @param specsType * @return */ @@ -47,7 +45,8 @@ public interface IBdSpecsTypeService extends IService { /** * 删除 + * * @param pkId */ - void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser); + void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java index 093ce60e..7707b355 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java @@ -1,28 +1,19 @@ package com.hzs.sale.product.service.impl; - import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.common.domain.sale.product.BdAreaClassifySpecialArea; -import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; import com.hzs.sale.product.mapper.BdAreaClassifyMapper; import com.hzs.sale.product.service.IBdAreaClassifyService; import com.hzs.sale.product.service.IBdAreaClassifySpecialAreaService; import com.hzs.sale.product.vo.AreaClassifyVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,28 +23,16 @@ import java.util.Date; import java.util.List; /** - *

* 商品分类 服务实现类 - *

- * - * @author hzs - * @since 2022-09-05 */ @Service public class BdAreaClassifyServiceImpl extends ServiceImpl implements IBdAreaClassifyService { + @Autowired - private RedisService redisService; + private IBdAreaClassifyService iBdAreaClassifyService; @Autowired - private IBdAreaClassifyService areaClassifyService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; - @Autowired - private IBdAreaClassifySpecialAreaService areaClassifySpecialAreaService; - /** - * 新增商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 登录用户 - */ + private IBdAreaClassifySpecialAreaService iBdAreaClassifySpecialAreaService; + @Override @Transactional(rollbackFor = Exception.class) public void saveAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { @@ -61,11 +40,9 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(), EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.insert(areaClassify); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ + if (areaClassifyParam.getSpecialAreaList() != null) { for (Integer number : areaClassifyParam.getSpecialAreaList()) { BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); areaClassifySpecialArea.setSpecialArea(number); @@ -76,72 +53,42 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl 0){ - areaClassifySpecialAreaService.saveBatch(list); + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); } - } - /** - * 修改商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 当前登录用户 - */ @Override @Transactional(rollbackFor = Exception.class) public void updateAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { BdAreaClassify areaClassify = BeanUtil.copyProperties(areaClassifyParam, BdAreaClassify.class); areaClassify.setPkModified(loginUser.getUserId()); areaClassify.setModifiedTime(new Date()); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(),EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.updateById(areaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ - for (Integer number : areaClassifyParam.getSpecialAreaList()) { - BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); - areaClassifySpecialArea.setSpecialArea(number); - areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); - areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); - areaClassifySpecialArea.setCreationTime(new Date()); - areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); - list.add(areaClassifySpecialArea); - } - } - if (list.size() > 0){ - areaClassifySpecialAreaService.saveBatch(list); - } - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassify.getPkId(); - redisService.deleteObject(redisKey); - } - - /** - * 根据主键查询商品分类 - * @param areaClassifyId - * @return - */ - @Override - public BdAreaClassify getAreaClassify(Integer areaClassifyId) { - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassifyId; - BdAreaClassify areaClassify = redisService.getCacheObject(redisKey); - if (null == areaClassify) { - areaClassify = baseMapper.selectById(areaClassifyId); - if (null != areaClassify) { - redisService.setCacheObject(redisKey, areaClassify); + if (areaClassifyParam.getSpecialAreaList() != null) { + for (Integer number : areaClassifyParam.getSpecialAreaList()) { + BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); + areaClassifySpecialArea.setSpecialArea(number); + areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); + areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); + areaClassifySpecialArea.setCreationTime(new Date()); + areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); + list.add(areaClassifySpecialArea); } } - return areaClassify; + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); + } + } + + @Override + public BdAreaClassify getAreaClassify(Integer areaClassifyId) { + return baseMapper.selectById(areaClassifyId); } - /** - * 查询商品分类列表 - * @param areaClassifyParam - * @return - */ @Override public List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam) { return baseMapper.selectByAreaClassifyList(areaClassifyParam); @@ -150,18 +97,14 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl bdAreaClassify = new UpdateWrapper(); - bdAreaClassify.eq("PK_ID",pkId); - bdAreaClassify.set("PK_MODIFIED",SecurityUtils.getUserId()); - bdAreaClassify.set("MODIFIED_TIME",new Date()); - bdAreaClassify.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - areaClassifyService.update(bdAreaClassify); - - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + pkId; - redisService.deleteObject(redisKey); + LambdaUpdateWrapper bdAreaClassify = new LambdaUpdateWrapper<>(); + bdAreaClassify.eq(BdAreaClassify::getPkId, pkId); + bdAreaClassify.set(BdAreaClassify::getPkModified, SecurityUtils.getUserId()); + bdAreaClassify.set(BdAreaClassify::getModifiedTime, new Date()); + bdAreaClassify.set(BdAreaClassify::getDelFlag, EDelFlag.DELETE.getValue()); + iBdAreaClassifyService.update(bdAreaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java index 582e47c0..0ab17cee 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java @@ -1,43 +1,20 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdClassify; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdClassifyMapper; import com.hzs.sale.product.service.IBdClassifyService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - *

* 规格分类 服务实现类 - *

- * - * @author hzs - * @since 2022-08-26 */ @Service public class BdClassifyServiceImpl extends ServiceImpl implements IBdClassifyService { - @Autowired - private RedisService redisService; - /** - * 根据id 查询详情 - * @param classifyId - * @return - */ @Override public BdClassify getClassify(Integer classifyId) { - String redisKey = CacheConstants.BD_CLASSIFY + classifyId; - BdClassify classify = redisService.getCacheObject(redisKey); - if (null == classify) { - classify = baseMapper.selectById(classifyId); - if (null != classify) { - redisService.setCacheObject(redisKey, classify); - } - } - return classify; + return baseMapper.selectById(classifyId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java index 8b61f095..0498206f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java @@ -14,7 +14,6 @@ import com.hzs.common.domain.sale.classify.BdClassify; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.*; -import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.mapper.BdProductMapper; @@ -22,9 +21,6 @@ import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.service.*; import com.hzs.sale.product.vo.ProductVo; import com.hzs.sale.product.vo.SupplierProductCensusVo; -import com.hzs.sale.product.vo.WaresDetailVo; -import com.hzs.sale.wares.service.IBdWaresDetailService; -import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.ICubasdocApi; import com.hzs.system.sys.dto.BusinessLogDTO; @@ -46,43 +42,34 @@ import java.util.stream.Collectors; public class BdProductServiceImpl extends ServiceImpl implements IBdProductService { @Autowired - private IBdWaresExtendService waresExtendService; + private IBdClassifyService iBdClassifyService; @Autowired - private IBdClassifyService classifyService; + private IBdProductExtendService iBdProductExtendService; @Autowired - private IBdProductExtendService productExtendService; + private IBdProductSpecsService iBdProductSpecsService; + @Autowired + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdProductSpecsService productSpecsService; - @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdWaresDetailService waresDetailService; @DubboReference - ICubasdocApi cubasdocApi; + ICubasdocApi iCubasdocApi; @DubboReference - ITransactionServiceApi transactionServiceApi; + ITransactionServiceApi iTransactionServiceApi; @Override public BdProduct getProduct(Integer pkProduct) { return baseMapper.selectById(pkProduct); } - @Override - public List queryProductExtById(List productSpecsList, Integer pkCountry) { - return baseMapper.queryProductExtBySpecsId(productSpecsList, pkCountry); - } - @Override @Transactional(rollbackFor = Exception.class) public String saveProduct(ProductParams productParams, LoginUser loginUser) { String productCode = productParams.getProductCode(); BdProduct bdProduct = BeanUtil.copyProperties(productParams, BdProduct.class); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setProductCode(productCode); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setProductCode(productCode); bdProduct.setPkCreator(loginUser.getUserId()); bdProduct.setCreationTime(new Date()); bdProduct.setPkCreator(loginUser.getUserId()); @@ -98,7 +85,7 @@ public class BdProductServiceImpl extends ServiceImpl cubasdocDTO = cubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); + R cubasdocDTO = iCubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); CubasdocDTO cubasdoc = cubasdocDTO.getData(); if (cubasdoc != null) { bdProduct.setPkCubasdoc(productParams.getPkCubasdoc()); @@ -118,7 +105,7 @@ public class BdProductServiceImpl extends ServiceImpl 0) { - List specsTypeList = specsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); + List specsTypeList = iBdSpecsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); List list = specsTypeList.stream().map(BdSpecsType::getTypeName).collect(Collectors.toList()); str.append("规格明细:").append(StringUtils.join(list, ",")); } @@ -223,9 +210,9 @@ public class BdProductServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setPkId(productParams.getPkId()); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setPkId(productParams.getPkId()); bdProduct.setPkModified(loginUser.getUserId()); bdProduct.setModifiedTime(new Date()); if (productParams.getIsPutOn().equals(EYesNo.YES.getIntValue())) { @@ -244,12 +231,12 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getPkProduct, productParams.getPkId()); - productExtendService.update(productExtend, queryWrapper); + iBdProductExtendService.update(productExtend, queryWrapper); // 生成规格明细 if (productParams.getPkSpecsType() != null) { LambdaQueryWrapper removeWrapper = new LambdaQueryWrapper<>(); removeWrapper.eq(BdProductSpecs::getPkProduct, bdProduct.getPkId()); - productSpecsService.remove(removeWrapper); + iBdProductSpecsService.remove(removeWrapper); for (Integer id : productParams.getPkSpecsType()) { BdProductSpecs productSpecs = new BdProductSpecs(); productSpecs.setPkProduct(bdProduct.getPkId()); @@ -258,7 +245,7 @@ public class BdProductServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BdProductSpecs::getPkProduct, pkId); - productSpecsService.update(bdProductSpecs, wrapper); + iBdProductSpecsService.update(bdProductSpecs, wrapper); // 创建删除产品日志 if (product != null) { createRemoveProductLog(product, loginUser, EApprovalBusiness.PRODUCT_REMOVE.getValue()); @@ -336,25 +323,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, maxSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之前的全都上移一位 并且将产品修改为该号码 - productExtendService.updateMoveUpBySort(maxSort); + iBdProductExtendService.updateMoveUpBySort(maxSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -363,25 +350,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, minSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之下的全都下移一位 并且将产品修改为该号码 - productExtendService.updateMoveDownBySort(minSort); + iBdProductExtendService.updateMoveDownBySort(minSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -422,11 +409,11 @@ public class BdProductServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, sort + 1); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); if (product != null) { createFloatingRoofLog(product, loginUser, EApprovalBusiness.PRODUCT_TOP.getValue()); } @@ -476,47 +463,6 @@ public class BdProductServiceImpl extends ServiceImpl productList) { - List list = productList.stream().map(BdProduct::getPkId).collect(Collectors.toList()); - - try { - List waresDetailVoList = waresDetailService.listByPkProduct(list); - // 缺货状态 - List waresOutStockList = new ArrayList<>(); - //预售状态 - List warespreSaleList = new ArrayList<>(); - for (WaresDetailVo waresDetailVo : waresDetailVoList) { - if (waresDetailVo.getIsPreSale() == null || waresDetailVo.getIsPreSale().equals(EYesNo.NO.getIntValue())) { - // 缺货状态 - waresOutStockList.add(waresDetailVo.getPkWares()); - } else if (waresDetailVo.getIsPreSale().equals(EYesNo.YES.getIntValue())) { - // 是预售 修改为预售状态 - warespreSaleList.add(waresDetailVo.getPkWares()); - } - - } - // 更新缺货状态 - if (waresOutStockList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, waresOutStockList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.OUT_STOCK.getValue()); - waresExtendService.update(updateWrapper); - } - // 更新预售状态 - if (warespreSaleList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, warespreSaleList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.PRESALE.getValue()); - waresExtendService.update(updateWrapper); - } - } catch (Exception e) { - return false; - } - return true; - } - @Override public List getSupplierProductCensus(SupplierProductCensusParam supplierProductCensusParam) { return baseMapper.getSupplierProductCensus(supplierProductCensusParam); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java index 4cda766a..635f372b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java @@ -1,54 +1,30 @@ package com.hzs.sale.product.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdSpecsMapper; import com.hzs.sale.product.service.IBdSpecsService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** - *

* 产品规格表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsServiceImpl extends ServiceImpl implements IBdSpecsService { - @Autowired - private RedisService redisService; - /** - * 根据id查询产品规格表 - * @param specsId - * @return - */ @Override public BdSpecs getSpecs(Integer specsId) { - String redisKey = CacheConstants.BD_SPECS + specsId; - BdSpecs specs = redisService.getCacheObject(redisKey); - if (null == specs) { - specs = baseMapper.selectById(specsId); - if (null != specs) { - redisService.setCacheObject(redisKey, specs); - } - } - return specs; + return baseMapper.selectById(specsId); } @Override public List queryBdSpecsByIdList(List idList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.in(SystemFieldConstants.PK_ID, idList); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(BdSpecs::getPkId, idList); return baseMapper.selectList(queryWrapper); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java index 3d99bd28..9077c40a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java @@ -3,13 +3,7 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.security.utils.SecurityUtils; @@ -19,9 +13,7 @@ import com.hzs.sale.product.mapper.BdSpecsTypeMapper; import com.hzs.sale.product.service.IBdSpecsService; import com.hzs.sale.product.service.IBdSpecsTypeService; import com.hzs.sale.product.vo.SpecsTypeVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -31,38 +23,19 @@ import java.util.Date; import java.util.List; /** - *

* 规格类型表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsTypeServiceImpl extends ServiceImpl implements IBdSpecsTypeService { + @Autowired - private RedisService redisService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdSpecsService specsService; - /** - * 根据id 查询规格分类 - * @return - */ + private IBdSpecsService iBdSpecsService; + @Override public BdSpecsType getSpecsType(Integer specsTypeId) { - String redisKey = CacheConstants.BD_SPECS_TYPE + specsTypeId; - BdSpecsType specsType = redisService.getCacheObject(redisKey); - if (null == specsType) { - specsType = baseMapper.selectById(specsTypeId); - if (null != specsType) { - redisService.setCacheObject(redisKey, specsType); - } - } - return specsType; + return baseMapper.selectById(specsTypeId); } @Override @@ -75,8 +48,6 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, specsTypeParam.getTypeName(), EYesNo.NO,EYesNo.NO); - bdSpecsType.setPkTransactionKey(transaction.getData()); baseMapper.insert(bdSpecsType); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { @@ -86,21 +57,11 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); specsList.add(bdSpecs); } - - specsService.saveBatch(specsList); - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); + iBdSpecsService.saveBatch(specsList); } - /** - * 修改规格分类 - * @param specsTypeParam - * @param loginUser - */ @Override public void updateSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser) { BdSpecsType bdSpecsType = new BdSpecsType(); @@ -111,76 +72,59 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl specsId = new ArrayList<>(); for (SpecsParam specsParam : specsTypeParam.getSpecsList()) { - if (specsParam.getSpecsId() != null){ + if (specsParam.getSpecsId() != null) { specsId.add(specsParam.getSpecsId()); } } - specsService.remove(new QueryWrapper().notIn("PK_ID",specsId).eq("PK_SPECS_TYPE",specsTypeParam.getPkId())); + iBdSpecsService.remove(new QueryWrapper().notIn("PK_ID", specsId).eq("PK_SPECS_TYPE", specsTypeParam.getPkId())); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { BdSpecs bdSpecs = new BdSpecs(); - if (specs.getSpecsId() != null){ - BdSpecs sp = specsService.getById(specs.getSpecsId()); - sp.setSpecsName(specs.getValue()); - sp.setModifiedTime(new Date()); - sp.setPkModified(SecurityUtils.getUserId()); - sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); - specsService.updateById(sp); - }else { - bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); - bdSpecs.setSpecsName(specs.getValue()); - bdSpecs.setPkCreator(SecurityUtils.getUserId()); - bdSpecs.setCreationTime(new Date()); - bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(),EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); - specsList.add(bdSpecs); - } - - + if (specs.getSpecsId() != null) { + BdSpecs sp = iBdSpecsService.getById(specs.getSpecsId()); + sp.setSpecsName(specs.getValue()); + sp.setModifiedTime(new Date()); + sp.setPkModified(SecurityUtils.getUserId()); + sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); + iBdSpecsService.updateById(sp); + } else { + bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); + bdSpecs.setSpecsName(specs.getValue()); + bdSpecs.setPkCreator(SecurityUtils.getUserId()); + bdSpecs.setCreationTime(new Date()); + bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); + specsList.add(bdSpecs); + } } - if (specsList.size() > 0){ - specsService.saveBatch(specsList); + if (specsList.size() > 0) { + iBdSpecsService.saveBatch(specsList); } - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); } - /** - * 查询列表 - * @param specsType - * @return - */ + @Override public List selectSpecsTypeList(BdSpecsType specsType) { return baseMapper.selectSpecsTypeList(specsType); } - /** - * 删除 - * @param pkId - */ - @Override + @Transactional(rollbackFor = Exception.class) - public void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser) { - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_ID",pkId); - updateWrapper.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - updateWrapper.set("MODIFIED_TIME",new Date()); - updateWrapper.set("PK_MODIFIED",loginUser.getUserId()); - specsTypeService.update(updateWrapper); + @Override + public void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("PK_ID", pkId); + updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); + updateWrapper.set("MODIFIED_TIME", new Date()); + updateWrapper.set("PK_MODIFIED", loginUser.getUserId()); + iBdSpecsTypeService.update(updateWrapper); UpdateWrapper updateSpecsWrapper = new UpdateWrapper<>(); - updateSpecsWrapper.eq("PK_SPECS_TYPE",pkId); - updateSpecsWrapper.set("MODIFIED_TIME",new Date()); - updateSpecsWrapper.set("PK_MODIFIED",loginUser.getUserId()); + updateSpecsWrapper.eq("PK_SPECS_TYPE", pkId); + updateSpecsWrapper.set("MODIFIED_TIME", new Date()); + updateSpecsWrapper.set("PK_MODIFIED", loginUser.getUserId()); updateSpecsWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - specsService.update(updateSpecsWrapper); - String redisKey = CacheConstants.BD_SPECS_TYPE + pkId; - redisService.deleteObject(redisKey); + iBdSpecsService.update(updateSpecsWrapper); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java deleted file mode 100644 index dfb031f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hzs.sale.product.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/24 16:20 - * @Classname: WaresDetailVo - * @PackageName: com.hzs.sale.product.vo - */ - -import lombok.Data; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.product.vo - *@Author: yh - *@CreateTime: 2024-04-24 16:20 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class WaresDetailVo { - - /** - * 商品主键 - */ - private Integer pkWares; - - /** - * 是否允许预售 0 是 1 否 - */ - private Integer isPreSale; -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java index 5a0a601e..89569f6a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java @@ -9,23 +9,12 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -/** - * @Description: - * @Author: sui q - * @Time: 2022/10/25 13:47 - * @Classname: SaleApprovalBusiness - * @PackageName: com.hzs.sale.pub.provider - */ @Slf4j @DubboService public class SaleApprovalBusinessProvider implements ISaleApprovalServiceApi { - private ISaleApprovalBusiness saleApprovalBusiness; - @Autowired - public void setSaleApprovalBusiness(ISaleApprovalBusiness saleApprovalBusiness) { - this.saleApprovalBusiness = saleApprovalBusiness; - } + private ISaleApprovalBusiness saleApprovalBusiness; @Override public R approvalCallback(ApprovalBusinessResultDTO approvalBusinessResultDTO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java index 43debb75..76e5c129 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java @@ -2,28 +2,11 @@ package com.hzs.sale.refund.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 退款表 Mapper 接口 - * - * @author hzs - * @since 2023-08-25 */ public interface SaRefundMapper extends BaseMapper { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(@Param("param") RefundQueryParam param, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java deleted file mode 100644 index ddca73af..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.sale.refund.param; - -import lombok.Data; - -import java.util.Date; - -/** - * @Description: 退款查询入参 - * @Author: jiang chao - * @Time: 2023/8/28 9:49 - * @Classname: RefundQueryParam - * @PackageName: com.hzs.sale.order.param - */ -@Data -public class RefundQueryParam { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 订单编号 - */ - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - - /** - * 退款状态 - */ - private Integer refundStatus; - - /** - * 退款编号 - */ - private String refundCode; - - /** - * 产品编号 - */ - private String productCode; - - /** - * 产品名称 - */ - private String productName; - - /** - * 创建时间 - */ - private Date[] creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java deleted file mode 100644 index 2bf37f6e..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.sale.refund.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.sale.refund.ISaRefundServiceApi; -import com.hzs.sale.refund.service.IRefundBusinessService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @Description: 订单退款对外服务api - * @Author: jiang chao - * @Time: 2023/8/26 14:45 - * @Classname: SaRefundServiceProvider - * @PackageName: com.hzs.sale.order.provider - */ -@Slf4j -@DubboService -public class SaRefundServiceProvider implements ISaRefundServiceApi { - - @Autowired - private IRefundBusinessService iRefundBusinessService; - - @Override - public R onlinePayRefundCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - try { - String str = iRefundBusinessService.refundOnlineCallback(orderCode, refundCode, refundStatus, refundMsg); - if (null == str) { - return R.ok(); - } - return R.fail("直销订单在线支付退款失败: {}", str); - } catch (Exception e) { - log.error("直销订单在线支付退款异常: ", e); - return R.fail("直销订单在线支付退款异常: {}", e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java deleted file mode 100644 index 965308d3..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.sale.refund.service; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: IRefundBusinessService - * @PackageName: com.hzs.sale.order.service - */ -public interface IRefundBusinessService { - - /** - * 在线支付订单退款回调 - * - * @param orderCode 订单编号 - * @param refundCode 退款编号 - * @param refundStatus 退款状态 - * @param refundMsg 退款信息 - * @return - */ - String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg); - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java index 003e8255..19ae025d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java @@ -2,26 +2,10 @@ package com.hzs.sale.refund.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; - -import java.util.List; /** * 退款表 服务类 - * - * @author hzs - * @since 2023-08-25 */ public interface ISaRefundService extends IService { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(RefundQueryParam param, Integer pkCountry); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java deleted file mode 100644 index fc242c23..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.sale.refund.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAfterSale; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.service.IRefundBusinessService; -import com.hzs.sale.refund.service.ISaRefundService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: RefundBusinessServiceImpl - * @PackageName: com.hzs.sale.order.service.impl - */ -@Slf4j -@Service -public class RefundBusinessServiceImpl implements IRefundBusinessService { - - @Autowired - private ISaRefundService iSaRefundService; - - @Transactional(rollbackFor = Exception.class) - @Override - public String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - // 存在退款单号处理 - if (StringUtils.isNotEmpty(refundCode)) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(SaRefund::getRefundCode, refundCode); - SaRefund saRefund = iSaRefundService.getOne(queryWrapper); - if (null == saRefund) { - return "订单售后信息已不存在"; - } - if (EAfterSale.PROCESSED.getValue() == saRefund.getRefundStatus()) { - return "订单售后已经完成"; - } - - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.eq(SaRefund::getPkId, saRefund.getPkId()); - updateWrapper.set(SaRefund::getRefundStatus, refundStatus); - updateWrapper.set(SaRefund::getRefundRemark, refundMsg); - updateWrapper.set(SaRefund::getPkModified, MagicNumberConstants.PK_ADMIN); - updateWrapper.set(SaRefund::getModifiedTime, new Date()); - if (!iSaRefundService.update(updateWrapper)) { - return "直销订单在线支付退款,更新退款单失败"; - } - } - return null; - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java index 4d8880a5..549db29b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java @@ -3,25 +3,13 @@ package com.hzs.sale.refund.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.sale.order.SaRefund; import com.hzs.sale.refund.mapper.SaRefundMapper; -import com.hzs.sale.refund.param.RefundQueryParam; import com.hzs.sale.refund.service.ISaRefundService; -import com.hzs.sale.refund.vo.RefundQueryVO; import org.springframework.stereotype.Service; -import java.util.List; - /** * 退款表 服务实现类 - * - * @author hzs - * @since 2023-08-25 */ @Service public class SaRefundServiceImpl extends ServiceImpl implements ISaRefundService { - @Override - public List queryRefundList(RefundQueryParam param, Integer pkCountry) { - return baseMapper.queryRefundList(param, pkCountry); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java deleted file mode 100644 index 143c0b9b..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.hzs.sale.refund.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * @Description: 退款查询VO - * @Author: jiang chao - * @Time: 2023/8/28 9:48 - * @Classname: RefundQueryVO - * @PackageName: com.hzs.sale.order.vo - */ -@Data -public class RefundQueryVO { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 订单编号 - */ - @Excel(name = "订单编号") - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - /** - * 订单类型显示 - */ - @Excel(name = "订单类型") - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) - private String orderTypeVal; - - /** - * 退款状态 - */ - private Integer refundStatus; - /** - * 退款状态显示 - */ - @Excel(name = "退款状态") - @Transaction(transactionKey = EnumsPrefixConstants.REFUND_STATUS) - private String refundStatusVal; - - /** - * 退款编号 - */ - @Excel(name = "退款编号") - private String refundCode; - /** - * 退款金额 - */ - @Excel(name = "退款金额") - private BigDecimal refundAmount; - /** - * 退款业绩 - */ - @Excel(name = "退款业绩") - private BigDecimal refundAchieve; - /** - * 退款考核业绩 - */ - private BigDecimal refundAssAchieve; - /** - * 退款邮费 - */ - @Excel(name = "退款邮费") - private BigDecimal postage; - - /** - * 产品编号 - */ - @Excel(name = "产品编号") - private String productCode; - /** - * 产品名称 - */ - @Excel(name = "产品名称") - private String productName; - /** - * 产品规格 - */ - @Excel(name = "产品规格") - private String specsName; - /** - * 产品价格 - */ - @Excel(name = "产品价格") - private BigDecimal price; - /** - * 产品业绩 - */ - @Excel(name = "产品业绩") - private BigDecimal achievement; - /** - * 产品考核业绩 - */ - private BigDecimal ass_achievement; - /** - * 产品数量 - */ - @Excel(name = "产品数量") - private Integer quantity; - - /** - * 创建日期 - */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java index a0a885ea..58a5cfaa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java @@ -13,11 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; /** - * @Description: 购票对外dubbo服务 - * @Author: jiang chao - * @Time: 2025/1/14 15:44 - * @Classname: TicketServiceProvider - * @PackageName: com.hzs.sale.ticket.provider + * 购票对外dubbo服务 */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java index 6794bd95..2609eedc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; import org.apache.ibatis.annotations.Param; @@ -54,14 +53,6 @@ public interface BdWaresDetailMapper extends BaseMapper { */ List selectByPkWares(@Param("pkWares") Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProducts - * @return - */ - List listByPkProduct(@Param("pkProducts") List pkProducts); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java index af6a2524..89e7f68d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.param; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.domain.system.config.BdLabel; -import com.hzs.sale.wares.vo.SaTWaresSkuVo; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -232,11 +231,6 @@ public class CuWaresParams implements Serializable { */ private Integer source; - /** - * 商品sku信息 - */ - List waresSkuList; - /** * 入汇率 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java index 903ded33..aa3ebe87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java @@ -11,33 +11,19 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.Date; -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.sale.wares.provider - * @Author: yh - * @CreateTime: 2023-03-02 17:07 - * @Description: TODO - * @Version: 1.0 - */ @DubboService public class WaresServiceProvider implements IWaresServiceApi { @Autowired - private IBdWaresService waresService; + private IBdWaresService iBdWaresService; @Autowired - private IBdWaresLabelService waresLabelService; + private IBdWaresLabelService iBdWaresLabelService; - /** - * 校验标签是否使用 - * - * @param pkLabel 标签主键 - * @return - */ @Override public R checkLabelisUse(Integer pkLabel) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdWaresLabel::getPkLable, pkLabel); - int count = waresLabelService.count(queryWrapper); + int count = iBdWaresLabelService.count(queryWrapper); if (count > 0) { return R.ok(true); } else { @@ -45,37 +31,19 @@ public class WaresServiceProvider implements IWaresServiceApi { } } - /** - * 修改自动上下架状态(自动上架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoStart(Date currentTime) { - waresService.updateByAutoStartAndAutoStart(currentTime); + iBdWaresService.updateByAutoStartAndAutoStart(currentTime); } - /** - * @description: 修改商品预售状态 - * @author: zhang jing - * @date: 2024/10/24 16:09 - * @param: [] - * @return: void - **/ @Override public void waresPreSale() { - waresService.waresPreSale(); + iBdWaresService.waresPreSale(); } - - /** - * 修改自动上下架状态(自动下架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoEnd(Date currentTime) { - waresService.updateByAutoStartAndAutoEnd(currentTime); + iBdWaresService.updateByAutoStartAndAutoEnd(currentTime); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java index 38ec86bb..4eeec840 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; @@ -40,14 +39,6 @@ public interface IBdWaresDetailService extends IService { */ List selectByPkWares(Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProduct - * @return - */ - List listByPkProduct(List pkProduct); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java index 8b9f3cf4..46addcaf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java @@ -7,7 +7,6 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.mapper.BdWaresDetailMapper; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.service.IBdWaresDetailService; @@ -70,11 +69,6 @@ public class BdWaresDetailServiceImpl extends ServiceImpl listByPkProduct(List pkProduct) { - return baseMapper.listByPkProduct(pkProduct); - } - @Override public List selectByList(Integer pkWares) { return baseMapper.selectByList(pkWares); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java deleted file mode 100644 index 4d2424f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java +++ /dev/null @@ -1,196 +0,0 @@ -package com.hzs.sale.wares.vo; - -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.utils.StringUtils; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品列表VO - * @Author: jiang chao - * @Time: 2023/5/24 15:57 - * @Classname: SaTWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class SaTWaresQueryVO { - - /** - * 主键 - */ - private Long pkId; - /** - * 三方商品表ID - */ - private Long pkTWares; - - /** - * 三方商品SKU表ID - */ - @Excel(name = "直供序号") - private Long pkTWaresSku; - - /** - * 商品名称 - */ - @Excel(name = "商品名称") - private String productName; - - /** - * 分类显示 - */ - @Excel(name = "商品分类") - private String titleCategory; - - public String getTitleCategory() { - if (StringUtils.isNotEmpty(this.titleCategoryOne)) { - titleCategory = this.titleCategoryOne; - } - if (StringUtils.isNotEmpty(this.titleCategoryTwo)) { - titleCategory += "-" + this.titleCategoryTwo; - } - if (StringUtils.isNotEmpty(this.titleCategoryThree)) { - titleCategory += "-" + this.titleCategoryThree; - } - return titleCategory; - } - - /** - * 商品图片 - */ - private String cover; - - /** - * 品牌名称 - */ - private String brandName; - /** - * 规格值冗余 - */ - @Excel(name = "商品规格") - private String specValueNames; - - /** - * 来源渠道 - */ - private Integer source; - /** - * 来源渠道显示 - */ - @Excel(name = "平台") - private String sourceVal; - - /** - * 协议价(供应价) - */ - @Excel(name = "供应价(¥)") - private BigDecimal agreementPrice; - /** - * 商品售价 - */ - @Excel(name = "售价(¥)") - private BigDecimal price; - /** - * 商品pv - */ - @Excel(name = "业绩(¥)") - private BigDecimal achieve; - - /** - * 商品PV(美元) - */ - @Excel(name = "业绩($)") - private BigDecimal achievementDollar; - /** - * 分享pv - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - @Excel(name = "毛利润(¥)") - private BigDecimal grossProfit; - /** - * 净利润 - */ - @Excel(name = "纯利润(¥)") - private BigDecimal netProfit; - - /** - * 是否上架(0=上架,1=下架) - */ - private Integer isPutOn; - - /** - * 是否推荐(0=推荐,1=不推荐) - */ - @Transaction(transactionKey = EnumsPrefixConstants.RECOMMEND_TYPE) - private Integer isRecommend; - /** - * 是否推荐 - */ - private String isRecommendVal; - - /** - * 商品分类(一级分类) - */ - private Long pkCategoryOne; - /** - * 一级分类名称 - */ - private String titleCategoryOne; - - /** - * 商品分类(二级分类) - */ - private Long pkCategoryTwo; - /** - * 一级分类名称 - */ - private String titleCategoryTwo; - - /** - * 商品分类(三级分类) - */ - private Long pkCategoryThree; - /** - * 一级分类名称 - */ - private String titleCategoryThree; - - - /** - * 虚拟销量 - */ - @Excel(name = "虚拟销量") - private Integer sale; - - /** - * 实际销量 - */ - @Excel(name = "实际销量") - private Integer realSale; - - /** - * 销量 - */ - @Excel(name = "销量") - private Integer allSale; - - /** - * 下架备注 - */ - @Excel(name = "下架说明") - private String putOnRemark; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java deleted file mode 100644 index cb29525a..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.wares.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/19 17:13 - * @Classname: SaTWaresSkuVo - * @PackageName: com.hzs.sale.wares.vo - */ - -import com.alibaba.fastjson2.JSONArray; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import lombok.Data; - -import java.math.BigDecimal; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.wares.vo - *@Author: yh - *@CreateTime: 2023-05-19 17:13 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SaTWaresSkuVo { - - /** - * 主键 - */ - - private Long pkId; - - /** - * 三方商品表ID - */ - - private Long pkTWares; - - /** - * 同步三方商品规格TID - */ - - private Long pkThWaresSku; - - /** - * 规格ID冗余 - */ - - private String specValueIds; - - /** - * 规格值冗余 - */ - - private String specValueNames; - - /** - * 商品价格 - */ - - private BigDecimal price; - - /** - * 商品pv - */ - - private BigDecimal achieve; - - /** - * 商品bv - */ - - private BigDecimal assAchieve; - - /** - * 规格图片 - */ - - private String image; - - /** - * 是否上架(0=上架,1=下架) - */ - - private Integer isPutOn; - - /** - * 重量 - */ - - private Integer weight; - - - /** - * 默认规格 - */ - private JSONArray productGroup; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java deleted file mode 100644 index 3fd39086..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.hzs.sale.wares.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品定价查询VO - * @Author: jiang chao - * @Time: 2023/5/18 10:57 - * @Classname: TWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class TWaresQueryVO { - - /** - * 产品主键 - */ - private Long pkId; - /** - * 商品主键 - */ - private Long pkTWares; - - /** - * skuId - */ - private Long tId; - /** - * 商品ID - */ - private Long pkThWares; - - /** - * 商品名称 - */ - private String title; - /** - * 商品图片 - */ - private String cover; - /** - * 商品分类(全部级别,需要处理后返回) - */ - private String thirdCategoryName; - - /** - * 商品分类(一级分类) - */ - private String category; - /** - * 商品类目(二级分类) - */ - private String classify; - - /** - * 品牌名称 - */ - private String thirdBrandName; - - /** - * 规格值组合 - */ - private String specValueNames; - - /** - * 来源平台 - */ - private Integer source; - /** - * 来源平台显示 - */ - private String sourceVal; - - /** - * 规格协议价(单位:分) 供应价 - */ - private BigDecimal agreementPrice; - /** - * 规格指导价(单位:分) - */ - private BigDecimal guidePrice; - - /** - * 上下架状态(0=下架,1=上架) -- 三方状态,需要转换成系统状态 - */ - private Integer status; - - /** - * 是否定价(0=是,1=否) - */ - private Integer confirmPrice; - - /** - * 是否显示(0=显示,1=隐藏) - */ - private Integer showFlag; - - /** - * 售价 - */ - private BigDecimal price; - - /** - * 业绩 - */ - private BigDecimal achievement; - - /** - * 业绩(美元) - */ - private BigDecimal achievementDollar; - - /** - * 分享业绩 - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - private BigDecimal grossProfit; - - /** - * 净利润 - */ - private BigDecimal netProfit; - -} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml index 29ac4929..c1fde690 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml @@ -96,32 +96,4 @@ and trunc(sysdate) between b.act_start_date and b.act_end_date - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml index 4d6d4ca3..da7f91e4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml @@ -2,45 +2,4 @@ - - - merge into AC_RETAIL_PICK_LOG arpl - using (SELECT sum(soi.WARES_QUANTITY) quantity, so.pk_member pk_member - FROM sa_order so - INNER JOIN SA_ORDER_ITEMS soi - ON so.pk_id = soi.pk_order - WHERE so.del_flag = 0 - and so.order_status = 1 - and so.order_type in (41, 42, 43) - and so.system_type = #{systemType} - and soi.del_flag = 0 - and soi.is_gift = 1 - and soi.pk_wares in - - #{item} - - and so.pay_time >= #{startDate, jdbcType=DATE} - and so.pay_time < #{endDate, jdbcType=DATE} - group by so.pk_member - having sum(soi.WARES_QUANTITY) >= #{waresQuantity}) tmp - on (arpl.del_flag = 0 and arpl.PK_MEMBER = tmp.pk_member and arpl.PK_BASE_ID = #{pkBaseId}) - when not matched then - insert ( - PK_ID, - PK_BASE_ID, - PK_MEMBER, - WARES_QUANTITY, - GIFT_QUANTITY, - PK_CREATOR, - CREATION_TIME) - values ( - AC_RETAIL_PICK_LOG_SEQ.Nextval, - #{pkBaseId}, - tmp.pk_member, - tmp.quantity, - trunc(tmp.quantity / #{waresQuantity}) * #{giftQuantity}, - 100000000, - #{createDate}) - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml index 479c8476..51a7a4a0 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml @@ -18,27 +18,6 @@ and arp.used_quantity + #{quantity} >= 0 - - - merge into AC_RETAIL_PICK arp - using (select * - from AC_RETAIL_PICK_LOG arpl - where arpl.del_flag = 0 - and arpl.pk_base_id = #{pkBaseId} - and to_char(arpl.creation_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{nowDate}, 'yyyy-mm-dd hh24:mi:ss')) tmp - on (arp.pk_member = tmp.pk_member and arp.del_flag = 0) - when not matched then - insert - (PK_ID, PK_MEMBER, USABLE_QUANTITY, PK_CREATOR, CREATION_TIME) - values (AC_RETAIL_PICK_SEQ.Nextval, - tmp.pk_member, - tmp.gift_quantity, - tmp.PK_CREATOR, - tmp.CREATION_TIME) - when matched then - update set arp.usable_quantity = arp.usable_quantity + tmp.gift_quantity - - - select dr.pk_base_id,dr.order_type,dr.order_amount,dr.order_achieve,dr.ratio_type, - dr.ratio_value,ba.pk_country from ac_base_config ba - inner join AC_REPUR_COUPONS_RULE_CONFIG dr - on dr.pk_base_id = ba.pk_id - where ba.del_flag = 0 and dr.del_flag=0 - and ba.act_start_date <= #{settleDate, jdbcType=DATE} and ba.act_end_date >= #{settleDate, jdbcType=DATE} - order by dr.pk_base_id,dr.ORDER_ACHIEVE desc - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml index e86b6c03..4fa738f3 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml @@ -2,48 +2,4 @@ - - - - - - - - - - - - - - - - - - - - update ac_repur_shar_rule_config c - set c.del_flag = 1, c.modified_time = sysdate, c.pk_modified = #{pkModifyId} - where c.pk_order_type in (select t.pk_id - from ac_repur_shar_order_type t - where t.del_flag = 0 - and t.pk_base_id = #{activityId} - and t.order_type in - - #{item} - - ) - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 244385f2..37194cb7 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -740,22 +740,6 @@ - - - select so.order_code,so.order_type,so.pk_rate,so.order_amount,so.order_achieve,so.postage, cm.member_code,cm.member_name,par.member_code REFERENCE,par.member_name referenceName,so.rec_name,so.rec_phone, @@ -205,44 +166,6 @@ - - - select ac.*,pac.CLASSIFY_NAME parentClassifyName from BD_AREA_CLASSIFY ac + select ac.*,pac.CLASSIFY_NAME parentClassifyName from BD_AREA_CLASSIFY ac left join BD_AREA_CLASSIFY pac on pac.PK_ID = ac.PK_PARENT where ac.DEL_FLAG = 0 @@ -52,16 +48,16 @@ AND ( - (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = ac.PK_ID ) > 0 + (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = + ac.PK_ID ) > 0 or - ( select count(t.PK_ID) from BD_AREA_CLASSIFY t - where (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = t.PK_ID) > 0 + where (select count(csa.PK_ID) from BD_AREA_CLASSIFY_SPECIAL_AREA csa where csa.SPECIAL_AREA = #{specialArea} and csa.PK_AREA_CLASSIFY = + t.PK_ID) > 0 start with t.pk_id = ac.PK_ID connect by t.pk_id = prior t.pk_parent - ) > 0 ) @@ -75,6 +71,6 @@ AND ac.CLASSIFY_NAME like #{classifyName}||'%' - order by ac.SORT desc + order by ac.SORT desc diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml index 30467ca6..e094cd42 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml @@ -2,19 +2,4 @@ - - - - - - - - - - - - - PK_ID, NAME, PK_TRANSACTION_KEY, SORT, ENABLE_STATE - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml index 8735eaf3..36c65345 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml @@ -186,22 +186,6 @@ order by bp.product_name - - select st.* ,bc.NAME classifyName from BD_SPECS_TYPE st @@ -43,8 +39,7 @@ and st.PK_COUNTRY = #{pkCountry} - order by st.sort - + order by st.sort diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml index 6e63e48c..12733619 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml @@ -2,87 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml index 86f5b30e..4d7f25d6 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml @@ -179,19 +179,6 @@ and wd.PK_WARES = #{pkWares} - - - - - select b.pk_id, b.label_type, @@ -38,7 +27,7 @@ where b.pk_country = #{pkCountry} and b.del_flag = 0 - and b.label like '%' || #{label} || '%' + and b.label like '%' || #{label} || '%' and b.label_type = #{labelType} @@ -51,13 +40,4 @@ - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml index 11f9b951..1b4ff04a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml @@ -4,28 +4,17 @@ - - - - - - - - - + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_RANGE, PK_LEVEL - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml index ebdd44ba..57aedf09 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MONTH, TOTAL_AMOUNT, ADD_AMOUNT, USED_AMOUNT, BALANCE_AMOUNT, BASE_AMOUNT, IS_GRANT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml index a4b27192..7ea8873a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, SHOP_NAME, PK_TRANSACTION, SHOP_VALUE, CENSUS_VALUE, START_VALUE, END_VALUE, SETTLE_VALUE, DELIVERY_FEE, DISCOUNT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml index 3a77a3cd..efb0dfa3 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml @@ -95,19 +95,4 @@ where rownum = 1 - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml index 2211bcb3..3ab8bf9b 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml @@ -4,34 +4,24 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MIN_AMOUNT, IS_ROUNDING, IS_REFERENCE, SERVICE_RATIO, EFFECTIVE_DATE - - + - select cm.member_code, - cm.member_name, - cm.nick_name, - cm.creation_time, - cm.phone, - bg.grade_name settle_grade_val - from cu_member cm - left join bd_grade bg - on bg.pk_id = cm.pk_settle_grade - where cm.del_flag = 0 - and cm.category = 0 - and cm.pk_parent = #{pkMember} - order by cm.creation_time desc + WITH team_data AS ( + SELECT + connect_by_root pk_id AS root_pk_id, + COUNT(*) OVER (PARTITION BY connect_by_root pk_id) - 1 AS team_count + FROM + cu_member + WHERE + del_flag = 0 + AND category = 0 + START WITH + pk_parent = #{pkMember} + CONNECT BY + PRIOR pk_id = pk_parent + ) + SELECT DISTINCT + cm.member_code, + cm.member_name, + cm.nick_name, + cm.consume_achieve, + cm.creation_time, + cm.phone, + bg.grade_name AS settle_grade_val, + td.team_count + FROM + cu_member cm + LEFT JOIN + bd_grade bg ON bg.pk_id = cm.pk_settle_grade + LEFT JOIN + team_data td ON cm.pk_id = td.root_pk_id + WHERE + cm.del_flag = 0 + AND cm.category = 0 + AND cm.PK_PARENT = #{pkMember} + ORDER BY cm.creation_time desc diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java index a72ee6fc..8baf888e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java @@ -182,6 +182,10 @@ public class CuMemberExt extends CuMember { * 团队名称 */ private String teamName; + /** + * 团队人数 + */ + private Integer teamCount; /** * 次数 From b58445962e5168d180cf59a0755808eea4eaaa34 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 16:01:00 +0800 Subject: [PATCH 179/362] =?UTF-8?q?##=20Opt=20-=20=E7=B2=BE=E5=93=81?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=E5=8D=95=E8=AE=A2=E5=8D=95=E9=87=91=E9=A2=9D?= =?UTF-8?q?=E4=B8=8A=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/api/ApiRetailOrderController.java | 8 +++++++- .../com/hzs/common/core/constant/RetailConstants.java | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 895081eb..adfe8a7e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EOrderPrefix; @@ -699,7 +700,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ -// @RepeatSubmit + @RepeatSubmit @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { @@ -782,6 +783,11 @@ public class ApiRetailOrderController { String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); // redis 拿金额 SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount().add(saOrder.getPostage())); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 6d72ba6f..f439d45f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -20,4 +20,10 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); + + /** + * 精品专区下单金额上限 + */ + public static final BigDecimal SPECIAL_AREA_41_MAX_ORDER_AMOUNT = new BigDecimal("20000"); + } From c37e19f473c4df5f7e8cf84ffe940abdc006020a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 18 Sep 2025 16:56:54 +0800 Subject: [PATCH 180/362] =?UTF-8?q?##=20=E9=98=B6=E6=AE=B5=E5=A5=96?= =?UTF-8?q?=E9=87=91=E8=AE=A1=E7=AE=97=E5=A4=84=E7=90=86=EF=BC=88=E6=9C=AA?= =?UTF-8?q?=E5=AE=8C=E6=88=90=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CuMemberSettleController.java | 35 ----- .../mapper/CuMemberRetailDetailMapper.java | 10 ++ .../service/ICuMemberRetailDetailService.java | 10 ++ .../impl/CuMemberRetailDetailServiceImpl.java | 30 ++++ .../service/impl/BonusSettleRangeHandle.java | 135 ++++++++++++++---- .../service/impl/BonusSettleServiceImpl.java | 2 +- .../bonus/order/mapper/BonusOrderMapper.java | 3 +- .../order/service/IBonusOrderService.java | 2 +- .../service/impl/BonusOrderServiceImpl.java | 4 +- .../achieve/CuMemberRetailDetailMapper.xml | 12 ++ .../bonus/achieve/CuMemberTreeMapper.xml | 5 +- .../mapper/bonus/order/BonusOrderMapper.xml | 6 + .../member/detail/CuMemberAssessMapper.xml | 7 +- .../core/constant/MagicNumberConstants.java | 10 -- .../common/core/constant/RetailConstants.java | 7 + .../hzs/common/core/enums/EBonusStage.java | 37 +++++ .../common/core/enums/EBonusStageStatus.java | 33 +++++ .../common/core/enums/EBonusStageType.java | 33 +++++ .../com/hzs/common/core/enums/EDelFlag.java | 2 - .../member/achieve/CuMemberRetailDetail.java | 10 +- .../member/achieve/CuMemberRetailRange.java | 6 + .../achieve/ext/CuMemberRetailRangeExt.java | 7 + .../domain/member/bonus/CuMemberBonus.java | 6 +- 23 files changed, 313 insertions(+), 99 deletions(-) create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java index e5fc15aa..0b784727 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java @@ -15,7 +15,6 @@ import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -37,8 +36,6 @@ public class CuMemberSettleController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; @Autowired - private IBonusSettleService iBonusSettleService; - @Autowired private ICuMemberTreeService iCuMemberTreeService; @Autowired private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @@ -48,8 +45,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-table") public AjaxResult initTable(String settleDate) { @@ -59,8 +54,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-period") public AjaxResult initPeriod(String settleDate) { @@ -70,8 +63,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金计算 - 重新结算 - * - * @return AjaxResult */ @GetMapping("/settle-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.INSERT) @@ -86,8 +77,6 @@ public class CuMemberSettleController extends BaseController { /** * 公布奖金 - * - * @return AjaxResult */ @GetMapping("/publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.PUBLISH) @@ -102,8 +91,6 @@ public class CuMemberSettleController extends BaseController { /** * 不公布奖金 - * - * @return AjaxResult */ @GetMapping("/no-publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.NO_PUBLISH) @@ -118,8 +105,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.GRANT) @@ -134,8 +119,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-temp-bonus") public AjaxResult grantTempBonus(Integer pkCountry, String settleDate) { @@ -145,8 +128,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus_all") public AjaxResult grantBonusAll() { @@ -156,8 +137,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金提现 - * - * @return AjaxResult */ @GetMapping("/withdrawal-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.WITHDRAWAL) @@ -170,20 +149,6 @@ public class CuMemberSettleController extends BaseController { return AjaxResult.success(); } - /** - * 秒接结算业绩,仅用于测试 - * - * @return AjaxResult - */ - @GetMapping("/settle-second-bonus") - public AjaxResult settleSecondBonus(String orderCode) { - if (StringUtils.isEmpty(orderCode)) { - return AjaxResult.error(); - } - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(orderCode); - return AjaxResult.success(); - } - /* * 查询奖金计算期数列表 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java index 7f09bf4d..aa6dcff6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -2,10 +2,20 @@ package com.hzs.bonus.achieve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 日结算阶段表 Mapper 接口 */ public interface CuMemberRetailDetailMapper extends BaseMapper { + /** + * 查询明细数据(指定阶段,未完成的) + */ + List listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName, + @Param("tmpIdList") List tmpIdList, + @Param("stage") Integer stage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index d849d643..eb33dead 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -1,11 +1,21 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; + +import java.util.List; +import java.util.Map; /** * 日结算阶段表 服务类 */ public interface ICuMemberRetailDetailService extends IService { + /** + * 根据结算会员获取对应的点位数据 + */ + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, EBonusStage eBonusStage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 952b95c0..92494240 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -3,13 +3,43 @@ package com.hzs.bonus.achieve.service.impl; import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.*; + /** * 日结算阶段表 服务实现类 */ @Service public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + @Autowired + private CuMemberBonusSettle cuMemberBonusSettle; + + @Override + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, EBonusStage eBonusStage) { + List> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); + pkMemberList.forEach(tmpIdList -> { + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); + if (tmpList.size() > 0) { + // 明细数据放到对应的会员数据中 + for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { + CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 阶段一点位列表 + if (null == cuMemberRetailRangeExt.getOneDetailList()) { + cuMemberRetailRangeExt.setOneDetailList(new ArrayList<>()); + } + cuMemberRetailRangeExt.getOneDetailList().add(cuMemberRetailDetail); + } + } + } + }); + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index e6ae9523..698c2f34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,6 +1,7 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; @@ -14,6 +15,7 @@ import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; @@ -30,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.math.BigDecimal; +import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -44,6 +47,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; + @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired private ICuMemberService iCuMemberService; @@ -269,8 +274,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 结算期间日期后一天 Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); - // 新零售订单 - List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null); + // 新零售订单(注册、复购) + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 @@ -290,16 +295,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); - // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 会员转map for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); } } + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE); // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -321,7 +326,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 直推收益 -- 来源订单金额,直推拿金额的10% this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); + // TODO 阶段收益 -- 来源订单金额 + this.calculateStageIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, + settleStartDate); // TODO 领导级差收益 -- 来源PV @@ -818,32 +826,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberBonusPushList.add(cuMemberBonusPush); } - /** - * 获取直推、见点收益信息 - */ - CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { - CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() - .pkBonus(cuMemberBonus.getPkId()) - .pkOrder(saOrderExt.getPkId()) - .pkBonusItems(pkBonusItems) - .incomeStatus(cuMemberRetailRange.getIncomeStatus()) - .calType(ECalType.RATIO.getValue()) - .calAchieve(BigDecimal.ZERO) - .calValue(BigDecimal.ZERO) - .pretaxIncome(BigDecimal.ZERO) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .round(-1) - .second(-1) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); - cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusPush; - } - /** * 计算见点收益 -- 商城专区 */ @@ -908,5 +890,98 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } + /** + * 获取直推、见点收益信息 + */ + CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() + .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(saOrderExt.getPkId()) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.RATIO.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) + .pretaxIncome(BigDecimal.ZERO) + .incomeTax(BigDecimal.ZERO) + .realIncome(BigDecimal.ZERO) + .round(-1) + .second(-1) + .incomeRatio(BigDecimal.ZERO) + .incomeDialRatio(BigDecimal.ZERO) + .orderDialRatio(BigDecimal.ZERO) + .build(); + cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusPush; + } + + /** + * 计算阶段收益 -- 精品专区 + */ + private void calculateStageIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate) { + // 订单金额除50取整,为新増点位数量 + int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + if (newPointInt == 0) { + // 当前精品专区订单不足生成点位 + return; + } + + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + // 会员一阶段子点位列表 + List detailList = sourceMember.getOneDetailList(); + if (null == detailList) { + detailList = new ArrayList<>(); + sourceMember.setOneDetailList(detailList); + } + // 当前会员子点位总数 + int pointCount = sourceMember.getPointCount(); + for (int i = 1; i <= newPointInt; i++) { + // 订单生成的新点位 + detailList.add(CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stage(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.NORMAL.getValue()) + .pointGift(0) + .creationTime(settleDate) + .build()); + } + + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + + // 推荐人一阶段子点位列表 + List parentDetailList = targetMember.getOneDetailList(); + if (CollectionUtil.isEmpty(parentDetailList)) { + continue; + } + for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { + if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { + // 推荐人子点位未完成,则进行填充 + this.fillChildNode(cuMemberRetailDetail); + } + } + + + } + } + + /** + * 填充子点位 + */ + private void fillChildNode(CuMemberRetailDetail cuMemberRetailDetail) { + cuMemberRetailDetail.getPointMember11(); + + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index efd75032..9daf6b84 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -110,7 +110,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 查询奖金参数 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 需要处理的订单 - List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode); + List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode, null); if (CollectionUtil.isNotEmpty(retailOrderList)) { // 会员奖金map diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java index dd16fc8c..d464aecf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java @@ -16,6 +16,7 @@ public interface BonusOrderMapper { */ List listRetailSaOrder(@Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); + @Param("orderCode") String orderCode, + @Param("orderTypeList") List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index d0b6d013..ff4d8481 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -13,6 +13,6 @@ public interface IBonusOrderService { * @param startDate 开始日期 * @param endDate 结束日期 */ - List listRetailSaOrder(Date startDate, Date endDate, String orderCode); + List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index 7e0fb9a8..e7c0f546 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -15,8 +15,8 @@ public class BonusOrderServiceImpl implements IBonusOrderService { private BonusOrderMapper bonusOrderMapper; @Override - public List listRetailSaOrder(Date startDate, Date endDate, String orderCode) { - return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode); + public List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList) { + return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode, orderTypeList); } } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index 330b4b37..b1efab5b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -2,5 +2,17 @@ + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 9c164376..99c8eadd 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -292,7 +292,6 @@ create table ${tableName} ( - pk_id NUMBER(20) primary key, pk_member NUMBER(20) not null, child_node NUMBER(8) not null, pk_parent NUMBER(20) not null, @@ -335,10 +334,10 @@ - create index ${tableName}_MEMBER + create unique index PK_${tableName} on ${tableName} ( - PK_MEMBER + PK_MEMBER, CHILD_NODE ) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index e38404e8..808f4e14 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -82,6 +82,12 @@ and so.order_code=#{orderCode} + + and so.order_type in + + #{items} + + and so.pay_time >= #{startDate} and so.pay_time < #{endDate} order by pay_time desc diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml index 5798b973..81b68588 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml @@ -129,11 +129,8 @@ ) - create - unique index - ${tableName} - _ - PK_M + create unique index + ${tableName}_PK_M on ${tableName} ( diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index f7897c21..ccf25238 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -47,16 +47,6 @@ public class MagicNumberConstants { */ public static final Long PK_ADMIN = 100000000L; - /** - * 开始血缘代 - */ - public static final Integer BLOOD_GENERATION_START = 1; - - /** - * 结束血缘代 - */ - public static final Integer BLOOD_GENERATION_END = 10; - /** * 老会员编号位数 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index f439d45f..2e30449f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -7,6 +7,13 @@ import java.math.BigDecimal; */ public class RetailConstants { + /** + * 精品专区50金额为一个子点位,商城专区50PV为一个子点位 + * 精品专区计算点位:金额 / 50,余不做处理 + * 商城专区计算点位:累计业绩 / 50, 剩下的继续累计 + */ + public static final BigDecimal POINT_VAL = new BigDecimal("50"); + /** * 精品专区直推收益订单金额 10%,商城专区见点收益20代订单PV 10% */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java new file mode 100644 index 00000000..ae52b1a0 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java @@ -0,0 +1,37 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段奖项枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStage { + + /** + * 一阶段 + */ + ONE(1, "一阶段"), + /** + * 二阶段 + */ + TWO(2, "二阶段"), + /** + * 三阶段 + */ + THREE(3, "三阶段"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java new file mode 100644 index 00000000..2e3d4406 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java @@ -0,0 +1,33 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段状态枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStageStatus { + + /** + * 已完成 + */ + YES(0, "已完成"), + /** + * 未完成 + */ + NO(1, "未完成"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java new file mode 100644 index 00000000..9497814c --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java @@ -0,0 +1,33 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段点位类型枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStageType { + + /** + * 普通点位 + */ + NORMAL(0, "普通点位"), + /** + * 赠送点位 + */ + GIFT(1, "赠送点位"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java index c5e155d0..57c02ad0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java @@ -6,8 +6,6 @@ import lombok.Getter; /** * 删除标记枚举类 - * - * @author hzs */ @AllArgsConstructor @Getter diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 57431fa7..493e8955 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -10,24 +10,22 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; +import lombok.*; import lombok.experimental.Accessors; /** * 日结算阶段表 */ +@Builder +@AllArgsConstructor +@NoArgsConstructor @Data @Accessors(chain = true) -@KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") @TableName("CU_MEMBER_RETAIL_DETAIL") public class CuMemberRetailDetail { private static final long serialVersionUID = 1L; - @TableId("PK_ID") - private Long pkId; - /** * 会员ID */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index c6a189ce..2e5c09ca 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -189,4 +189,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("small_team_pv") private BigDecimal smallTeamPv; + /** + * 子点位总数 + */ + @TableField("point_count") + private Integer pointCount; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 8dc07708..4d90ae3e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -1,10 +1,12 @@ package com.hzs.common.domain.member.achieve.ext; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; +import java.util.List; /** * 新零售极差实体 @@ -134,4 +136,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { private BigDecimal repTeamNewPv; // 秒结 end + /** + * 阶段一点位列表 + */ + private List oneDetailList; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index 61e11ec7..c1f52db2 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -50,7 +50,7 @@ public class CuMemberBonus extends BaseEntity { private Integer pkRate; /** - * 注册直推收益 + * 注册直推收益-康健 */ @TableField("DIRECT_INCOME") private BigDecimal directIncome; @@ -176,7 +176,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal repurCouponSubtotal; /** - * 复购见点收益 + * 复购见点收益-康健 */ @TableField("GLOBAL_POINTS") private BigDecimal globalPoints; @@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal carAwardPoints; /** - * 店铺收益 + * 注册阶段收益-康健 */ @TableField("STORE_INCOME") private BigDecimal storeIncome; From f45a4f3e23178b5c40367541202d2c0dcc00ef47 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 17:25:42 +0800 Subject: [PATCH 181/362] =?UTF-8?q?##=20Opt=20-=20=E5=8F=8D=E5=B0=84?= =?UTF-8?q?=E6=8C=89=E9=A1=BA=E5=BA=8F=E8=A7=84=E5=88=99=E5=A1=AB=E5=85=85?= =?UTF-8?q?CuMemberRetailDetail?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 47 +++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 698c2f34..87014d34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,6 +1,10 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; @@ -31,6 +35,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.lang.reflect.Field; +import java.lang.reflect.Method; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -968,7 +974,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { // 推荐人子点位未完成,则进行填充 - this.fillChildNode(cuMemberRetailDetail); +// this.fillChildNode(cuMemberRetailDetail); } } @@ -979,9 +985,42 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 填充子点位 */ - private void fillChildNode(CuMemberRetailDetail cuMemberRetailDetail) { - cuMemberRetailDetail.getPointMember11(); - + private static final List fieldList = Arrays.asList("11", "12", "21", "22", "23", "24", "31", "32", "33", "34", "35", "36", "37", "38"); + private static Map fieldMap = null; + private static final String pointFieldName = "point"; + private static final String pointMemberFieldName = "pointMember"; + private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Long pointMemberValue) { + if(ObjectUtil.isEmpty(fieldMap)){ + initFieldMap(); + } + for (String suffix : fieldList) { + Field pointField = fieldMap.get(pointFieldName + suffix); + Field pointMemberField = fieldMap.get(pointMemberFieldName + suffix); + Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); + if(ObjectUtil.isEmpty(pointFieldValue)){ + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); + return suffix; + } + } + return null; + } + private void initFieldMap(){ + fieldMap = new HashMap<>(); + for (String suffix : fieldList) { + fieldMap.put(pointFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointFieldName + suffix)); + fieldMap.put(pointMemberFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointMemberFieldName + suffix)); + } } +// public static void main(String[] args) { +// BonusSettleRangeHandle test = new BonusSettleRangeHandle(); +// CuMemberRetailDetail cuMemberRetailDetail = new CuMemberRetailDetail(); +// for (int i = 0; i < 14; i++) { +// String suffix = test.fillChildNode(cuMemberRetailDetail, (long) i, (long) (i + 1)); +// System.out.println(suffix); +// System.out.println(JSONUtil.toJsonPrettyStr(cuMemberRetailDetail)); +// } +// } + } From 769164a79ab9adbdd5d3bf2ec66a79ceeb5b21fe Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 08:48:39 +0800 Subject: [PATCH 182/362] =?UTF-8?q?##=20Fix=20-=20=E3=80=90H5=E3=80=91?= =?UTF-8?q?=E6=89=AB=E7=A0=81=E6=B3=A8=E5=86=8C=E5=92=8C=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=E6=B3=A8=E5=86=8C=EF=BC=8C=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=80=E4=B8=AA=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E7=9A=84=E6=B3=A8=E5=86=8C=E6=AC=A1=E6=95=B0=EF=BC=8C=E4=B9=9F?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E9=99=90=E5=88=B6=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E4=B8=80=E6=A0=B7=E5=A7=93=E5=90=8D=E4=B8=8D=E4=B8=80=E6=A0=B7?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5=20[http://47.94.148.201:8081/index.?= =?UTF-8?q?php=3Fm=3Dbug&f=3Dview&bugID=3D388]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/IMemberServiceApi.java | 8 ++++++++ .../base/provider/MemberServiceProvider.java | 4 ++++ .../member/base/service/ICuMemberService.java | 7 +++++++ .../service/impl/CuMemberServiceImpl.java | 8 ++++++++ .../api/ApiRetailOrderController.java | 19 +++++++++++++++++++ .../common/core/constant/RetailConstants.java | 5 +++++ 6 files changed, 51 insertions(+) diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index f216f4f4..4bed9fa0 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -356,4 +356,12 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); + + /** + * 获取手机号数量 + * + * @param phone 联系方式 + * @return 返回为null则正常,否则则错误信息 + */ + R getMemberPhoneCount(String phone); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 50a00a47..cddd62da 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -351,5 +351,9 @@ public class MemberServiceProvider implements IMemberServiceApi { public R checkRegisterRelation(String phone, String parentCode) { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } + @Override + public R getMemberPhoneCount(String phone){ + return R.ok(iCuMemberService.getMemberPhoneCount(phone)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 777c21a1..b51f25ed 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -871,4 +871,11 @@ public interface ICuMemberService extends IService { * @return */ CuMemberExt queryFansOrder(String orderCode); + + /** + * 获取手机号数量 + * @param phone + * @return + */ + Integer getMemberPhoneCount(String phone); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 38f59014..a0b7bf33 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3268,4 +3268,12 @@ public class CuMemberServiceImpl extends ServiceImpl i public CuMemberExt queryFansOrder(String orderCode) { return baseMapper.queryFansOrder(orderCode); } + + @Override + public Integer getMemberPhoneCount(String phone) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(CuMember::getDelFlag, EDelFlag.UN_DELETE.getValue()); + wrapper.eq(CuMember::getPhone, phone); + return baseMapper.selectCount(wrapper); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index adfe8a7e..0092efb0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -293,6 +293,12 @@ public class ApiRetailOrderController { @PostMapping("/confirm-reg-order") public AjaxResult confirmRegisterOrder(@Valid @RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } // 设置数据来源 registerParam.setSource(source); // 会员ID @@ -322,6 +328,13 @@ public class ApiRetailOrderController { // 确认订单 String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + return confirmOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode()); } @@ -704,6 +717,12 @@ public class ApiRetailOrderController { @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } // 设置数据来源 registerParam.setSource(source); // 会员ID diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 2e30449f..bd812a63 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -33,4 +33,9 @@ public class RetailConstants { */ public static final BigDecimal SPECIAL_AREA_41_MAX_ORDER_AMOUNT = new BigDecimal("20000"); + /** + * 注册是否限制手机号重复 + */ + public static final boolean LIMIT_TO_REG_PHONE_NUMBER = true; + } From 443f7c14ac72a30e5f2fe9e231b464d81018db2b Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 16:01:00 +0800 Subject: [PATCH 183/362] =?UTF-8?q?##=20Opt=20-=20=E7=B2=BE=E5=93=81?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=E5=8D=95=E8=AE=A2=E5=8D=95=E9=87=91=E9=A2=9D?= =?UTF-8?q?=E4=B8=8A=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/api/ApiRetailOrderController.java | 8 +++++++- .../com/hzs/common/core/constant/RetailConstants.java | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 895081eb..adfe8a7e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EOrderPrefix; @@ -699,7 +700,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ -// @RepeatSubmit + @RepeatSubmit @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { @@ -782,6 +783,11 @@ public class ApiRetailOrderController { String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); // redis 拿金额 SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount().add(saOrder.getPostage())); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 6d72ba6f..f439d45f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -20,4 +20,10 @@ public class RetailConstants { */ public static final BigDecimal SAME_RATIO = new BigDecimal("0.005"); + + /** + * 精品专区下单金额上限 + */ + public static final BigDecimal SPECIAL_AREA_41_MAX_ORDER_AMOUNT = new BigDecimal("20000"); + } From 0370e52cc37a6e43d0208656a1d296e9b85fc40a Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 08:48:39 +0800 Subject: [PATCH 184/362] =?UTF-8?q?##=20Fix=20-=20=E3=80=90H5=E3=80=91?= =?UTF-8?q?=E6=89=AB=E7=A0=81=E6=B3=A8=E5=86=8C=E5=92=8C=E6=B3=A8=E5=86=8C?= =?UTF-8?q?=E4=B8=93=E5=8C=BA=E6=B3=A8=E5=86=8C=EF=BC=8C=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E9=99=90=E5=88=B6=E4=B8=80=E4=B8=AA=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E7=9A=84=E6=B3=A8=E5=86=8C=E6=AC=A1=E6=95=B0=EF=BC=8C=E4=B9=9F?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E9=99=90=E5=88=B6=E6=89=8B=E6=9C=BA=E5=8F=B7?= =?UTF-8?q?=E4=B8=80=E6=A0=B7=E5=A7=93=E5=90=8D=E4=B8=8D=E4=B8=80=E6=A0=B7?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5=20[http://47.94.148.201:8081/index.?= =?UTF-8?q?php=3Fm=3Dbug&f=3Dview&bugID=3D388]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/IMemberServiceApi.java | 8 ++++++++ .../base/provider/MemberServiceProvider.java | 4 ++++ .../member/base/service/ICuMemberService.java | 7 +++++++ .../service/impl/CuMemberServiceImpl.java | 8 ++++++++ .../api/ApiRetailOrderController.java | 19 +++++++++++++++++++ .../common/core/constant/RetailConstants.java | 5 +++++ 6 files changed, 51 insertions(+) diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index f216f4f4..4bed9fa0 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -356,4 +356,12 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); + + /** + * 获取手机号数量 + * + * @param phone 联系方式 + * @return 返回为null则正常,否则则错误信息 + */ + R getMemberPhoneCount(String phone); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 50a00a47..cddd62da 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -351,5 +351,9 @@ public class MemberServiceProvider implements IMemberServiceApi { public R checkRegisterRelation(String phone, String parentCode) { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } + @Override + public R getMemberPhoneCount(String phone){ + return R.ok(iCuMemberService.getMemberPhoneCount(phone)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 777c21a1..b51f25ed 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -871,4 +871,11 @@ public interface ICuMemberService extends IService { * @return */ CuMemberExt queryFansOrder(String orderCode); + + /** + * 获取手机号数量 + * @param phone + * @return + */ + Integer getMemberPhoneCount(String phone); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 38f59014..a0b7bf33 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3268,4 +3268,12 @@ public class CuMemberServiceImpl extends ServiceImpl i public CuMemberExt queryFansOrder(String orderCode) { return baseMapper.queryFansOrder(orderCode); } + + @Override + public Integer getMemberPhoneCount(String phone) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(CuMember::getDelFlag, EDelFlag.UN_DELETE.getValue()); + wrapper.eq(CuMember::getPhone, phone); + return baseMapper.selectCount(wrapper); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index adfe8a7e..0092efb0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -293,6 +293,12 @@ public class ApiRetailOrderController { @PostMapping("/confirm-reg-order") public AjaxResult confirmRegisterOrder(@Valid @RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } // 设置数据来源 registerParam.setSource(source); // 会员ID @@ -322,6 +328,13 @@ public class ApiRetailOrderController { // 确认订单 String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + return confirmOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode()); } @@ -704,6 +717,12 @@ public class ApiRetailOrderController { @PostMapping("/fans-confirm-order") public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } // 设置数据来源 registerParam.setSource(source); // 会员ID diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index f439d45f..02c723ee 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -26,4 +26,9 @@ public class RetailConstants { */ public static final BigDecimal SPECIAL_AREA_41_MAX_ORDER_AMOUNT = new BigDecimal("20000"); + /** + * 注册是否限制手机号重复 + */ + public static final boolean LIMIT_TO_REG_PHONE_NUMBER = true; + } From 2fb7a7aa43c7362c2daf8ca87cc87b2a4ccc14b7 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 19 Sep 2025 10:50:34 +0800 Subject: [PATCH 185/362] =?UTF-8?q?##=20=E5=89=8D=E7=BC=80=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E4=B8=BAZK=EF=BC=9B=E6=97=A5=E7=BB=93=E3=80=81?= =?UTF-8?q?=E6=97=A5=E7=BB=93=E6=98=8E=E7=BB=86=E8=A1=A8=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 124 ++++++++++------- .../hzs/bonus/constant/BonusConstants.java | 33 +++++ .../bonus/achieve/CuMemberTreeMapper.xml | 80 ++++++----- .../member/base/service/ICuMemberService.java | 10 +- .../service/impl/CuMemberServiceImpl.java | 28 ---- .../common/core/constant/SysConstants.java | 22 +-- .../com/hzs/common/core/enums/ESysName.java | 4 +- .../member/achieve/CuMemberRetailDetail.java | 128 +++++++++++------- 8 files changed, 234 insertions(+), 195 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 87014d34..edcd78c5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -3,17 +3,15 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReflectUtil; -import cn.hutool.json.JSONObject; -import cn.hutool.json.JSONUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; +import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; -import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; @@ -23,20 +21,16 @@ import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.system.config.dto.BonusConfigDTO; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.lang.reflect.Field; -import java.lang.reflect.Method; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -946,7 +940,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { int pointCount = sourceMember.getPointCount(); for (int i = 1; i <= newPointInt; i++) { // 订单生成的新点位 - detailList.add(CuMemberRetailDetail.builder() + CuMemberRetailDetail tmpDetail = CuMemberRetailDetail.builder() .pkMember(sourceMember.getPkMember()) .childNode(pointCount + i) .pkParent(sourceMember.getPkParent()) @@ -955,49 +949,83 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) - .build()); - } + .build(); + detailList.add(tmpDetail); - // 推荐人 - Long pkParent = sourceMember.getPkParent(); - while (true) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); - if (null == targetMember) { - break; - } + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + // 推荐人一阶段子点位列表 + List parentDetailList = targetMember.getOneDetailList(); + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; + } + for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { + if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { + // 推荐人子点位未完成,则进行填充 + String firstNode = this.fillChildNode(cuMemberRetailDetail, tmpDetail.getPkMember(), tmpDetail.getChildNode()); + switch (firstNode) { + case BonusConstants.POINT_11: + break; + case BonusConstants.POINT_12: + break; + case BonusConstants.POINT_21: + break; + case BonusConstants.POINT_22: + break; + case BonusConstants.POINT_23: + break; + case BonusConstants.POINT_24: + break; + case BonusConstants.POINT_31: + break; + case BonusConstants.POINT_32: + break; + case BonusConstants.POINT_33: + break; + case BonusConstants.POINT_34: + break; + case BonusConstants.POINT_35: + break; + case BonusConstants.POINT_36: + break; + case BonusConstants.POINT_37: + break; + case BonusConstants.POINT_38: + // 第一个点位已经全部填满 + cuMemberRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + cuMemberRetailDetail.setStageDate(settleDate); - // 推荐人一阶段子点位列表 - List parentDetailList = targetMember.getOneDetailList(); - if (CollectionUtil.isEmpty(parentDetailList)) { - continue; - } - for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { - if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { - // 推荐人子点位未完成,则进行填充 -// this.fillChildNode(cuMemberRetailDetail); + + // TODO 一阶段全满则需要发放一阶段奖金 + + // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 + } + + } } } - - } } /** * 填充子点位 */ - private static final List fieldList = Arrays.asList("11", "12", "21", "22", "23", "24", "31", "32", "33", "34", "35", "36", "37", "38"); - private static Map fieldMap = null; - private static final String pointFieldName = "point"; - private static final String pointMemberFieldName = "pointMember"; - private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Long pointMemberValue) { - if(ObjectUtil.isEmpty(fieldMap)){ + private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Integer pointMemberValue) { + if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { initFieldMap(); } - for (String suffix : fieldList) { - Field pointField = fieldMap.get(pointFieldName + suffix); - Field pointMemberField = fieldMap.get(pointMemberFieldName + suffix); + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); - if(ObjectUtil.isEmpty(pointFieldValue)){ + if (ObjectUtil.isEmpty(pointFieldValue)) { ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); return suffix; @@ -1005,22 +1033,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } return null; } - private void initFieldMap(){ - fieldMap = new HashMap<>(); - for (String suffix : fieldList) { - fieldMap.put(pointFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointFieldName + suffix)); - fieldMap.put(pointMemberFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointMemberFieldName + suffix)); + + private void initFieldMap() { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); } } -// public static void main(String[] args) { -// BonusSettleRangeHandle test = new BonusSettleRangeHandle(); -// CuMemberRetailDetail cuMemberRetailDetail = new CuMemberRetailDetail(); -// for (int i = 0; i < 14; i++) { -// String suffix = test.fillChildNode(cuMemberRetailDetail, (long) i, (long) (i + 1)); -// System.out.println(suffix); -// System.out.println(JSONUtil.toJsonPrettyStr(cuMemberRetailDetail)); -// } -// } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java new file mode 100644 index 00000000..4a011b90 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -0,0 +1,33 @@ +package com.hzs.bonus.constant; + +import java.lang.reflect.Field; +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +public class BonusConstants { + + public static final String POINT_11 = "11"; + public static final String POINT_12 = "12"; + public static final String POINT_21 = "21"; + public static final String POINT_22 = "22"; + public static final String POINT_23 = "23"; + public static final String POINT_24 = "24"; + public static final String POINT_31 = "31"; + public static final String POINT_32 = "32"; + public static final String POINT_33 = "33"; + public static final String POINT_34 = "34"; + public static final String POINT_35 = "35"; + public static final String POINT_36 = "36"; + public static final String POINT_37 = "37"; + public static final String POINT_38 = "38"; + + public static final List FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, + POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); + + public static final String POINT_FIELD_NAME = "point"; + public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; + + public static Map FIELD_MAP = null; + +} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 99c8eadd..6fca0a36 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -292,43 +292,49 @@ create table ${tableName} ( - pk_member NUMBER(20) not null, - child_node NUMBER(8) not null, - pk_parent NUMBER(20) not null, - stage NUMBER(1) default 1 not null, - stage_status NUMBER(1) default 1 not null, - stage_date DATE, - point_11 NUMBER(20), - point_12 NUMBER(20), - point_21 NUMBER(20), - point_22 NUMBER(20), - point_23 NUMBER(20), - point_24 NUMBER(20), - point_31 NUMBER(20), - point_32 NUMBER(20), - point_33 NUMBER(20), - point_34 NUMBER(20), - point_35 NUMBER(20), - point_36 NUMBER(20), - point_37 NUMBER(20), - point_38 NUMBER(20), - point_member_11 NUMBER(20), - point_member_12 NUMBER(20), - point_member_21 NUMBER(20), - point_member_22 NUMBER(20), - point_member_23 NUMBER(20), - point_member_24 NUMBER(20), - point_member_31 NUMBER(20), - point_member_32 NUMBER(20), - point_member_33 NUMBER(20), - point_member_34 NUMBER(20), - point_member_35 NUMBER(20), - point_member_36 NUMBER(20), - point_member_37 NUMBER(20), - point_member_38 NUMBER(20), - point_type NUMBER(1) default 0 not null, - point_gift NUMBER(1) default 0 not null, - creation_time DATE + pk_member NUMBER(20) not null, + child_node NUMBER(8) not null, + pk_parent NUMBER(20) not null, + stage NUMBER(1) default 1 not null, + stage_status NUMBER(1) default 1 not null, + stage_date DATE, + point_11 NUMBER(8), + point_12 NUMBER(8), + point_21 NUMBER(8), + point_22 NUMBER(8), + point_23 NUMBER(8), + point_24 NUMBER(8), + point_31 NUMBER(8), + point_32 NUMBER(8), + point_33 NUMBER(8), + point_34 NUMBER(8), + point_35 NUMBER(8), + point_36 NUMBER(8), + point_37 NUMBER(8), + point_38 NUMBER(8), + point_member_11 NUMBER(20), + point_member_12 NUMBER(20), + point_member_21 NUMBER(20), + point_member_22 NUMBER(20), + point_member_23 NUMBER(20), + point_member_24 NUMBER(20), + point_member_31 NUMBER(20), + point_member_32 NUMBER(20), + point_member_33 NUMBER(20), + point_member_34 NUMBER(20), + point_member_35 NUMBER(20), + point_member_36 NUMBER(20), + point_member_37 NUMBER(20), + point_member_38 NUMBER(20), + point_type NUMBER(1) default 0 not null, + point_gift NUMBER(1) default 0 not null, + creation_time DATE, + point_first NUMBER(8), + point_member_first NUMBER(20), + point_second NUMBER(8), + point_member_second NUMBER(20), + point_third NUMBER(8), + point_member_third NUMBER(20) ) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index b51f25ed..708e012a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -150,15 +150,7 @@ public interface ICuMemberService extends IService { * @param digit 编号数字位数 * @return */ - String createUserNameByPremix(Integer pkCountry, Integer digit); /** - * 生成会员编号 - * - * @param pkCountry 所属国家 - * @param isHaiFun - * @param digit 编号数字位数 - * @return - */ - String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit); + String createUserNameByPremix(Integer pkCountry, Integer digit); /** * 批量生成会员编号 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index a0b7bf33..fb7913c7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -1541,34 +1541,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return memberCode; } - @Override - public String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit) { - String prefix; - if (isHaiFun) { - prefix = SysConstants.HAI_FUN_PREFIX; - } else { - CountryDTO country = iCountryServiceApi.getCountry(pkCountry).getData(); - prefix = country.getCode(); - } - if (StringUtils.isEmpty(prefix)) { - return null; - } - // 生成loginName - String memberCode = this.createMemberCode(prefix, digit); - - CuMember cuMemberByKey = getMember(memberCode); - if (cuMemberByKey != null && cuMemberByKey.getPkId() > 0) { - // 用户名已经存在,则继续尝试 - return this.createUserNameByPremix(pkCountry, isHaiFun, digit); - } else { - // 验证空单注册里面是否存在编号 - List cuMemberEmptyDetails = iCuMemberEmptyCodeService.queryCuMemberEmptyCode(memberCode); - if (CollectionUtil.isNotEmpty(cuMemberEmptyDetails)) { - return this.createUserNameByPremix(pkCountry, isHaiFun, digit); - } - } - return memberCode; - } /** * 创建会员编号 * diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index 86276117..909b30a8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -1,6 +1,5 @@ package com.hzs.common.core.constant; -import java.math.BigDecimal; import java.util.Collections; import java.util.List; @@ -9,15 +8,10 @@ import java.util.List; */ public class SysConstants { - - /** - * 嗨粉前缀 - */ - public static final String HAI_FUN_PREFIX = "HF"; /** * 众康系统前缀 */ - public static final String RETAIL_PREFIX = "KG"; + public static final String RETAIL_PREFIX = "ZK"; /** * 顶点 */ @@ -36,21 +30,11 @@ public class SysConstants { /** * 特殊处理编号(对外开放使用,主要用于支付接入审核) */ - public static final String SPECIAL_CODE = "KG68880628"; - - /** - * 血缘累计业绩30万 - */ - public static final BigDecimal TOTAL_AREA_PV = new BigDecimal("300000"); - - /** - * 小区业绩累计10万 - */ - public static final BigDecimal SMALL_AREA_PV = new BigDecimal("100000"); + public static final String SPECIAL_CODE = "ZK68880628"; /** * 开放使用会员编号(用于支付登录查看数据) */ - public static final List CONTROL_MEMBER_LIST = Collections.singletonList("KG66886688"); + public static final List CONTROL_MEMBER_LIST = Collections.singletonList("ZK68880628"); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 2e620b5b..85c3d8a1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,9 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 康健系统 + * 众康系统 */ - KG("kg", "康健系统"), + ZK("zk", "众康系统"), ; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 493e8955..f705282d 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -1,15 +1,10 @@ package com.hzs.common.domain.member.achieve; -import com.baomidou.mybatisplus.annotation.KeySequence; -import com.baomidou.mybatisplus.annotation.TableName; - import java.util.Date; -import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.web.domain.BaseEntity; import lombok.*; import lombok.experimental.Accessors; @@ -63,169 +58,169 @@ public class CuMemberRetailDetail { private Date stageDate; /** - * 点位1-1 + * 点位1-1会员子节点 */ @TableField("POINT_11") - private Long point11; + private Integer point11; /** - * 点位1-2 + * 点位1-2会员子节点 */ @TableField("POINT_12") - private Long point12; + private Integer point12; /** - * 点位2-1 + * 点位2-1会员子节点 */ @TableField("POINT_21") - private Long point21; + private Integer point21; /** - * 点位2-2 + * 点位2-2会员子节点 */ @TableField("POINT_22") - private Long point22; + private Integer point22; /** - * 点位2-3 + * 点位2-3会员子节点 */ @TableField("POINT_23") - private Long point23; + private Integer point23; /** - * 点位2-4 + * 点位2-4会员子节点 */ @TableField("POINT_24") - private Long point24; + private Integer point24; /** - * 点位3-1 + * 点位3-1会员子节点 */ @TableField("POINT_31") - private Long point31; + private Integer point31; /** - * 点位3-2 + * 点位3-2会员子节点 */ @TableField("POINT_32") - private Long point32; + private Integer point32; /** - * 点位3-3 + * 点位3-3会员子节点 */ @TableField("POINT_33") - private Long point33; + private Integer point33; /** - * 点位3-4 + * 点位3-4会员子节点 */ @TableField("POINT_34") - private Long point34; + private Integer point34; /** - * 点位3-5 + * 点位3-5会员子节点 */ @TableField("POINT_35") - private Long point35; + private Integer point35; /** - * 点位3-6 + * 点位3-6会员子节点 */ @TableField("POINT_36") - private Long point36; + private Integer point36; /** - * 点位3-7 + * 点位3-7会员子节点 */ @TableField("POINT_37") - private Long point37; + private Integer point37; /** - * 点位3-8 + * 点位3-8会员子节点 */ @TableField("POINT_38") - private Long point38; + private Integer point38; /** - * 点位1-1会员 + * 点位1-1会员ID */ @TableField("POINT_MEMBER_11") private Long pointMember11; /** - * 点位1-2会员 + * 点位1-2会员ID */ @TableField("POINT_MEMBER_12") private Long pointMember12; /** - * 点位2-1会员 + * 点位2-1会员ID */ @TableField("POINT_MEMBER_21") private Long pointMember21; /** - * 点位2-2会员 + * 点位2-2会员ID */ @TableField("POINT_MEMBER_22") private Long pointMember22; /** - * 点位2-3会员 + * 点位2-3会员ID */ @TableField("POINT_MEMBER_23") private Long pointMember23; /** - * 点位2-4会员 + * 点位2-4会员ID */ @TableField("POINT_MEMBER_24") private Long pointMember24; /** - * 点位3-1会员 + * 点位3-1会员ID */ @TableField("POINT_MEMBER_31") private Long pointMember31; /** - * 点位3-2会员 + * 点位3-2会员ID */ @TableField("POINT_MEMBER_32") private Long pointMember32; /** - * 点位3-3会员 + * 点位3-3会员ID */ @TableField("POINT_MEMBER_33") private Long pointMember33; /** - * 点位3-4会员 + * 点位3-4会员ID */ @TableField("POINT_MEMBER_34") private Long pointMember34; /** - * 点位3-5会员 + * 点位3-5会员ID */ @TableField("POINT_MEMBER_35") private Long pointMember35; /** - * 点位3-6会员 + * 点位3-6会员ID */ @TableField("POINT_MEMBER_36") private Long pointMember36; /** - * 点位3-7会员 + * 点位3-7会员ID */ @TableField("POINT_MEMBER_37") private Long pointMember37; /** - * 点位3-8会员 + * 点位3-8会员ID */ @TableField("POINT_MEMBER_38") private Long pointMember38; @@ -249,4 +244,41 @@ public class CuMemberRetailDetail { @TableField("CREATION_TIME") private Date creationTime; + /** + * 第一层会员子节点 + */ + @TableField("POINT_FIRST") + private Integer pointFirst; + + /** + * 第一层会员ID + */ + @TableField("POINT_MEMBER_FIRST") + private Long pointMemberFirst; + + /** + * 第二层会员子节点 + */ + @TableField("POINT_SECOND") + private Integer pointSecond; + + /** + * 第二层会员ID + */ + @TableField("POINT_MEMBER_SECOND") + private Long pointMemberSecond; + + /** + * 第三层会员子节点 + */ + @TableField("POINT_THIRD") + private Integer pointThird; + + /** + * 第三层会员ID + */ + @TableField("POINT_MEMBER_THIRD") + private Long pointMemberThird; + + } From 8187299ebff1b951f2e9715ed823272f87837dad Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 14:52:52 +0800 Subject: [PATCH 186/362] =?UTF-8?q?##=20Opt=20-=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=94=84=E9=80=89=E4=B8=93=E5=8C=BA=20=E5=95=86=E5=93=81?= =?UTF-8?q?=E5=90=8C=E7=B2=BE=E5=93=81=E4=B8=93=E5=8C=BA=E4=B8=80=E8=87=B4?= =?UTF-8?q?,=E4=B8=8B=E5=8D=95=E9=80=BB=E8=BE=91=E5=90=8C=E5=95=86?= =?UTF-8?q?=E5=9F=8E=E4=B8=93=E5=8C=BA=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 5 ++- .../service/impl/RetailOrderServiceImpl.java | 12 ++++++ .../api/ApiRetailWaresController.java | 8 ++++ .../api/ApiShoppingCartController.java | 38 ++++++++++++++++++- .../service/impl/ShoppingCartServiceImpl.java | 3 ++ .../impl/BdWaresSpecsSkuServiceImpl.java | 5 ++- .../com/hzs/common/core/enums/EOrderType.java | 5 +++ .../hzs/common/core/enums/ESpecialArea.java | 5 +++ .../com/hzs/common/core/enums/ETradeType.java | 1 + 9 files changed, 78 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 0092efb0..2a489aad 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -424,7 +424,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ - @RepeatSubmit +// @RepeatSubmit @PostMapping("/confirm-other-order") public AjaxResult confirmOtherOrder(@Valid @RequestBody RetailOrderOtherParam orderParam, @RequestHeader("Source") Integer source) { @@ -468,6 +468,7 @@ public class ApiRetailOrderController { if (null == otherParam) { return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); } + otherParam.setSpecialArea(payParam.getSpecialArea()); // 购买会员 CuMember buyMember = iMemberServiceApi.getRetailMember(null, otherParam.getBuyMemberCode()).getData(); @@ -478,7 +479,7 @@ public class ApiRetailOrderController { // 封装订单信息 SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(otherParam, null, buyMember); - + saOrderExt.setOrderType(payParam.getSpecialArea()); // 校验会员账户状态等 R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); if (!accountResult.isSuccess()) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 37ebf6eb..20a8ae86 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; @@ -221,6 +222,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ // saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); saOrderExt.setPostage(orderParam.getPostage()); + }else if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + saOrderExt.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); } return saOrderExt; @@ -229,6 +233,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public List createSaOrderItems(RetailOrderParam orderParam, List gradeList, CuMember cuMember, SaOrderExt saOrderExt, CurrencyDTO currency) { + boolean isCopy41List = false; + if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + orderParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + isCopy41List = true; + } // 订单明细信息 List orderItemsList = new ArrayList<>(); if (null == currency) { @@ -275,6 +284,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPostage(orderParam.getPostage()); // 订单指定商品盒数 saOrderExt.setBoxNum(boxNum); + if(isCopy41List){ + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); + } } return orderItemsList; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index 2824171d..42da4d06 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.constant.CountryConstants; @@ -86,6 +87,10 @@ public class ApiRetailWaresController extends BaseController { */ @PostMapping("/wares-list") public AjaxResult waresList(@Valid @RequestBody RetailWaresParam param) { + boolean copyFor41List = param.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } // 会员信息 CuMemberExt cuMemberExt = iMemberServiceApi.getMemberById(SecurityUtils.getUserId()).getData(); @@ -102,6 +107,9 @@ public class ApiRetailWaresController extends BaseController { if (CollectionUtil.isNotEmpty(bdWaresExtList)) { resultList = this.waresShowHandle(bdWaresExtList, param.getSpecialArea(), cuMemberExt.getPkSettleGrade(), true); + if(copyFor41List){ + resultList.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); + } } return AjaxResult.success(resultList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java index 9fe554e1..75024146 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java @@ -3,6 +3,7 @@ package com.hzs.sale.shopping.controller.api; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONUtil; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; @@ -49,6 +50,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry() || scr.getPkCountry() == 0) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); if (shoppingCartRedisMap == null) { @@ -70,6 +75,7 @@ public class ApiShoppingCartController extends BaseController { for (ProductGroup productGroup : scr.getProductGroup()) { innerKey.append(productGroup.getPkSkuId()).append("_").append(productGroup.getQuantity()); } + innerKey.append("_").append(copyFor41List ? ESpecialArea.RETAIL_UPGRADE.getValue() : scr.getSpecialArea()); if (innerShopMap.containsKey(innerKey.toString())) { // 购物车中存在该商品 @@ -77,6 +83,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(jsonString, ShoppingCartRedis.class); shoppingCartRedis.setNumber(shoppingCartRedis.getNumber() + scr.getNumber()); shoppingCartRedis.setPkMakerSpace(scr.getPkMakerSpace()); + if(copyFor41List){ + shoppingCartRedis.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + } innerShopMap.put(innerKey.toString(), JSONUtil.toJsonStr(shoppingCartRedis)); } else { @@ -97,6 +106,10 @@ public class ApiShoppingCartController extends BaseController { if (shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getPkCountry() == null) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); List shoppingCartOld; @@ -104,6 +117,9 @@ public class ApiShoppingCartController extends BaseController { Map innerShopMap; innerShopMap = (Map) shoppingCartRedisMap.get(key); shoppingCartOld = shoppingCartService.getShopping(innerShopMap, shoppingCartVO.getSpecialArea(), shoppingCartVO.getPkCountry(), SecurityUtils.getSystemType()); + if(copyFor41List){ + shoppingCartOld.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); + } } else { shoppingCartOld = new ArrayList<>(); } @@ -120,6 +136,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int count = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -137,6 +157,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; @@ -147,6 +170,7 @@ public class ApiShoppingCartController extends BaseController { if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { count += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } else { iterator.remove(); } @@ -175,6 +199,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int smallCount = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -193,17 +221,21 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; } - if (shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) + if (copyFor41List ? shoppingCartRedisSpecialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue()) : shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) && shoppingCartPkCountry.equals(shoppingCartRedisPkCountry)) { if (null != shoppingCartRedis.getWaresCode()) { CuWaresParams cuWaresParams = bdWaresSpecsSkuService.queryWaresSpecsSkuCount(shoppingCartSpecialArea, shoppingCartRedis.getWaresCode(), userId, shoppingCartPkCountry); if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { smallCount += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } } else { smallCount += shoppingCartRedis.getNumber(); @@ -277,6 +309,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry()) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); CarWaresInfoVo carWaresInfoVo = new CarWaresInfoVo(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java index a82c0739..b2933715 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java @@ -166,6 +166,9 @@ public class ShoppingCartServiceImpl implements IShoppingCartService { **/ private void getShoppingCart(ShoppingCart shoppingCart, Integer specialArea, String waresCode, Long userId, ShoppingCartRedis sst, BigDecimal waresPrice, BigDecimal achieve, BigDecimal assAchieve, R currency, Integer pkCountry, Integer systemType) { + if(specialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue())){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } CuWaresParams cuWaresParams = iBdWaresSpecsSkuService.queryWaresSpecsSkuShopping(specialArea, waresCode, userId, pkCountry, systemType); if (cuWaresParams == null) { return; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 532e9668..6345dc09 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.sale.wares.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.domain.R; @@ -188,7 +189,9 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; - + if(ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea || EOrderType.MALL_ORDER.getValue() == specialArea) { R memberDate = iMemberServiceApi.getMember(loginMemberId); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index b9b656eb..5da35db7 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -39,6 +39,11 @@ public enum EOrderType { * 精品专区 -- 注册专区 */ RETAIL_REGISTER(41, "精品专区", 0), + + /** + * 甄选专区 -- 甄选专区 + */ + RETAIL_UPGRADE(42, "甄选专区", 0), /** * 商城专区 -- 复购专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index c1afc9e4..5eadc300 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -1,5 +1,6 @@ package com.hzs.common.core.enums; +import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -34,6 +35,10 @@ public enum ESpecialArea { * 精品专区 */ RETAIL_REGISTER(41, "精品专区", 0, 41, -1), + /** + * 甄选专区 + */ + RETAIL_UPGRADE(42, "甄选专区", 0, 42, -1), /** * 商城专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index 2f8e9677..70bfce68 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -20,6 +20,7 @@ public enum ETradeType { FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), + RETAIL_UPGRADE_ORDER(142, 0, "甄选订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), From 1788428d67969eedb37bc416edea73b2e0c783f5 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 15:41:41 +0800 Subject: [PATCH 187/362] =?UTF-8?q?##=20Fix=20-=20=E3=80=90H5=E3=80=91?= =?UTF-8?q?=E6=89=AB=E7=A0=81=E6=B3=A8=E5=86=8C=EF=BC=8C=E9=80=89=E5=95=86?= =?UTF-8?q?=E5=9F=8E=E4=B8=93=E5=8C=BA=E7=9A=84=E5=93=81=E4=B8=8B=E5=8D=95?= =?UTF-8?q?=E5=90=8E=E6=94=AF=E4=BB=98=E5=AE=8C=E6=88=90=EF=BC=8C=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E6=88=AA=E5=9B=BE=E4=B8=AD=E7=9A=84=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E4=BF=A1=E6=81=AF[http://47.94.148.201:8081/index.php=3Fm=3Dbu?= =?UTF-8?q?g&f=3Dview&bugID=3D395]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 20a8ae86..d1c9090f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -612,10 +612,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 在线支付的订单支付方式为钱包 saOrderExt.setPayType(EOrderPayType.ONLINE.getValue()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { + RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); + boolean isShared = ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || (isShared && EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) + ) { // 注册订单 // 获取缓存参数 - RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); if (null == registerParam) { // if (null != saOrderTemp) { // registerParam = JSONUtil.toBean(saOrderTemp.getTempParam(), RetailOrderRegisterParam.class); From f2c05f15b1138e3151b189c9211086d47999d34a Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 14:52:52 +0800 Subject: [PATCH 188/362] =?UTF-8?q?##=20Opt=20-=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=94=84=E9=80=89=E4=B8=93=E5=8C=BA=20=E5=95=86=E5=93=81?= =?UTF-8?q?=E5=90=8C=E7=B2=BE=E5=93=81=E4=B8=93=E5=8C=BA=E4=B8=80=E8=87=B4?= =?UTF-8?q?,=E4=B8=8B=E5=8D=95=E9=80=BB=E8=BE=91=E5=90=8C=E5=95=86?= =?UTF-8?q?=E5=9F=8E=E4=B8=93=E5=8C=BA=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiRetailOrderController.java | 5 ++- .../service/impl/RetailOrderServiceImpl.java | 12 ++++++ .../api/ApiRetailWaresController.java | 8 ++++ .../api/ApiShoppingCartController.java | 38 ++++++++++++++++++- .../service/impl/ShoppingCartServiceImpl.java | 3 ++ .../impl/BdWaresSpecsSkuServiceImpl.java | 5 ++- .../com/hzs/common/core/enums/EOrderType.java | 5 +++ .../hzs/common/core/enums/ESpecialArea.java | 5 +++ .../com/hzs/common/core/enums/ETradeType.java | 1 + 9 files changed, 78 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 0092efb0..2a489aad 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -424,7 +424,7 @@ public class ApiRetailOrderController { * @param source 数据来源 * @return */ - @RepeatSubmit +// @RepeatSubmit @PostMapping("/confirm-other-order") public AjaxResult confirmOtherOrder(@Valid @RequestBody RetailOrderOtherParam orderParam, @RequestHeader("Source") Integer source) { @@ -468,6 +468,7 @@ public class ApiRetailOrderController { if (null == otherParam) { return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); } + otherParam.setSpecialArea(payParam.getSpecialArea()); // 购买会员 CuMember buyMember = iMemberServiceApi.getRetailMember(null, otherParam.getBuyMemberCode()).getData(); @@ -478,7 +479,7 @@ public class ApiRetailOrderController { // 封装订单信息 SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(otherParam, null, buyMember); - + saOrderExt.setOrderType(payParam.getSpecialArea()); // 校验会员账户状态等 R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); if (!accountResult.isSuccess()) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 37ebf6eb..20a8ae86 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; @@ -221,6 +222,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ // saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); saOrderExt.setPostage(orderParam.getPostage()); + }else if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + saOrderExt.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); } return saOrderExt; @@ -229,6 +233,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public List createSaOrderItems(RetailOrderParam orderParam, List gradeList, CuMember cuMember, SaOrderExt saOrderExt, CurrencyDTO currency) { + boolean isCopy41List = false; + if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + orderParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + isCopy41List = true; + } // 订单明细信息 List orderItemsList = new ArrayList<>(); if (null == currency) { @@ -275,6 +284,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPostage(orderParam.getPostage()); // 订单指定商品盒数 saOrderExt.setBoxNum(boxNum); + if(isCopy41List){ + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); + } } return orderItemsList; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index 2824171d..42da4d06 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.constant.CountryConstants; @@ -86,6 +87,10 @@ public class ApiRetailWaresController extends BaseController { */ @PostMapping("/wares-list") public AjaxResult waresList(@Valid @RequestBody RetailWaresParam param) { + boolean copyFor41List = param.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } // 会员信息 CuMemberExt cuMemberExt = iMemberServiceApi.getMemberById(SecurityUtils.getUserId()).getData(); @@ -102,6 +107,9 @@ public class ApiRetailWaresController extends BaseController { if (CollectionUtil.isNotEmpty(bdWaresExtList)) { resultList = this.waresShowHandle(bdWaresExtList, param.getSpecialArea(), cuMemberExt.getPkSettleGrade(), true); + if(copyFor41List){ + resultList.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); + } } return AjaxResult.success(resultList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java index 9fe554e1..75024146 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java @@ -3,6 +3,7 @@ package com.hzs.sale.shopping.controller.api; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONUtil; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; @@ -49,6 +50,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry() || scr.getPkCountry() == 0) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); if (shoppingCartRedisMap == null) { @@ -70,6 +75,7 @@ public class ApiShoppingCartController extends BaseController { for (ProductGroup productGroup : scr.getProductGroup()) { innerKey.append(productGroup.getPkSkuId()).append("_").append(productGroup.getQuantity()); } + innerKey.append("_").append(copyFor41List ? ESpecialArea.RETAIL_UPGRADE.getValue() : scr.getSpecialArea()); if (innerShopMap.containsKey(innerKey.toString())) { // 购物车中存在该商品 @@ -77,6 +83,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(jsonString, ShoppingCartRedis.class); shoppingCartRedis.setNumber(shoppingCartRedis.getNumber() + scr.getNumber()); shoppingCartRedis.setPkMakerSpace(scr.getPkMakerSpace()); + if(copyFor41List){ + shoppingCartRedis.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + } innerShopMap.put(innerKey.toString(), JSONUtil.toJsonStr(shoppingCartRedis)); } else { @@ -97,6 +106,10 @@ public class ApiShoppingCartController extends BaseController { if (shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getPkCountry() == null) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); List shoppingCartOld; @@ -104,6 +117,9 @@ public class ApiShoppingCartController extends BaseController { Map innerShopMap; innerShopMap = (Map) shoppingCartRedisMap.get(key); shoppingCartOld = shoppingCartService.getShopping(innerShopMap, shoppingCartVO.getSpecialArea(), shoppingCartVO.getPkCountry(), SecurityUtils.getSystemType()); + if(copyFor41List){ + shoppingCartOld.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); + } } else { shoppingCartOld = new ArrayList<>(); } @@ -120,6 +136,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int count = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -137,6 +157,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; @@ -147,6 +170,7 @@ public class ApiShoppingCartController extends BaseController { if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { count += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } else { iterator.remove(); } @@ -175,6 +199,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int smallCount = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -193,17 +221,21 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; } - if (shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) + if (copyFor41List ? shoppingCartRedisSpecialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue()) : shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) && shoppingCartPkCountry.equals(shoppingCartRedisPkCountry)) { if (null != shoppingCartRedis.getWaresCode()) { CuWaresParams cuWaresParams = bdWaresSpecsSkuService.queryWaresSpecsSkuCount(shoppingCartSpecialArea, shoppingCartRedis.getWaresCode(), userId, shoppingCartPkCountry); if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { smallCount += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } } else { smallCount += shoppingCartRedis.getNumber(); @@ -277,6 +309,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry()) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); CarWaresInfoVo carWaresInfoVo = new CarWaresInfoVo(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java index a82c0739..b2933715 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java @@ -166,6 +166,9 @@ public class ShoppingCartServiceImpl implements IShoppingCartService { **/ private void getShoppingCart(ShoppingCart shoppingCart, Integer specialArea, String waresCode, Long userId, ShoppingCartRedis sst, BigDecimal waresPrice, BigDecimal achieve, BigDecimal assAchieve, R currency, Integer pkCountry, Integer systemType) { + if(specialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue())){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } CuWaresParams cuWaresParams = iBdWaresSpecsSkuService.queryWaresSpecsSkuShopping(specialArea, waresCode, userId, pkCountry, systemType); if (cuWaresParams == null) { return; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 532e9668..6345dc09 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.sale.wares.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.domain.R; @@ -188,7 +189,9 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; - + if(ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea || EOrderType.MALL_ORDER.getValue() == specialArea) { R memberDate = iMemberServiceApi.getMember(loginMemberId); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java index b9b656eb..5da35db7 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOrderType.java @@ -39,6 +39,11 @@ public enum EOrderType { * 精品专区 -- 注册专区 */ RETAIL_REGISTER(41, "精品专区", 0), + + /** + * 甄选专区 -- 甄选专区 + */ + RETAIL_UPGRADE(42, "甄选专区", 0), /** * 商城专区 -- 复购专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java index c1afc9e4..5eadc300 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESpecialArea.java @@ -1,5 +1,6 @@ package com.hzs.common.core.enums; +import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Getter; @@ -34,6 +35,10 @@ public enum ESpecialArea { * 精品专区 */ RETAIL_REGISTER(41, "精品专区", 0, 41, -1), + /** + * 甄选专区 + */ + RETAIL_UPGRADE(42, "甄选专区", 0, 42, -1), /** * 商城专区 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java index 2f8e9677..70bfce68 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ETradeType.java @@ -20,6 +20,7 @@ public enum ETradeType { FICTITIOUS_ORDER(120, 0, "虚拟订单", 0, EnumsPrefixConstants.TRADE_TYPE + 120, EOrderType.FICTITIOUS_ORDER.getValue()), RETAIL_REGISTER_ORDER(141, 0, "注册订单", 0, EnumsPrefixConstants.TRADE_TYPE + 141, EOrderType.RETAIL_REGISTER.getValue()), + RETAIL_UPGRADE_ORDER(142, 0, "甄选订单", 0, EnumsPrefixConstants.TRADE_TYPE + 142, EOrderType.RETAIL_UPGRADE.getValue()), RETAIL_REPURCHASE_ORDER(143, 0, "复购订单", 0, EnumsPrefixConstants.TRADE_TYPE + 143, EOrderType.RETAIL_REPURCHASE.getValue()), RETAIL_CONSUME_ORDER(144, 0, "重消订单", 0, EnumsPrefixConstants.TRADE_TYPE + 144, EOrderType.RETAIL_CONSUME.getValue()), RETAIL_TICKET_ORDER(145, 0, "自主购票", 0, EnumsPrefixConstants.TRADE_TYPE + 145, EOrderType.RETAIL_TICKET.getValue()), From f70d81fc902938713f2735b11d46174b64ee49be Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 15:41:41 +0800 Subject: [PATCH 189/362] =?UTF-8?q?##=20Fix=20-=20=E3=80=90H5=E3=80=91?= =?UTF-8?q?=E6=89=AB=E7=A0=81=E6=B3=A8=E5=86=8C=EF=BC=8C=E9=80=89=E5=95=86?= =?UTF-8?q?=E5=9F=8E=E4=B8=93=E5=8C=BA=E7=9A=84=E5=93=81=E4=B8=8B=E5=8D=95?= =?UTF-8?q?=E5=90=8E=E6=94=AF=E4=BB=98=E5=AE=8C=E6=88=90=EF=BC=8C=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E6=88=AA=E5=9B=BE=E4=B8=AD=E7=9A=84=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E4=BF=A1=E6=81=AF[http://47.94.148.201:8081/index.php=3Fm=3Dbu?= =?UTF-8?q?g&f=3Dview&bugID=3D395]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/service/impl/RetailOrderServiceImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 20a8ae86..d1c9090f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -612,10 +612,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 在线支付的订单支付方式为钱包 saOrderExt.setPayType(EOrderPayType.ONLINE.getValue()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { + RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); + boolean isShared = ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || (isShared && EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) + ) { // 注册订单 // 获取缓存参数 - RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); if (null == registerParam) { // if (null != saOrderTemp) { // registerParam = JSONUtil.toBean(saOrderTemp.getTempParam(), RetailOrderRegisterParam.class); From 93ea114c23bf14ec205231b6cdb1421db8b62723 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 16:00:19 +0800 Subject: [PATCH 190/362] =?UTF-8?q?##=20Fix=20-=20Redis=E4=B8=B4=E6=97=B6?= =?UTF-8?q?=E8=AE=A2=E5=8D=95key?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/provider/SaOrderServiceProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index b334c14e..361f141c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -128,7 +128,7 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Override public R queryOrderByCode(String orderCode, Long pkMember) { - SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.TEMP_ORDER + pkMember + orderCode); + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode); if (null == saOrder) { // 直销订单 saOrder = iSaOrderService.queryOrderByCode(orderCode, null); From b2ace167238d014a89442e31e3414c49b44f70ed Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 19 Sep 2025 16:00:19 +0800 Subject: [PATCH 191/362] =?UTF-8?q?##=20Fix=20-=20Redis=E4=B8=B4=E6=97=B6?= =?UTF-8?q?=E8=AE=A2=E5=8D=95key?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/provider/SaOrderServiceProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index b334c14e..361f141c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -128,7 +128,7 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Override public R queryOrderByCode(String orderCode, Long pkMember) { - SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.TEMP_ORDER + pkMember + orderCode); + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode); if (null == saOrder) { // 直销订单 saOrder = iSaOrderService.queryOrderByCode(orderCode, null); From bcc4cfed8818b80b16439e21fac6420815825810 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 19 Sep 2025 18:14:50 +0800 Subject: [PATCH 192/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E7=82=B9=E4=BD=8D=E5=A1=AB=E5=85=85=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 21 +- .../service/ICuMemberRetailDetailService.java | 6 + .../service/ICuMemberRetailRangeService.java | 17 +- .../service/impl/CuMemberBonusSettle.java | 12 +- .../impl/CuMemberRetailDetailServiceImpl.java | 32 +- .../impl/CuMemberRetailRangeServiceImpl.java | 24 +- .../mapper/CuMemberBonusStageMapper.java | 11 + .../service/ICuMemberBonusStageService.java | 41 ++ .../service/impl/BonusSettleRangeHandle.java | 437 +++++++++--------- .../impl/CuMemberBonusStageServiceImpl.java | 415 +++++++++++++++++ .../achieve/CuMemberRetailRangeMapper.xml | 395 ++++++++++++++-- .../bonus/bonus/CuMemberBonusStageMapper.xml | 32 ++ .../achieve/ext/CuMemberRetailRangeExt.java | 11 +- .../member/bonus/CuMemberBonusStage.java | 129 ++++++ 14 files changed, 1297 insertions(+), 286 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java create mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index a5ae5617..d3b1e4c7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -29,6 +29,12 @@ public interface CuMemberRetailRangeMapper extends BaseMapper queryCuMemberRetailRangeParent(@Param("tableName") String tableName, @Param("saOrderExtList") List saOrderExtList); + /** + * 根据会员ID查询会员数据 + */ + List listCuMemberRetailRange(@Param("tableName") String tableName, @Param("pkMemberList") List pkMemberList); + /** * 推荐推荐人查询推荐人下的所有部门, 该订单日期之前的算他的网体 */ @@ -80,13 +91,19 @@ public interface CuMemberRetailRangeMapper extends BaseMapper cuMemberRangeExtList); /** - * 批量更新网体 + * 更新会员日结数据 */ void mergeCuMemberRetailRangeExt(@Param("rangeTableName") String rangeTableName, @Param("cuMemberRangeExtList") List cuMemberRangeExtList); + /** + * 批量会员日结明细数据 + */ + void mergeCuMemberRetailDetail(@Param("rangeDetailTableName") String rangeDetailTableName, @Param("cuMemberDetailList") List cuMemberDetailList); + /** * 向上查找所有parentID + * * @param pkMember * @return */ @@ -95,6 +112,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberRangeExtMap, EBonusStage eBonusStage); + /** + * 指定会员获取对应的点位数据 + */ + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 83e54bc3..8b805aa7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -21,7 +21,12 @@ public interface ICuMemberRetailRangeService extends IService queryCuMemberSecondRangeExtByParent(String rangeTableName, String secondTableName, Long pkMember); /** - * 更新会员树的累计业绩 - * - * @param settleTableName 结算日期 - * @param cuMemberTreeMap 树 + * 更新会员日结数据 */ void updateCuMemberRetailRange(String settleTableName, Map cuMemberTreeMap); + /** + * 更新会员日结明细数据 + */ + void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap); + /** * 更新极差秒接表,用昨天的结算表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java index 3d05e281..02a1530b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java @@ -3,10 +3,7 @@ package com.hzs.bonus.achieve.service.impl; import com.hzs.common.core.constant.MagicNumberConstants; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Set; +import java.util.*; /** * 奖金计算工具类 @@ -39,4 +36,11 @@ public class CuMemberBonusSettle { List oriList = Arrays.asList(baseEntityList.toArray()); return handleCutList(oriList, batchNum); } + + public List> handleCutList(Collection baseEntityList, Integer... batchNum) { + List oriList = Arrays.asList(baseEntityList.toArray()); + return handleCutList(oriList, batchNum); + } + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 92494240..46291351 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.bonus.achieve.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -25,21 +26,42 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, EBonusStage eBonusStage) { List> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); pkMemberList.forEach(tmpIdList -> { + // 查询明细数据(指定阶段,未完成的) List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); - if (tmpList.size() > 0) { + if (CollectionUtil.isNotEmpty(tmpList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 阶段一点位列表 - if (null == cuMemberRetailRangeExt.getOneDetailList()) { - cuMemberRetailRangeExt.setOneDetailList(new ArrayList<>()); + // 阶段一点位列表(使用有序map,为了后续业务处理方便) + if (null == cuMemberRetailRangeExt.getOneDetailMap()) { + cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); } - cuMemberRetailRangeExt.getOneDetailList().add(cuMemberRetailDetail); + cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } } }); } + @Override + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { + // 查询明细数据(指定阶段,未完成的) + List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue()); + if (CollectionUtil.isNotEmpty(tmpDetailList)) { + // 明细数据放到对应的会员数据中 + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { + CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 阶段一点位列表(使用有序map,为了后续业务处理方便) + if (null == cuMemberRetailRangeExt.getOneDetailMap()) { + cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); + } + cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } + } + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 811c89f1..6254eb3c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -1,10 +1,12 @@ package com.hzs.bonus.achieve.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EOrderType; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; @@ -27,7 +29,7 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl queryCuMemberRetailRangeParent(String tableName, List saOrderExtList) { List memberRetailRangeExtList = new ArrayList<>(); @@ -82,6 +89,21 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberRetailRangeExt(settleTableName, list)); } + @Override + public void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap) { + Collection retailDetailColl = new ArrayList<>(); + memberRangeExtMap.forEach((key, value) -> { + if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { + retailDetailColl.addAll(value.getOneDetailMap().values()); + } + }); + List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); + if (CollectionUtil.isNotEmpty(list)) { + list.forEach(tmpList -> + baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList)); + } + } + @Override public void mergeMemberSecondRetailRangeByRange(String rangeTableName, String secondRangeTableName, Long pkMember) { // 当前网体更新极差秒接表(血缘伞上) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java new file mode 100644 index 00000000..cda6f8d0 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.bonus.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; + +/** + * 会员奖金-阶段收益明细表 Mapper 接口 + */ +public interface CuMemberBonusStageMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java new file mode 100644 index 00000000..9324c81a --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -0,0 +1,41 @@ +package com.hzs.bonus.bonus.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; + +import java.util.Map; + +/** + * 会员奖金-阶段收益明细表 服务类 + */ +public interface ICuMemberBonusStageService extends IService { + + /** + * 填充会员点位 + */ + String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); + + /** + * 处理新点位是推荐第一层 + */ + void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + + /** + * 处理新点位是推荐第二层 + */ + void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + + /** + * 处理新点位是推荐第三层 + */ + void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index edcd78c5..4abdb337 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; @@ -44,10 +45,12 @@ import java.util.stream.Collectors; @Component public class BonusSettleRangeHandle extends BonusSettleHandle { + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired - private ICuMemberRetailDetailService iCuMemberRetailDetailService; + private ICuMemberBonusStageService iCuMemberBonusStageService; @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired @@ -289,8 +292,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // TODO 回退奖衔,将奖衔回退到结算前状态 iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName); - // 更新网体 - iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算网体数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算明细数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeDetailByYesterday(rangeDetailTableName, yesterdayRangeDetailTableName); if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 @@ -313,8 +318,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 精品直推收益、复购见点收益 + // 直推收益、见点收益 List cuMemberBonusPushList = new ArrayList<>(); + // 阶段收益 + List cuMemberBonusStageList = new ArrayList<>(); // 复购级差收益 List cuMemberBonusRangeList = new ArrayList<>(); // 会员奖金明细 @@ -328,8 +335,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单金额 - this.calculateStageIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, - settleStartDate); + this.calculateStageIncome(cuMemberBonusStageList, memberRangeExtMap, saOrderExt, + settleStartDate, rangeTableName, rangeDetailTableName); // TODO 领导级差收益 -- 来源PV @@ -359,8 +366,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新会员表奖衔数据 iCuMemberService.updateCuMemberRetailRangeByPeriod(period); } - // 更新网体 + // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); + // 更新日结明细数据 + iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } } @@ -428,85 +437,85 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } - // 校验大小区会员数据 - List cuMemberRangeExtList = null; - // 校验累计小部门会员数据 - List cuMemberRetailRangeExtList = null; - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 再验证小区,计算小区业绩(拉取直推会员数据) - if (null == cuMemberRangeExtList) { - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - if (null == cuMemberRetailRangeExtList) { - // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = cuMemberRangeExtList; - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } +// // 校验大小区会员数据 +// List cuMemberRangeExtList = null; +// // 校验累计小部门会员数据 +// List cuMemberRetailRangeExtList = null; +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// // 先验证累计业绩 +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { +// // 再验证小区,计算小区业绩(拉取直推会员数据) +// if (null == cuMemberRangeExtList) { +// if (null != secondRangeTableName) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); +// } +// } +// // 本人月消费业绩(默认为大区) +// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 +// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 月累计业绩 > 大区业绩,则月累计就成为大区了 +// consumeBigPv = consumePv; +// } +// } +// +// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); +// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { +// // 小区业绩 >= 小区考核业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证是否有多个区满足业绩 +// if (null == cuMemberRetailRangeExtList) { +// // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 +// if (null != secondRangeTableName) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = cuMemberRangeExtList; +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); +// } +// } +// +// int enoughNum = 0; +// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { +// enoughNum += 1; +// } +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { +// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 +// enoughNum += 1; +// } +// } +// if (bdAwards.getPlaceDeptNum() > enoughNum) { +// break; +// } +// } +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); +// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); +// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); +// continue; +// } +// } +// } +// break; +// } } /** @@ -579,79 +588,79 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 验证小区,计算小区业绩(拉取直推会员数据) - List cuMemberRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - List cuMemberRetailRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); - cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// // 先验证累计业绩 +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { +// // 验证小区,计算小区业绩(拉取直推会员数据) +// List cuMemberRangeExtList; +// if (secondRangeTableName != null) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); +// } +// // 本人月消费业绩(默认为大区) +// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 +// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 月累计业绩 > 大区业绩,则月累计就成为大区了 +// consumeBigPv = consumePv; +// } +// } +// +// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); +// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { +// // 小区业绩 >= 小区考核业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证是否有多个区满足业绩 +// List cuMemberRetailRangeExtList; +// if (secondRangeTableName != null) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); +// } +// +// int enoughNum = 0; +// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { +// enoughNum += 1; +// } +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { +// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 +// enoughNum += 1; +// } +// } +// if (bdAwards.getPlaceDeptNum() > enoughNum) { +// break; +// } +// } +// CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); +// cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); +// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); +// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); +// continue; +// } +// } +// } +// break; +// } } @@ -919,8 +928,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 计算阶段收益 -- 精品专区 */ - private void calculateStageIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, - Date settleDate) { + private void calculateStageIncome(List cuMemberBonusStageList, Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName) { // 订单金额除50取整,为新増点位数量 int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); if (newPointInt == 0) { @@ -931,26 +940,26 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 订单会员 CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); // 会员一阶段子点位列表 - List detailList = sourceMember.getOneDetailList(); + LinkedHashMap detailList = sourceMember.getOneDetailMap(); if (null == detailList) { - detailList = new ArrayList<>(); - sourceMember.setOneDetailList(detailList); + detailList = new LinkedHashMap<>(); + sourceMember.setOneDetailMap(detailList); } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); for (int i = 1; i <= newPointInt; i++) { - // 订单生成的新点位 - CuMemberRetailDetail tmpDetail = CuMemberRetailDetail.builder() + // 订单会员生成的新点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() .pkMember(sourceMember.getPkMember()) .childNode(pointCount + i) .pkParent(sourceMember.getPkParent()) .stage(EBonusStage.ONE.getValue()) - .stage(EBonusStageStatus.NO.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) .build(); - detailList.add(tmpDetail); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); // 推荐人 Long pkParent = sourceMember.getPkParent(); @@ -960,87 +969,57 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 没有推荐人了,则直接结束 break; } + pkParent = targetMember.getPkParent(); + // 推荐人一阶段子点位列表 - List parentDetailList = targetMember.getOneDetailList(); + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); if (CollectionUtil.isEmpty(parentDetailList)) { // 推荐人没有未完成点位,继续往上找 continue; } - for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { - if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { - // 推荐人子点位未完成,则进行填充 - String firstNode = this.fillChildNode(cuMemberRetailDetail, tmpDetail.getPkMember(), tmpDetail.getChildNode()); - switch (firstNode) { + parentDetailList.forEach((key, parentRetailDetail) -> { + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + String newNode = iCuMemberBonusStageService.fillChildNode(parentRetailDetail, newRetailDetail); + if (null == newNode) { + return; + } + switch (newNode) { case BonusConstants.POINT_11: - break; case BonusConstants.POINT_12: + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); break; case BonusConstants.POINT_21: - break; case BonusConstants.POINT_22: - break; case BonusConstants.POINT_23: - break; case BonusConstants.POINT_24: - break; - case BonusConstants.POINT_31: - break; - case BonusConstants.POINT_32: - break; - case BonusConstants.POINT_33: - break; - case BonusConstants.POINT_34: - break; - case BonusConstants.POINT_35: - break; - case BonusConstants.POINT_36: - break; - case BonusConstants.POINT_37: + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); break; case BonusConstants.POINT_38: - // 第一个点位已经全部填满 - cuMemberRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - cuMemberRetailDetail.setStageDate(settleDate); - - + // 第一个点位已经全部填满,更新完成状态和时间 + parentRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + parentRetailDetail.setStageDate(settleDate); // TODO 一阶段全满则需要发放一阶段奖金 - // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); } - } - } + }); } } } - /** - * 填充子点位 - */ - private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Integer pointMemberValue) { - if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { - initFieldMap(); - } - for (String suffix : BonusConstants.FIELD_LIST) { - Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); - Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); - Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); - if (ObjectUtil.isEmpty(pointFieldValue)) { - ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); - ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); - return suffix; - } - } - return null; - } - - private void initFieldMap() { - BonusConstants.FIELD_MAP = new HashMap<>(); - for (String suffix : BonusConstants.FIELD_LIST) { - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); - } - } - - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java new file mode 100644 index 00000000..cc86523b --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -0,0 +1,415 @@ +package com.hzs.bonus.bonus.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; +import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; +import com.hzs.bonus.constant.BonusConstants; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 会员奖金-阶段收益明细表 服务实现类 + */ +@Service +public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { + + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; + + @Resource + private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + + private void initFieldMap() { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + } + } + + @Override + public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { + if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { + initFieldMap(); + } + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); + if (ObjectUtil.isEmpty(pointFieldValue)) { + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, newRetailDetail.getChildNode()); + return suffix; + } + } + return null; + } + + /** + * 向上填充子点位 + */ + public void fillUpTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newParentRetailDetail, + CuMemberRetailDetail newRetailDetail, String node) { + if (null == targetRetailDetail) { + return; + } + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + if (ReflectUtil.getFieldValue(targetRetailDetail, pointMemberField).equals(newParentRetailDetail.getPkMember()) + && ReflectUtil.getFieldValue(targetRetailDetail, pointField).equals(newParentRetailDetail.getChildNode())) { + // 中间点位在目标点位的位置,根据位置获取新点位填充的位置 + switch (suffix) { + case BonusConstants.POINT_11: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_21.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_23.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_24.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_12: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_21.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_23.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_24.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_21: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_22: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_23: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_24: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode()); + } + break; + } + break; + } + } + } + + /** + * 向下填充子点位 + */ + public void fillDownTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newRetailDetail, + String node, Integer level) { + if (null == targetRetailDetail) { + return; + } + if (level.equals(1)) { + if (BonusConstants.POINT_21.equals(node) + || BonusConstants.POINT_23.equals(node) + || BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_35.equals(node) + || BonusConstants.POINT_37.equals(node)) { + targetRetailDetail.setPointMember11(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint11(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node) + || BonusConstants.POINT_24.equals(node) + || BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_36.equals(node) + || BonusConstants.POINT_38.equals(node)) { + targetRetailDetail.setPointMember12(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint12(newRetailDetail.getChildNode()); + } + } else if (level.equals(2)) { + if (BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_35.equals(node)) { + targetRetailDetail.setPointMember21(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint21(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_36.equals(node)) { + targetRetailDetail.setPointMember22(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint22(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_37.equals(node)) { + targetRetailDetail.setPointMember23(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint23(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_38.equals(node)) { + targetRetailDetail.setPointMember24(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint24(newRetailDetail.getChildNode()); + } + } + } + + @Override + public void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第一层 + newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二、三层结算数据 + CuMemberRetailRangeExt memberFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberFirst && null != newParentRetailDetail.getPointMemberFirst()) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + CuMemberRetailRangeExt memberSecond = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null == memberSecond && null != newParentRetailDetail.getPointMemberSecond()) { + queryMemberList.add(newParentRetailDetail.getPointMemberSecond()); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第二层 + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointSecond(newParentRetailDetail.getPointFirst()); + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + + + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberSecond()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointSecond()); + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointSecond()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + } + + @Override + public void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第二层 + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第三层结算数据 + CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberUpFirst) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_21: + case BonusConstants.POINT_22: + downFirstMember = newParentRetailDetail.getPointMember11(); + downFirstPoint = newParentRetailDetail.getPoint11(); + break; + case BonusConstants.POINT_23: + case BonusConstants.POINT_24: + downFirstMember = newParentRetailDetail.getPointMember12(); + downFirstPoint = newParentRetailDetail.getPoint12(); + break; + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointFirst()); + CuMemberRetailRangeExt thirdMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != thirdMemberRetail) { + CuMemberRetailDetail memberDetail = thirdMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(memberDetail.getPkMember()); + newRetailDetail.setPointFirst(memberDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1); + } + } + } + + @Override + public void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointThird(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二层结算数据 + Long downSecondMember = null; + Integer downSecondPoint = null; + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + downSecondMember = newParentRetailDetail.getPointMember11(); + downSecondPoint = newParentRetailDetail.getPoint11(); + if (BonusConstants.POINT_31.equals(newNode) + || BonusConstants.POINT_32.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember21(); + downFirstPoint = newParentRetailDetail.getPoint21(); + } else { + downFirstMember = newParentRetailDetail.getPointMember22(); + downFirstPoint = newParentRetailDetail.getPoint22(); + } + break; + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + downSecondMember = newParentRetailDetail.getPointMember12(); + downSecondPoint = newParentRetailDetail.getPoint12(); + if (BonusConstants.POINT_35.equals(newNode) + || BonusConstants.POINT_36.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember23(); + downFirstPoint = newParentRetailDetail.getPoint23(); + } else { + downFirstMember = newParentRetailDetail.getPointMember24(); + downFirstPoint = newParentRetailDetail.getPoint24(); + } + break; + } + CuMemberRetailRangeExt memberDownSecond = memberRangeExtMap.get(downSecondMember); + if (null == memberDownSecond) { + queryMemberList.add(downSecondMember); + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第二层 + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(downSecondMember); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(downSecondPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 2); + } + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1); + } + } + } +} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 1d3ef1a3..610ce41a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -50,11 +50,10 @@ + - - @@ -125,6 +124,191 @@ + + + merge into ${detailTableName} a + using ( + select x.pk_member, + x.child_node, + cm.pk_parent, + x.stage, + x.stage_status, + x.stage_date, + x.point_11, + x.point_12, + x.point_21, + x.point_22, + x.point_23, + x.point_24, + x.point_31, + x.point_32, + x.point_33, + x.point_34, + x.point_35, + x.point_36, + x.point_37, + x.point_38, + x.point_member_11, + x.point_member_12, + x.point_member_21, + x.point_member_22, + x.point_member_23, + x.point_member_24, + x.point_member_31, + x.point_member_32, + x.point_member_33, + x.point_member_34, + x.point_member_35, + x.point_member_36, + x.point_member_37, + x.point_member_38, + x.point_type, + x.point_gift, + x.creation_time, + x.point_first, + x.point_member_first, + x.point_second, + x.point_member_second, + x.point_third, + x.point_member_third + from ${yesterdayDetailTableName} x + left join cu_member cm + on cm.pk_id = x.pk_member + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node) + when not matched then + insert (pk_member, + child_node, + pk_parent, + stage, + stage_status, + stage_date, + point_11, + point_12, + point_21, + point_22, + point_23, + point_24, + point_31, + point_32, + point_33, + point_34, + point_35, + point_36, + point_37, + point_38, + point_member_11, + point_member_12, + point_member_21, + point_member_22, + point_member_23, + point_member_24, + point_member_31, + point_member_32, + point_member_33, + point_member_34, + point_member_35, + point_member_36, + point_member_37, + point_member_38, + point_type, + point_gift, + creation_time, + point_first, + point_member_first, + point_second, + point_member_second, + point_third, + point_member_third) + values (b.pk_member, + b.child_node, + b.pk_parent, + b.stage, + b.stage_status, + b.stage_date, + b.point_11, + b.point_12, + b.point_21, + b.point_22, + b.point_23, + b.point_24, + b.point_31, + b.point_32, + b.point_33, + b.point_34, + b.point_35, + b.point_36, + b.point_37, + b.point_38, + b.point_member_11, + b.point_member_12, + b.point_member_21, + b.point_member_22, + b.point_member_23, + b.point_member_24, + b.point_member_31, + b.point_member_32, + b.point_member_33, + b.point_member_34, + b.point_member_35, + b.point_member_36, + b.point_member_37, + b.point_member_38, + b.point_type, + b.point_gift, + b.creation_time, + b.point_first, + b.point_member_first, + b.point_second, + b.point_member_second, + b.point_third, + b.point_member_third) + when matched then + update set + a.pk_parent = b.pk_parent, + a.stage = b.stage, + a.stage_status = b.stage_status, + a.stage_date = b.stage_date, + a.point_11 = b.point_11, + a.point_12 = b.point_12, + a.point_21 = b.point_21, + a.point_22 = b.point_22, + a.point_23 = b.point_23, + a.point_24 = b.point_24, + a.point_31 = b.point_31, + a.point_32 = b.point_32, + a.point_33 = b.point_33, + a.point_34 = b.point_34, + a.point_35 = b.point_35, + a.point_36 = b.point_36, + a.point_37 = b.point_37, + a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, + a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, + a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, + a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, + a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, + a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, + a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, + a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, + a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, + a.point_member_first = b.point_member_first, + a.point_second = b.point_second, + a.point_member_second = b.point_member_second, + a.point_third = b.point_third, + a.point_member_third = b.point_member_third + + + merge into ${rangeTableName} a using ( @@ -156,6 +340,104 @@ a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv + + + merge into ${rangeDetailTableName} a + using ( + + select + #{item.pkMember} pk_member, #{item.childNode} child_node, #{item.pkParent} pk_parent, + #{item.stage} stage, #{item.stageStatus} stage_status, #{item.stageDate, jdbcType=TIMESTAMP} stage_date, + #{item.point11, jdbcType=NUMERIC} point_11, #{item.point12, jdbcType=NUMERIC} point_12, + #{item.point21, jdbcType=NUMERIC} point_21, #{item.point22, jdbcType=NUMERIC} point_22, + #{item.point23, jdbcType=NUMERIC} point_23, #{item.point24, jdbcType=NUMERIC} point_24, + #{item.point31, jdbcType=NUMERIC} point_31, #{item.point32, jdbcType=NUMERIC} point_32, + #{item.point33, jdbcType=NUMERIC} point_33, #{item.point34, jdbcType=NUMERIC} point_34, + #{item.point35, jdbcType=NUMERIC} point_35, #{item.point36, jdbcType=NUMERIC} point_36, + #{item.point37, jdbcType=NUMERIC} point_37, #{item.point38, jdbcType=NUMERIC} point_38, + #{item.pointMember11, jdbcType=NUMERIC} point_member_11, #{item.pointMember12, jdbcType=NUMERIC} point_member_12, + #{item.pointMember21, jdbcType=NUMERIC} point_member_21, #{item.pointMember22, jdbcType=NUMERIC} point_member_22, + #{item.pointMember23, jdbcType=NUMERIC} point_member_23, #{item.pointMember24, jdbcType=NUMERIC} point_member_24, + #{item.pointMember31, jdbcType=NUMERIC} point_member_31, #{item.pointMember32, jdbcType=NUMERIC} point_member_32, + #{item.pointMember33, jdbcType=NUMERIC} point_member_33, #{item.pointMember34, jdbcType=NUMERIC} point_member_34, + #{item.pointMember35, jdbcType=NUMERIC} point_member_35, #{item.pointMember36, jdbcType=NUMERIC} point_member_36, + #{item.pointMember37, jdbcType=NUMERIC} point_member_37, #{item.pointMember38, jdbcType=NUMERIC} point_member_38, + #{item.pointType} point_type, #{item.pointGift} point_gift, + #{item.creationTime, jdbcType=TIMESTAMP} creation_time, + #{item.pointFirst, jdbcType=NUMERIC} point_first, #{item.pointMemberFirst, jdbcType=NUMERIC} point_member_first, + #{item.pointSecond, jdbcType=NUMERIC} point_second, #{item.pointMemberSecond, jdbcType=NUMERIC} point_member_second, + #{item.pointThird, jdbcType=NUMERIC} point_third, #{item.pointMemberThird, jdbcType=NUMERIC} point_member_third + from dual + + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node) + when not matched then + insert (pk_member, child_node, pk_parent, + stage, stage_status, stage_date, + point_11, point_12, + point_21, point_22, + point_23, point_24, + point_31, point_32, + point_33, point_34, + point_35, point_36, + point_37, point_38, + point_member_11, point_member_12, + point_member_21, point_member_22, + point_member_23, point_member_24, + point_member_31, point_member_32, + point_member_33, point_member_34, + point_member_35, point_member_36, + point_member_37, point_member_38, + point_type, point_gift, + creation_time, + point_first, point_member_first, + point_second, point_member_second, + point_third, point_member_third) + values (b.pk_member, b.child_node, b.pk_parent, + b.stage, b.stage_status, b.stage_date, + b.point_11, b.point_12, + b.point_21, b.point_22, + b.point_23, b.point_24, + b.point_31, b.point_32, + b.point_33, b.point_34, + b.point_35, b.point_36, + b.point_37, b.point_38, + b.point_member_11, b.point_member_12, + b.point_member_21, b.point_member_22, + b.point_member_23, b.point_member_24, + b.point_member_31, b.point_member_32, + b.point_member_33, b.point_member_34, + b.point_member_35, b.point_member_36, + b.point_member_37, b.point_member_38, + b.point_type, b.point_gift, + b.creation_time, + b.point_first, b.point_member_first, + b.point_second, b.point_member_second, + b.point_third, b.point_member_third) + when matched then + update set + a.stage = b.stage, a.stage_status = b.stage_status, a.stage_date = b.stage_date, + a.point_11 = b.point_11, a.point_12 = b.point_12, + a.point_21 = b.point_21, a.point_22 = b.point_22, + a.point_23 = b.point_23, a.point_24 = b.point_24, + a.point_31 = b.point_31, a.point_32 = b.point_32, + a.point_33 = b.point_33, a.point_34 = b.point_34, + a.point_35 = b.point_35, a.point_36 = b.point_36, + a.point_37 = b.point_37, a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, a.point_member_first = b.point_member_first, + a.point_second = b.point_second, a.point_member_second = b.point_member_second, + a.point_third = b.point_third, a.point_member_third = b.point_member_third + + merge into ${secondRangeTableName} a @@ -321,48 +603,95 @@ rep_consume_new_pv, rep_team_new_amount, rep_team_new_pv, + point_count, bw.awards_value, - bw.awards_name, - bwa.awards_value share_awards_value, - bwa.awards_name share_awards_name + bw.awards_name from ( select * from ${tableName} start with pk_member = #{item} connect by pk_member = prior pk_parent ) a inner join bd_awards bw - on bw.pk_id = a.pk_awards and bw.del_flag = 0 - left join bd_awards bwa - on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 + on bw.pk_id = a.pk_awards left join bd_vertex bv on bv.pk_id = a.pk_vertex + + - select cm.member_code, - cm.member_name, - cm.nick_name, - cm.creation_time, - cm.phone, - bg.grade_name settle_grade_val - from cu_member cm - left join bd_grade bg - on bg.pk_id = cm.pk_settle_grade - where cm.del_flag = 0 - and cm.category = 0 - and cm.pk_parent = #{pkMember} - order by cm.creation_time desc + WITH team_data AS ( + SELECT + connect_by_root pk_id AS root_pk_id, + COUNT(*) OVER (PARTITION BY connect_by_root pk_id) - 1 AS team_count + FROM + cu_member + WHERE + del_flag = 0 + AND category = 0 + START WITH + pk_parent = #{pkMember} + CONNECT BY + PRIOR pk_id = pk_parent + ) + SELECT DISTINCT + cm.member_code, + cm.member_name, + cm.nick_name, + cm.consume_achieve, + cm.creation_time, + cm.phone, + bg.grade_name AS settle_grade_val, + td.team_count + FROM + cu_member cm + LEFT JOIN + bd_grade bg ON bg.pk_id = cm.pk_settle_grade + LEFT JOIN + team_data td ON cm.pk_id = td.root_pk_id + WHERE + cm.del_flag = 0 + AND cm.category = 0 + AND cm.PK_PARENT = #{pkMember} + ORDER BY cm.creation_time desc diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java index a72ee6fc..8baf888e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberExt.java @@ -182,6 +182,10 @@ public class CuMemberExt extends CuMember { * 团队名称 */ private String teamName; + /** + * 团队人数 + */ + private Integer teamCount; /** * 次数 From f88ccb7cb8f83991c237a069024ec3c25027563d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 18 Sep 2025 16:56:54 +0800 Subject: [PATCH 194/362] =?UTF-8?q?##=20=E9=98=B6=E6=AE=B5=E5=A5=96?= =?UTF-8?q?=E9=87=91=E8=AE=A1=E7=AE=97=E5=A4=84=E7=90=86=EF=BC=88=E6=9C=AA?= =?UTF-8?q?=E5=AE=8C=E6=88=90=EF=BC=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CuMemberSettleController.java | 35 ----- .../mapper/CuMemberRetailDetailMapper.java | 10 ++ .../service/ICuMemberRetailDetailService.java | 10 ++ .../impl/CuMemberRetailDetailServiceImpl.java | 30 ++++ .../service/impl/BonusSettleRangeHandle.java | 135 ++++++++++++++---- .../service/impl/BonusSettleServiceImpl.java | 2 +- .../bonus/order/mapper/BonusOrderMapper.java | 3 +- .../order/service/IBonusOrderService.java | 2 +- .../service/impl/BonusOrderServiceImpl.java | 4 +- .../achieve/CuMemberRetailDetailMapper.xml | 12 ++ .../bonus/achieve/CuMemberTreeMapper.xml | 5 +- .../mapper/bonus/order/BonusOrderMapper.xml | 6 + .../member/detail/CuMemberAssessMapper.xml | 7 +- .../core/constant/MagicNumberConstants.java | 10 -- .../common/core/constant/RetailConstants.java | 7 + .../hzs/common/core/enums/EBonusStage.java | 37 +++++ .../common/core/enums/EBonusStageStatus.java | 33 +++++ .../common/core/enums/EBonusStageType.java | 33 +++++ .../com/hzs/common/core/enums/EDelFlag.java | 2 - .../member/achieve/CuMemberRetailDetail.java | 10 +- .../member/achieve/CuMemberRetailRange.java | 6 + .../achieve/ext/CuMemberRetailRangeExt.java | 7 + .../domain/member/bonus/CuMemberBonus.java | 6 +- 23 files changed, 313 insertions(+), 99 deletions(-) create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java index e5fc15aa..0b784727 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java @@ -15,7 +15,6 @@ import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -37,8 +36,6 @@ public class CuMemberSettleController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; @Autowired - private IBonusSettleService iBonusSettleService; - @Autowired private ICuMemberTreeService iCuMemberTreeService; @Autowired private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @@ -48,8 +45,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-table") public AjaxResult initTable(String settleDate) { @@ -59,8 +54,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-period") public AjaxResult initPeriod(String settleDate) { @@ -70,8 +63,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金计算 - 重新结算 - * - * @return AjaxResult */ @GetMapping("/settle-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.INSERT) @@ -86,8 +77,6 @@ public class CuMemberSettleController extends BaseController { /** * 公布奖金 - * - * @return AjaxResult */ @GetMapping("/publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.PUBLISH) @@ -102,8 +91,6 @@ public class CuMemberSettleController extends BaseController { /** * 不公布奖金 - * - * @return AjaxResult */ @GetMapping("/no-publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.NO_PUBLISH) @@ -118,8 +105,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.GRANT) @@ -134,8 +119,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-temp-bonus") public AjaxResult grantTempBonus(Integer pkCountry, String settleDate) { @@ -145,8 +128,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus_all") public AjaxResult grantBonusAll() { @@ -156,8 +137,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金提现 - * - * @return AjaxResult */ @GetMapping("/withdrawal-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.WITHDRAWAL) @@ -170,20 +149,6 @@ public class CuMemberSettleController extends BaseController { return AjaxResult.success(); } - /** - * 秒接结算业绩,仅用于测试 - * - * @return AjaxResult - */ - @GetMapping("/settle-second-bonus") - public AjaxResult settleSecondBonus(String orderCode) { - if (StringUtils.isEmpty(orderCode)) { - return AjaxResult.error(); - } - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(orderCode); - return AjaxResult.success(); - } - /* * 查询奖金计算期数列表 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java index 7f09bf4d..aa6dcff6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -2,10 +2,20 @@ package com.hzs.bonus.achieve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 日结算阶段表 Mapper 接口 */ public interface CuMemberRetailDetailMapper extends BaseMapper { + /** + * 查询明细数据(指定阶段,未完成的) + */ + List listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName, + @Param("tmpIdList") List tmpIdList, + @Param("stage") Integer stage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index d849d643..eb33dead 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -1,11 +1,21 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; + +import java.util.List; +import java.util.Map; /** * 日结算阶段表 服务类 */ public interface ICuMemberRetailDetailService extends IService { + /** + * 根据结算会员获取对应的点位数据 + */ + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, EBonusStage eBonusStage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 952b95c0..92494240 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -3,13 +3,43 @@ package com.hzs.bonus.achieve.service.impl; import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.*; + /** * 日结算阶段表 服务实现类 */ @Service public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + @Autowired + private CuMemberBonusSettle cuMemberBonusSettle; + + @Override + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, EBonusStage eBonusStage) { + List> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); + pkMemberList.forEach(tmpIdList -> { + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); + if (tmpList.size() > 0) { + // 明细数据放到对应的会员数据中 + for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { + CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 阶段一点位列表 + if (null == cuMemberRetailRangeExt.getOneDetailList()) { + cuMemberRetailRangeExt.setOneDetailList(new ArrayList<>()); + } + cuMemberRetailRangeExt.getOneDetailList().add(cuMemberRetailDetail); + } + } + } + }); + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index e6ae9523..698c2f34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,6 +1,7 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; @@ -14,6 +15,7 @@ import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; @@ -30,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.math.BigDecimal; +import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -44,6 +47,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; + @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired private ICuMemberService iCuMemberService; @@ -269,8 +274,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 结算期间日期后一天 Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); - // 新零售订单 - List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null); + // 新零售订单(注册、复购) + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 @@ -290,16 +295,16 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); - // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 会员转map for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); } } + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE); // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -321,7 +326,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 直推收益 -- 来源订单金额,直推拿金额的10% this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); + // TODO 阶段收益 -- 来源订单金额 + this.calculateStageIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, + settleStartDate); // TODO 领导级差收益 -- 来源PV @@ -818,32 +826,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberBonusPushList.add(cuMemberBonusPush); } - /** - * 获取直推、见点收益信息 - */ - CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { - CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() - .pkBonus(cuMemberBonus.getPkId()) - .pkOrder(saOrderExt.getPkId()) - .pkBonusItems(pkBonusItems) - .incomeStatus(cuMemberRetailRange.getIncomeStatus()) - .calType(ECalType.RATIO.getValue()) - .calAchieve(BigDecimal.ZERO) - .calValue(BigDecimal.ZERO) - .pretaxIncome(BigDecimal.ZERO) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .round(-1) - .second(-1) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); - cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusPush; - } - /** * 计算见点收益 -- 商城专区 */ @@ -908,5 +890,98 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } + /** + * 获取直推、见点收益信息 + */ + CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() + .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(saOrderExt.getPkId()) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.RATIO.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) + .pretaxIncome(BigDecimal.ZERO) + .incomeTax(BigDecimal.ZERO) + .realIncome(BigDecimal.ZERO) + .round(-1) + .second(-1) + .incomeRatio(BigDecimal.ZERO) + .incomeDialRatio(BigDecimal.ZERO) + .orderDialRatio(BigDecimal.ZERO) + .build(); + cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusPush; + } + + /** + * 计算阶段收益 -- 精品专区 + */ + private void calculateStageIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate) { + // 订单金额除50取整,为新増点位数量 + int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + if (newPointInt == 0) { + // 当前精品专区订单不足生成点位 + return; + } + + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + // 会员一阶段子点位列表 + List detailList = sourceMember.getOneDetailList(); + if (null == detailList) { + detailList = new ArrayList<>(); + sourceMember.setOneDetailList(detailList); + } + // 当前会员子点位总数 + int pointCount = sourceMember.getPointCount(); + for (int i = 1; i <= newPointInt; i++) { + // 订单生成的新点位 + detailList.add(CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stage(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.NORMAL.getValue()) + .pointGift(0) + .creationTime(settleDate) + .build()); + } + + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + + // 推荐人一阶段子点位列表 + List parentDetailList = targetMember.getOneDetailList(); + if (CollectionUtil.isEmpty(parentDetailList)) { + continue; + } + for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { + if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { + // 推荐人子点位未完成,则进行填充 + this.fillChildNode(cuMemberRetailDetail); + } + } + + + } + } + + /** + * 填充子点位 + */ + private void fillChildNode(CuMemberRetailDetail cuMemberRetailDetail) { + cuMemberRetailDetail.getPointMember11(); + + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index efd75032..9daf6b84 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -110,7 +110,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 查询奖金参数 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 需要处理的订单 - List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode); + List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode, null); if (CollectionUtil.isNotEmpty(retailOrderList)) { // 会员奖金map diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java index dd16fc8c..d464aecf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java @@ -16,6 +16,7 @@ public interface BonusOrderMapper { */ List listRetailSaOrder(@Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); + @Param("orderCode") String orderCode, + @Param("orderTypeList") List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index d0b6d013..ff4d8481 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -13,6 +13,6 @@ public interface IBonusOrderService { * @param startDate 开始日期 * @param endDate 结束日期 */ - List listRetailSaOrder(Date startDate, Date endDate, String orderCode); + List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index 7e0fb9a8..e7c0f546 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -15,8 +15,8 @@ public class BonusOrderServiceImpl implements IBonusOrderService { private BonusOrderMapper bonusOrderMapper; @Override - public List listRetailSaOrder(Date startDate, Date endDate, String orderCode) { - return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode); + public List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList) { + return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode, orderTypeList); } } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index 330b4b37..b1efab5b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -2,5 +2,17 @@ + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 9c164376..99c8eadd 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -292,7 +292,6 @@ create table ${tableName} ( - pk_id NUMBER(20) primary key, pk_member NUMBER(20) not null, child_node NUMBER(8) not null, pk_parent NUMBER(20) not null, @@ -335,10 +334,10 @@ - create index ${tableName}_MEMBER + create unique index PK_${tableName} on ${tableName} ( - PK_MEMBER + PK_MEMBER, CHILD_NODE ) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index e38404e8..808f4e14 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -82,6 +82,12 @@ and so.order_code=#{orderCode} + + and so.order_type in + + #{items} + + and so.pay_time >= #{startDate} and so.pay_time < #{endDate} order by pay_time desc diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml index 5798b973..81b68588 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml @@ -129,11 +129,8 @@ ) - create - unique index - ${tableName} - _ - PK_M + create unique index + ${tableName}_PK_M on ${tableName} ( diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index f7897c21..ccf25238 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -47,16 +47,6 @@ public class MagicNumberConstants { */ public static final Long PK_ADMIN = 100000000L; - /** - * 开始血缘代 - */ - public static final Integer BLOOD_GENERATION_START = 1; - - /** - * 结束血缘代 - */ - public static final Integer BLOOD_GENERATION_END = 10; - /** * 老会员编号位数 */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java index 02c723ee..bd812a63 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RetailConstants.java @@ -7,6 +7,13 @@ import java.math.BigDecimal; */ public class RetailConstants { + /** + * 精品专区50金额为一个子点位,商城专区50PV为一个子点位 + * 精品专区计算点位:金额 / 50,余不做处理 + * 商城专区计算点位:累计业绩 / 50, 剩下的继续累计 + */ + public static final BigDecimal POINT_VAL = new BigDecimal("50"); + /** * 精品专区直推收益订单金额 10%,商城专区见点收益20代订单PV 10% */ diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java new file mode 100644 index 00000000..ae52b1a0 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java @@ -0,0 +1,37 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段奖项枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStage { + + /** + * 一阶段 + */ + ONE(1, "一阶段"), + /** + * 二阶段 + */ + TWO(2, "二阶段"), + /** + * 三阶段 + */ + THREE(3, "三阶段"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java new file mode 100644 index 00000000..2e3d4406 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java @@ -0,0 +1,33 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段状态枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStageStatus { + + /** + * 已完成 + */ + YES(0, "已完成"), + /** + * 未完成 + */ + NO(1, "未完成"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java new file mode 100644 index 00000000..9497814c --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java @@ -0,0 +1,33 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 阶段点位类型枚举 + */ +@AllArgsConstructor +@Getter +public enum EBonusStageType { + + /** + * 普通点位 + */ + NORMAL(0, "普通点位"), + /** + * 赠送点位 + */ + GIFT(1, "赠送点位"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java index c5e155d0..57c02ad0 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EDelFlag.java @@ -6,8 +6,6 @@ import lombok.Getter; /** * 删除标记枚举类 - * - * @author hzs */ @AllArgsConstructor @Getter diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 57431fa7..493e8955 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -10,24 +10,22 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; +import lombok.*; import lombok.experimental.Accessors; /** * 日结算阶段表 */ +@Builder +@AllArgsConstructor +@NoArgsConstructor @Data @Accessors(chain = true) -@KeySequence("CU_MEMBER_RETAIL_DETAIL_SEQ") @TableName("CU_MEMBER_RETAIL_DETAIL") public class CuMemberRetailDetail { private static final long serialVersionUID = 1L; - @TableId("PK_ID") - private Long pkId; - /** * 会员ID */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index c6a189ce..2e5c09ca 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -189,4 +189,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("small_team_pv") private BigDecimal smallTeamPv; + /** + * 子点位总数 + */ + @TableField("point_count") + private Integer pointCount; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 8dc07708..4d90ae3e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -1,10 +1,12 @@ package com.hzs.common.domain.member.achieve.ext; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; +import java.util.List; /** * 新零售极差实体 @@ -134,4 +136,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { private BigDecimal repTeamNewPv; // 秒结 end + /** + * 阶段一点位列表 + */ + private List oneDetailList; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index 61e11ec7..c1f52db2 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -50,7 +50,7 @@ public class CuMemberBonus extends BaseEntity { private Integer pkRate; /** - * 注册直推收益 + * 注册直推收益-康健 */ @TableField("DIRECT_INCOME") private BigDecimal directIncome; @@ -176,7 +176,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal repurCouponSubtotal; /** - * 复购见点收益 + * 复购见点收益-康健 */ @TableField("GLOBAL_POINTS") private BigDecimal globalPoints; @@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal carAwardPoints; /** - * 店铺收益 + * 注册阶段收益-康健 */ @TableField("STORE_INCOME") private BigDecimal storeIncome; From d34b279ce079e79d34fc6e72b3371526ddacc85b Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 18 Sep 2025 17:25:42 +0800 Subject: [PATCH 195/362] =?UTF-8?q?##=20Opt=20-=20=E5=8F=8D=E5=B0=84?= =?UTF-8?q?=E6=8C=89=E9=A1=BA=E5=BA=8F=E8=A7=84=E5=88=99=E5=A1=AB=E5=85=85?= =?UTF-8?q?CuMemberRetailDetail?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 47 +++++++++++++++++-- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 698c2f34..87014d34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,6 +1,10 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; @@ -31,6 +35,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.lang.reflect.Field; +import java.lang.reflect.Method; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -968,7 +974,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { // 推荐人子点位未完成,则进行填充 - this.fillChildNode(cuMemberRetailDetail); +// this.fillChildNode(cuMemberRetailDetail); } } @@ -979,9 +985,42 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 填充子点位 */ - private void fillChildNode(CuMemberRetailDetail cuMemberRetailDetail) { - cuMemberRetailDetail.getPointMember11(); - + private static final List fieldList = Arrays.asList("11", "12", "21", "22", "23", "24", "31", "32", "33", "34", "35", "36", "37", "38"); + private static Map fieldMap = null; + private static final String pointFieldName = "point"; + private static final String pointMemberFieldName = "pointMember"; + private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Long pointMemberValue) { + if(ObjectUtil.isEmpty(fieldMap)){ + initFieldMap(); + } + for (String suffix : fieldList) { + Field pointField = fieldMap.get(pointFieldName + suffix); + Field pointMemberField = fieldMap.get(pointMemberFieldName + suffix); + Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); + if(ObjectUtil.isEmpty(pointFieldValue)){ + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); + return suffix; + } + } + return null; + } + private void initFieldMap(){ + fieldMap = new HashMap<>(); + for (String suffix : fieldList) { + fieldMap.put(pointFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointFieldName + suffix)); + fieldMap.put(pointMemberFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointMemberFieldName + suffix)); + } } +// public static void main(String[] args) { +// BonusSettleRangeHandle test = new BonusSettleRangeHandle(); +// CuMemberRetailDetail cuMemberRetailDetail = new CuMemberRetailDetail(); +// for (int i = 0; i < 14; i++) { +// String suffix = test.fillChildNode(cuMemberRetailDetail, (long) i, (long) (i + 1)); +// System.out.println(suffix); +// System.out.println(JSONUtil.toJsonPrettyStr(cuMemberRetailDetail)); +// } +// } + } From 647be8bb8703e8ca19ca9bd11ecb6a9ec69ce2fc Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 19 Sep 2025 10:50:34 +0800 Subject: [PATCH 196/362] =?UTF-8?q?##=20=E5=89=8D=E7=BC=80=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E4=B8=BAZK=EF=BC=9B=E6=97=A5=E7=BB=93=E3=80=81?= =?UTF-8?q?=E6=97=A5=E7=BB=93=E6=98=8E=E7=BB=86=E8=A1=A8=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 124 ++++++++++------- .../hzs/bonus/constant/BonusConstants.java | 33 +++++ .../bonus/achieve/CuMemberTreeMapper.xml | 80 ++++++----- .../member/base/service/ICuMemberService.java | 10 +- .../service/impl/CuMemberServiceImpl.java | 28 ---- .../common/core/constant/SysConstants.java | 22 +-- .../com/hzs/common/core/enums/ESysName.java | 4 +- .../member/achieve/CuMemberRetailDetail.java | 128 +++++++++++------- 8 files changed, 234 insertions(+), 195 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 87014d34..edcd78c5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -3,17 +3,15 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReflectUtil; -import cn.hutool.json.JSONObject; -import cn.hutool.json.JSONUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; +import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; -import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; @@ -23,20 +21,16 @@ import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.system.config.dto.BonusConfigDTO; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.lang.reflect.Field; -import java.lang.reflect.Method; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -946,7 +940,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { int pointCount = sourceMember.getPointCount(); for (int i = 1; i <= newPointInt; i++) { // 订单生成的新点位 - detailList.add(CuMemberRetailDetail.builder() + CuMemberRetailDetail tmpDetail = CuMemberRetailDetail.builder() .pkMember(sourceMember.getPkMember()) .childNode(pointCount + i) .pkParent(sourceMember.getPkParent()) @@ -955,49 +949,83 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) - .build()); - } + .build(); + detailList.add(tmpDetail); - // 推荐人 - Long pkParent = sourceMember.getPkParent(); - while (true) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); - if (null == targetMember) { - break; - } + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + // 推荐人一阶段子点位列表 + List parentDetailList = targetMember.getOneDetailList(); + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; + } + for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { + if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { + // 推荐人子点位未完成,则进行填充 + String firstNode = this.fillChildNode(cuMemberRetailDetail, tmpDetail.getPkMember(), tmpDetail.getChildNode()); + switch (firstNode) { + case BonusConstants.POINT_11: + break; + case BonusConstants.POINT_12: + break; + case BonusConstants.POINT_21: + break; + case BonusConstants.POINT_22: + break; + case BonusConstants.POINT_23: + break; + case BonusConstants.POINT_24: + break; + case BonusConstants.POINT_31: + break; + case BonusConstants.POINT_32: + break; + case BonusConstants.POINT_33: + break; + case BonusConstants.POINT_34: + break; + case BonusConstants.POINT_35: + break; + case BonusConstants.POINT_36: + break; + case BonusConstants.POINT_37: + break; + case BonusConstants.POINT_38: + // 第一个点位已经全部填满 + cuMemberRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + cuMemberRetailDetail.setStageDate(settleDate); - // 推荐人一阶段子点位列表 - List parentDetailList = targetMember.getOneDetailList(); - if (CollectionUtil.isEmpty(parentDetailList)) { - continue; - } - for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { - if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { - // 推荐人子点位未完成,则进行填充 -// this.fillChildNode(cuMemberRetailDetail); + + // TODO 一阶段全满则需要发放一阶段奖金 + + // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 + } + + } } } - - } } /** * 填充子点位 */ - private static final List fieldList = Arrays.asList("11", "12", "21", "22", "23", "24", "31", "32", "33", "34", "35", "36", "37", "38"); - private static Map fieldMap = null; - private static final String pointFieldName = "point"; - private static final String pointMemberFieldName = "pointMember"; - private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Long pointMemberValue) { - if(ObjectUtil.isEmpty(fieldMap)){ + private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Integer pointMemberValue) { + if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { initFieldMap(); } - for (String suffix : fieldList) { - Field pointField = fieldMap.get(pointFieldName + suffix); - Field pointMemberField = fieldMap.get(pointMemberFieldName + suffix); + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); - if(ObjectUtil.isEmpty(pointFieldValue)){ + if (ObjectUtil.isEmpty(pointFieldValue)) { ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); return suffix; @@ -1005,22 +1033,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } return null; } - private void initFieldMap(){ - fieldMap = new HashMap<>(); - for (String suffix : fieldList) { - fieldMap.put(pointFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointFieldName + suffix)); - fieldMap.put(pointMemberFieldName + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, pointMemberFieldName + suffix)); + + private void initFieldMap() { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); } } -// public static void main(String[] args) { -// BonusSettleRangeHandle test = new BonusSettleRangeHandle(); -// CuMemberRetailDetail cuMemberRetailDetail = new CuMemberRetailDetail(); -// for (int i = 0; i < 14; i++) { -// String suffix = test.fillChildNode(cuMemberRetailDetail, (long) i, (long) (i + 1)); -// System.out.println(suffix); -// System.out.println(JSONUtil.toJsonPrettyStr(cuMemberRetailDetail)); -// } -// } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java new file mode 100644 index 00000000..4a011b90 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -0,0 +1,33 @@ +package com.hzs.bonus.constant; + +import java.lang.reflect.Field; +import java.util.Arrays; +import java.util.List; +import java.util.Map; + +public class BonusConstants { + + public static final String POINT_11 = "11"; + public static final String POINT_12 = "12"; + public static final String POINT_21 = "21"; + public static final String POINT_22 = "22"; + public static final String POINT_23 = "23"; + public static final String POINT_24 = "24"; + public static final String POINT_31 = "31"; + public static final String POINT_32 = "32"; + public static final String POINT_33 = "33"; + public static final String POINT_34 = "34"; + public static final String POINT_35 = "35"; + public static final String POINT_36 = "36"; + public static final String POINT_37 = "37"; + public static final String POINT_38 = "38"; + + public static final List FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, + POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); + + public static final String POINT_FIELD_NAME = "point"; + public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; + + public static Map FIELD_MAP = null; + +} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 99c8eadd..6fca0a36 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -292,43 +292,49 @@ create table ${tableName} ( - pk_member NUMBER(20) not null, - child_node NUMBER(8) not null, - pk_parent NUMBER(20) not null, - stage NUMBER(1) default 1 not null, - stage_status NUMBER(1) default 1 not null, - stage_date DATE, - point_11 NUMBER(20), - point_12 NUMBER(20), - point_21 NUMBER(20), - point_22 NUMBER(20), - point_23 NUMBER(20), - point_24 NUMBER(20), - point_31 NUMBER(20), - point_32 NUMBER(20), - point_33 NUMBER(20), - point_34 NUMBER(20), - point_35 NUMBER(20), - point_36 NUMBER(20), - point_37 NUMBER(20), - point_38 NUMBER(20), - point_member_11 NUMBER(20), - point_member_12 NUMBER(20), - point_member_21 NUMBER(20), - point_member_22 NUMBER(20), - point_member_23 NUMBER(20), - point_member_24 NUMBER(20), - point_member_31 NUMBER(20), - point_member_32 NUMBER(20), - point_member_33 NUMBER(20), - point_member_34 NUMBER(20), - point_member_35 NUMBER(20), - point_member_36 NUMBER(20), - point_member_37 NUMBER(20), - point_member_38 NUMBER(20), - point_type NUMBER(1) default 0 not null, - point_gift NUMBER(1) default 0 not null, - creation_time DATE + pk_member NUMBER(20) not null, + child_node NUMBER(8) not null, + pk_parent NUMBER(20) not null, + stage NUMBER(1) default 1 not null, + stage_status NUMBER(1) default 1 not null, + stage_date DATE, + point_11 NUMBER(8), + point_12 NUMBER(8), + point_21 NUMBER(8), + point_22 NUMBER(8), + point_23 NUMBER(8), + point_24 NUMBER(8), + point_31 NUMBER(8), + point_32 NUMBER(8), + point_33 NUMBER(8), + point_34 NUMBER(8), + point_35 NUMBER(8), + point_36 NUMBER(8), + point_37 NUMBER(8), + point_38 NUMBER(8), + point_member_11 NUMBER(20), + point_member_12 NUMBER(20), + point_member_21 NUMBER(20), + point_member_22 NUMBER(20), + point_member_23 NUMBER(20), + point_member_24 NUMBER(20), + point_member_31 NUMBER(20), + point_member_32 NUMBER(20), + point_member_33 NUMBER(20), + point_member_34 NUMBER(20), + point_member_35 NUMBER(20), + point_member_36 NUMBER(20), + point_member_37 NUMBER(20), + point_member_38 NUMBER(20), + point_type NUMBER(1) default 0 not null, + point_gift NUMBER(1) default 0 not null, + creation_time DATE, + point_first NUMBER(8), + point_member_first NUMBER(20), + point_second NUMBER(8), + point_member_second NUMBER(20), + point_third NUMBER(8), + point_member_third NUMBER(20) ) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index b51f25ed..708e012a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -150,15 +150,7 @@ public interface ICuMemberService extends IService { * @param digit 编号数字位数 * @return */ - String createUserNameByPremix(Integer pkCountry, Integer digit); /** - * 生成会员编号 - * - * @param pkCountry 所属国家 - * @param isHaiFun - * @param digit 编号数字位数 - * @return - */ - String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit); + String createUserNameByPremix(Integer pkCountry, Integer digit); /** * 批量生成会员编号 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index a0b7bf33..fb7913c7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -1541,34 +1541,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return memberCode; } - @Override - public String createUserNameByPremix(Integer pkCountry, Boolean isHaiFun, Integer digit) { - String prefix; - if (isHaiFun) { - prefix = SysConstants.HAI_FUN_PREFIX; - } else { - CountryDTO country = iCountryServiceApi.getCountry(pkCountry).getData(); - prefix = country.getCode(); - } - if (StringUtils.isEmpty(prefix)) { - return null; - } - // 生成loginName - String memberCode = this.createMemberCode(prefix, digit); - - CuMember cuMemberByKey = getMember(memberCode); - if (cuMemberByKey != null && cuMemberByKey.getPkId() > 0) { - // 用户名已经存在,则继续尝试 - return this.createUserNameByPremix(pkCountry, isHaiFun, digit); - } else { - // 验证空单注册里面是否存在编号 - List cuMemberEmptyDetails = iCuMemberEmptyCodeService.queryCuMemberEmptyCode(memberCode); - if (CollectionUtil.isNotEmpty(cuMemberEmptyDetails)) { - return this.createUserNameByPremix(pkCountry, isHaiFun, digit); - } - } - return memberCode; - } /** * 创建会员编号 * diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java index 86276117..909b30a8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/SysConstants.java @@ -1,6 +1,5 @@ package com.hzs.common.core.constant; -import java.math.BigDecimal; import java.util.Collections; import java.util.List; @@ -9,15 +8,10 @@ import java.util.List; */ public class SysConstants { - - /** - * 嗨粉前缀 - */ - public static final String HAI_FUN_PREFIX = "HF"; /** * 众康系统前缀 */ - public static final String RETAIL_PREFIX = "KG"; + public static final String RETAIL_PREFIX = "ZK"; /** * 顶点 */ @@ -36,21 +30,11 @@ public class SysConstants { /** * 特殊处理编号(对外开放使用,主要用于支付接入审核) */ - public static final String SPECIAL_CODE = "KG68880628"; - - /** - * 血缘累计业绩30万 - */ - public static final BigDecimal TOTAL_AREA_PV = new BigDecimal("300000"); - - /** - * 小区业绩累计10万 - */ - public static final BigDecimal SMALL_AREA_PV = new BigDecimal("100000"); + public static final String SPECIAL_CODE = "ZK68880628"; /** * 开放使用会员编号(用于支付登录查看数据) */ - public static final List CONTROL_MEMBER_LIST = Collections.singletonList("KG66886688"); + public static final List CONTROL_MEMBER_LIST = Collections.singletonList("ZK68880628"); } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 2e620b5b..85c3d8a1 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -13,9 +13,9 @@ public enum ESysName { MANAGE("manage", "后台管理"), /** - * 康健系统 + * 众康系统 */ - KG("kg", "康健系统"), + ZK("zk", "众康系统"), ; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index 493e8955..f705282d 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -1,15 +1,10 @@ package com.hzs.common.domain.member.achieve; -import com.baomidou.mybatisplus.annotation.KeySequence; -import com.baomidou.mybatisplus.annotation.TableName; - import java.util.Date; -import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.web.domain.BaseEntity; import lombok.*; import lombok.experimental.Accessors; @@ -63,169 +58,169 @@ public class CuMemberRetailDetail { private Date stageDate; /** - * 点位1-1 + * 点位1-1会员子节点 */ @TableField("POINT_11") - private Long point11; + private Integer point11; /** - * 点位1-2 + * 点位1-2会员子节点 */ @TableField("POINT_12") - private Long point12; + private Integer point12; /** - * 点位2-1 + * 点位2-1会员子节点 */ @TableField("POINT_21") - private Long point21; + private Integer point21; /** - * 点位2-2 + * 点位2-2会员子节点 */ @TableField("POINT_22") - private Long point22; + private Integer point22; /** - * 点位2-3 + * 点位2-3会员子节点 */ @TableField("POINT_23") - private Long point23; + private Integer point23; /** - * 点位2-4 + * 点位2-4会员子节点 */ @TableField("POINT_24") - private Long point24; + private Integer point24; /** - * 点位3-1 + * 点位3-1会员子节点 */ @TableField("POINT_31") - private Long point31; + private Integer point31; /** - * 点位3-2 + * 点位3-2会员子节点 */ @TableField("POINT_32") - private Long point32; + private Integer point32; /** - * 点位3-3 + * 点位3-3会员子节点 */ @TableField("POINT_33") - private Long point33; + private Integer point33; /** - * 点位3-4 + * 点位3-4会员子节点 */ @TableField("POINT_34") - private Long point34; + private Integer point34; /** - * 点位3-5 + * 点位3-5会员子节点 */ @TableField("POINT_35") - private Long point35; + private Integer point35; /** - * 点位3-6 + * 点位3-6会员子节点 */ @TableField("POINT_36") - private Long point36; + private Integer point36; /** - * 点位3-7 + * 点位3-7会员子节点 */ @TableField("POINT_37") - private Long point37; + private Integer point37; /** - * 点位3-8 + * 点位3-8会员子节点 */ @TableField("POINT_38") - private Long point38; + private Integer point38; /** - * 点位1-1会员 + * 点位1-1会员ID */ @TableField("POINT_MEMBER_11") private Long pointMember11; /** - * 点位1-2会员 + * 点位1-2会员ID */ @TableField("POINT_MEMBER_12") private Long pointMember12; /** - * 点位2-1会员 + * 点位2-1会员ID */ @TableField("POINT_MEMBER_21") private Long pointMember21; /** - * 点位2-2会员 + * 点位2-2会员ID */ @TableField("POINT_MEMBER_22") private Long pointMember22; /** - * 点位2-3会员 + * 点位2-3会员ID */ @TableField("POINT_MEMBER_23") private Long pointMember23; /** - * 点位2-4会员 + * 点位2-4会员ID */ @TableField("POINT_MEMBER_24") private Long pointMember24; /** - * 点位3-1会员 + * 点位3-1会员ID */ @TableField("POINT_MEMBER_31") private Long pointMember31; /** - * 点位3-2会员 + * 点位3-2会员ID */ @TableField("POINT_MEMBER_32") private Long pointMember32; /** - * 点位3-3会员 + * 点位3-3会员ID */ @TableField("POINT_MEMBER_33") private Long pointMember33; /** - * 点位3-4会员 + * 点位3-4会员ID */ @TableField("POINT_MEMBER_34") private Long pointMember34; /** - * 点位3-5会员 + * 点位3-5会员ID */ @TableField("POINT_MEMBER_35") private Long pointMember35; /** - * 点位3-6会员 + * 点位3-6会员ID */ @TableField("POINT_MEMBER_36") private Long pointMember36; /** - * 点位3-7会员 + * 点位3-7会员ID */ @TableField("POINT_MEMBER_37") private Long pointMember37; /** - * 点位3-8会员 + * 点位3-8会员ID */ @TableField("POINT_MEMBER_38") private Long pointMember38; @@ -249,4 +244,41 @@ public class CuMemberRetailDetail { @TableField("CREATION_TIME") private Date creationTime; + /** + * 第一层会员子节点 + */ + @TableField("POINT_FIRST") + private Integer pointFirst; + + /** + * 第一层会员ID + */ + @TableField("POINT_MEMBER_FIRST") + private Long pointMemberFirst; + + /** + * 第二层会员子节点 + */ + @TableField("POINT_SECOND") + private Integer pointSecond; + + /** + * 第二层会员ID + */ + @TableField("POINT_MEMBER_SECOND") + private Long pointMemberSecond; + + /** + * 第三层会员子节点 + */ + @TableField("POINT_THIRD") + private Integer pointThird; + + /** + * 第三层会员ID + */ + @TableField("POINT_MEMBER_THIRD") + private Long pointMemberThird; + + } From 3b89fd6ca1504b7c993a3fc6a589826a24c1ad19 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 19 Sep 2025 18:14:50 +0800 Subject: [PATCH 197/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E7=82=B9=E4=BD=8D=E5=A1=AB=E5=85=85=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 21 +- .../service/ICuMemberRetailDetailService.java | 6 + .../service/ICuMemberRetailRangeService.java | 17 +- .../service/impl/CuMemberBonusSettle.java | 12 +- .../impl/CuMemberRetailDetailServiceImpl.java | 32 +- .../impl/CuMemberRetailRangeServiceImpl.java | 24 +- .../mapper/CuMemberBonusStageMapper.java | 11 + .../service/ICuMemberBonusStageService.java | 41 ++ .../service/impl/BonusSettleRangeHandle.java | 437 +++++++++--------- .../impl/CuMemberBonusStageServiceImpl.java | 415 +++++++++++++++++ .../achieve/CuMemberRetailRangeMapper.xml | 395 ++++++++++++++-- .../bonus/bonus/CuMemberBonusStageMapper.xml | 32 ++ .../achieve/ext/CuMemberRetailRangeExt.java | 11 +- .../member/bonus/CuMemberBonusStage.java | 129 ++++++ 14 files changed, 1297 insertions(+), 286 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java create mode 100644 bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index a5ae5617..d3b1e4c7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -29,6 +29,12 @@ public interface CuMemberRetailRangeMapper extends BaseMapper queryCuMemberRetailRangeParent(@Param("tableName") String tableName, @Param("saOrderExtList") List saOrderExtList); + /** + * 根据会员ID查询会员数据 + */ + List listCuMemberRetailRange(@Param("tableName") String tableName, @Param("pkMemberList") List pkMemberList); + /** * 推荐推荐人查询推荐人下的所有部门, 该订单日期之前的算他的网体 */ @@ -80,13 +91,19 @@ public interface CuMemberRetailRangeMapper extends BaseMapper cuMemberRangeExtList); /** - * 批量更新网体 + * 更新会员日结数据 */ void mergeCuMemberRetailRangeExt(@Param("rangeTableName") String rangeTableName, @Param("cuMemberRangeExtList") List cuMemberRangeExtList); + /** + * 批量会员日结明细数据 + */ + void mergeCuMemberRetailDetail(@Param("rangeDetailTableName") String rangeDetailTableName, @Param("cuMemberDetailList") List cuMemberDetailList); + /** * 向上查找所有parentID + * * @param pkMember * @return */ @@ -95,6 +112,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberRangeExtMap, EBonusStage eBonusStage); + /** + * 指定会员获取对应的点位数据 + */ + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 83e54bc3..8b805aa7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -21,7 +21,12 @@ public interface ICuMemberRetailRangeService extends IService queryCuMemberSecondRangeExtByParent(String rangeTableName, String secondTableName, Long pkMember); /** - * 更新会员树的累计业绩 - * - * @param settleTableName 结算日期 - * @param cuMemberTreeMap 树 + * 更新会员日结数据 */ void updateCuMemberRetailRange(String settleTableName, Map cuMemberTreeMap); + /** + * 更新会员日结明细数据 + */ + void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap); + /** * 更新极差秒接表,用昨天的结算表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java index 3d05e281..02a1530b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java @@ -3,10 +3,7 @@ package com.hzs.bonus.achieve.service.impl; import com.hzs.common.core.constant.MagicNumberConstants; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Set; +import java.util.*; /** * 奖金计算工具类 @@ -39,4 +36,11 @@ public class CuMemberBonusSettle { List oriList = Arrays.asList(baseEntityList.toArray()); return handleCutList(oriList, batchNum); } + + public List> handleCutList(Collection baseEntityList, Integer... batchNum) { + List oriList = Arrays.asList(baseEntityList.toArray()); + return handleCutList(oriList, batchNum); + } + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 92494240..46291351 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.bonus.achieve.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -25,21 +26,42 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, EBonusStage eBonusStage) { List> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); pkMemberList.forEach(tmpIdList -> { + // 查询明细数据(指定阶段,未完成的) List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); - if (tmpList.size() > 0) { + if (CollectionUtil.isNotEmpty(tmpList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 阶段一点位列表 - if (null == cuMemberRetailRangeExt.getOneDetailList()) { - cuMemberRetailRangeExt.setOneDetailList(new ArrayList<>()); + // 阶段一点位列表(使用有序map,为了后续业务处理方便) + if (null == cuMemberRetailRangeExt.getOneDetailMap()) { + cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); } - cuMemberRetailRangeExt.getOneDetailList().add(cuMemberRetailDetail); + cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } } }); } + @Override + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { + // 查询明细数据(指定阶段,未完成的) + List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue()); + if (CollectionUtil.isNotEmpty(tmpDetailList)) { + // 明细数据放到对应的会员数据中 + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { + CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 阶段一点位列表(使用有序map,为了后续业务处理方便) + if (null == cuMemberRetailRangeExt.getOneDetailMap()) { + cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); + } + cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } + } + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 811c89f1..6254eb3c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -1,10 +1,12 @@ package com.hzs.bonus.achieve.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EOrderType; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; @@ -27,7 +29,7 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl queryCuMemberRetailRangeParent(String tableName, List saOrderExtList) { List memberRetailRangeExtList = new ArrayList<>(); @@ -82,6 +89,21 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberRetailRangeExt(settleTableName, list)); } + @Override + public void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap) { + Collection retailDetailColl = new ArrayList<>(); + memberRangeExtMap.forEach((key, value) -> { + if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { + retailDetailColl.addAll(value.getOneDetailMap().values()); + } + }); + List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); + if (CollectionUtil.isNotEmpty(list)) { + list.forEach(tmpList -> + baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList)); + } + } + @Override public void mergeMemberSecondRetailRangeByRange(String rangeTableName, String secondRangeTableName, Long pkMember) { // 当前网体更新极差秒接表(血缘伞上) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java new file mode 100644 index 00000000..cda6f8d0 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java @@ -0,0 +1,11 @@ +package com.hzs.bonus.bonus.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; + +/** + * 会员奖金-阶段收益明细表 Mapper 接口 + */ +public interface CuMemberBonusStageMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java new file mode 100644 index 00000000..9324c81a --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -0,0 +1,41 @@ +package com.hzs.bonus.bonus.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; + +import java.util.Map; + +/** + * 会员奖金-阶段收益明细表 服务类 + */ +public interface ICuMemberBonusStageService extends IService { + + /** + * 填充会员点位 + */ + String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); + + /** + * 处理新点位是推荐第一层 + */ + void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + + /** + * 处理新点位是推荐第二层 + */ + void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + + /** + * 处理新点位是推荐第三层 + */ + void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode); + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index edcd78c5..4abdb337 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; @@ -44,10 +45,12 @@ import java.util.stream.Collectors; @Component public class BonusSettleRangeHandle extends BonusSettleHandle { + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired - private ICuMemberRetailDetailService iCuMemberRetailDetailService; + private ICuMemberBonusStageService iCuMemberBonusStageService; @Autowired private ICuMemberAwardsService iCuMemberAwardsService; @Autowired @@ -289,8 +292,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // TODO 回退奖衔,将奖衔回退到结算前状态 iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName); - // 更新网体 - iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算网体数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算明细数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeDetailByYesterday(rangeDetailTableName, yesterdayRangeDetailTableName); if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 @@ -313,8 +318,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 精品直推收益、复购见点收益 + // 直推收益、见点收益 List cuMemberBonusPushList = new ArrayList<>(); + // 阶段收益 + List cuMemberBonusStageList = new ArrayList<>(); // 复购级差收益 List cuMemberBonusRangeList = new ArrayList<>(); // 会员奖金明细 @@ -328,8 +335,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单金额 - this.calculateStageIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, - settleStartDate); + this.calculateStageIncome(cuMemberBonusStageList, memberRangeExtMap, saOrderExt, + settleStartDate, rangeTableName, rangeDetailTableName); // TODO 领导级差收益 -- 来源PV @@ -359,8 +366,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新会员表奖衔数据 iCuMemberService.updateCuMemberRetailRangeByPeriod(period); } - // 更新网体 + // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); + // 更新日结明细数据 + iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } } @@ -428,85 +437,85 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } - // 校验大小区会员数据 - List cuMemberRangeExtList = null; - // 校验累计小部门会员数据 - List cuMemberRetailRangeExtList = null; - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 再验证小区,计算小区业绩(拉取直推会员数据) - if (null == cuMemberRangeExtList) { - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - if (null == cuMemberRetailRangeExtList) { - // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = cuMemberRangeExtList; - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } +// // 校验大小区会员数据 +// List cuMemberRangeExtList = null; +// // 校验累计小部门会员数据 +// List cuMemberRetailRangeExtList = null; +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// // 先验证累计业绩 +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { +// // 再验证小区,计算小区业绩(拉取直推会员数据) +// if (null == cuMemberRangeExtList) { +// if (null != secondRangeTableName) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); +// } +// } +// // 本人月消费业绩(默认为大区) +// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 +// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 月累计业绩 > 大区业绩,则月累计就成为大区了 +// consumeBigPv = consumePv; +// } +// } +// +// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); +// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { +// // 小区业绩 >= 小区考核业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证是否有多个区满足业绩 +// if (null == cuMemberRetailRangeExtList) { +// // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 +// if (null != secondRangeTableName) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = cuMemberRangeExtList; +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); +// } +// } +// +// int enoughNum = 0; +// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { +// enoughNum += 1; +// } +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { +// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 +// enoughNum += 1; +// } +// } +// if (bdAwards.getPlaceDeptNum() > enoughNum) { +// break; +// } +// } +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); +// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); +// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); +// continue; +// } +// } +// } +// break; +// } } /** @@ -579,79 +588,79 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 验证小区,计算小区业绩(拉取直推会员数据) - List cuMemberRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - List cuMemberRetailRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); - cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// // 先验证累计业绩 +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { +// // 验证小区,计算小区业绩(拉取直推会员数据) +// List cuMemberRangeExtList; +// if (secondRangeTableName != null) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); +// } +// // 本人月消费业绩(默认为大区) +// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 +// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 月累计业绩 > 大区业绩,则月累计就成为大区了 +// consumeBigPv = consumePv; +// } +// } +// +// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); +// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { +// // 小区业绩 >= 小区考核业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证是否有多个区满足业绩 +// List cuMemberRetailRangeExtList; +// if (secondRangeTableName != null) { +// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); +// } else { +// // 昨日结算表,查询订单会员直推数据 +// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); +// } +// +// int enoughNum = 0; +// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { +// enoughNum += 1; +// } +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { +// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 +// enoughNum += 1; +// } +// } +// if (bdAwards.getPlaceDeptNum() > enoughNum) { +// break; +// } +// } +// CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); +// cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); +// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); +// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); +// continue; +// } +// } +// } +// break; +// } } @@ -919,8 +928,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 计算阶段收益 -- 精品专区 */ - private void calculateStageIncome(List cuMemberBonusPushList, Map memberRangeExtMap, SaOrderExt saOrderExt, - Date settleDate) { + private void calculateStageIncome(List cuMemberBonusStageList, Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName) { // 订单金额除50取整,为新増点位数量 int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); if (newPointInt == 0) { @@ -931,26 +940,26 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 订单会员 CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); // 会员一阶段子点位列表 - List detailList = sourceMember.getOneDetailList(); + LinkedHashMap detailList = sourceMember.getOneDetailMap(); if (null == detailList) { - detailList = new ArrayList<>(); - sourceMember.setOneDetailList(detailList); + detailList = new LinkedHashMap<>(); + sourceMember.setOneDetailMap(detailList); } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); for (int i = 1; i <= newPointInt; i++) { - // 订单生成的新点位 - CuMemberRetailDetail tmpDetail = CuMemberRetailDetail.builder() + // 订单会员生成的新点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() .pkMember(sourceMember.getPkMember()) .childNode(pointCount + i) .pkParent(sourceMember.getPkParent()) .stage(EBonusStage.ONE.getValue()) - .stage(EBonusStageStatus.NO.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) .build(); - detailList.add(tmpDetail); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); // 推荐人 Long pkParent = sourceMember.getPkParent(); @@ -960,87 +969,57 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 没有推荐人了,则直接结束 break; } + pkParent = targetMember.getPkParent(); + // 推荐人一阶段子点位列表 - List parentDetailList = targetMember.getOneDetailList(); + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); if (CollectionUtil.isEmpty(parentDetailList)) { // 推荐人没有未完成点位,继续往上找 continue; } - for (CuMemberRetailDetail cuMemberRetailDetail : parentDetailList) { - if (EBonusStageStatus.NO.getValue() == cuMemberRetailDetail.getStageStatus()) { - // 推荐人子点位未完成,则进行填充 - String firstNode = this.fillChildNode(cuMemberRetailDetail, tmpDetail.getPkMember(), tmpDetail.getChildNode()); - switch (firstNode) { + parentDetailList.forEach((key, parentRetailDetail) -> { + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + String newNode = iCuMemberBonusStageService.fillChildNode(parentRetailDetail, newRetailDetail); + if (null == newNode) { + return; + } + switch (newNode) { case BonusConstants.POINT_11: - break; case BonusConstants.POINT_12: + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); break; case BonusConstants.POINT_21: - break; case BonusConstants.POINT_22: - break; case BonusConstants.POINT_23: - break; case BonusConstants.POINT_24: - break; - case BonusConstants.POINT_31: - break; - case BonusConstants.POINT_32: - break; - case BonusConstants.POINT_33: - break; - case BonusConstants.POINT_34: - break; - case BonusConstants.POINT_35: - break; - case BonusConstants.POINT_36: - break; - case BonusConstants.POINT_37: + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); break; case BonusConstants.POINT_38: - // 第一个点位已经全部填满 - cuMemberRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - cuMemberRetailDetail.setStageDate(settleDate); - - + // 第一个点位已经全部填满,更新完成状态和时间 + parentRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + parentRetailDetail.setStageDate(settleDate); // TODO 一阶段全满则需要发放一阶段奖金 - // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, newNode); } - } - } + }); } } } - /** - * 填充子点位 - */ - private String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, Long pointValue, Integer pointMemberValue) { - if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { - initFieldMap(); - } - for (String suffix : BonusConstants.FIELD_LIST) { - Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); - Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); - Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); - if (ObjectUtil.isEmpty(pointFieldValue)) { - ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, pointValue); - ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, pointMemberValue); - return suffix; - } - } - return null; - } - - private void initFieldMap() { - BonusConstants.FIELD_MAP = new HashMap<>(); - for (String suffix : BonusConstants.FIELD_LIST) { - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); - } - } - - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java new file mode 100644 index 00000000..cc86523b --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -0,0 +1,415 @@ +package com.hzs.bonus.bonus.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; +import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; +import com.hzs.bonus.constant.BonusConstants; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 会员奖金-阶段收益明细表 服务实现类 + */ +@Service +public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { + + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; + + @Resource + private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + + private void initFieldMap() { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + } + } + + @Override + public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { + if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { + initFieldMap(); + } + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); + if (ObjectUtil.isEmpty(pointFieldValue)) { + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, newRetailDetail.getChildNode()); + return suffix; + } + } + return null; + } + + /** + * 向上填充子点位 + */ + public void fillUpTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newParentRetailDetail, + CuMemberRetailDetail newRetailDetail, String node) { + if (null == targetRetailDetail) { + return; + } + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + if (ReflectUtil.getFieldValue(targetRetailDetail, pointMemberField).equals(newParentRetailDetail.getPkMember()) + && ReflectUtil.getFieldValue(targetRetailDetail, pointField).equals(newParentRetailDetail.getChildNode())) { + // 中间点位在目标点位的位置,根据位置获取新点位填充的位置 + switch (suffix) { + case BonusConstants.POINT_11: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_21, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_22, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_21.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_23.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_24.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_12: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_23, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_24, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_21.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_23.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_24.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_21: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_31, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_32, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_22: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_33, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_34, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_23: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_35, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_36, newRetailDetail.getChildNode()); + } + break; + case BonusConstants.POINT_24: + if (BonusConstants.POINT_11.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_37, newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_12.equals(node)) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + BonusConstants.POINT_38, newRetailDetail.getChildNode()); + } + break; + } + break; + } + } + } + + /** + * 向下填充子点位 + */ + public void fillDownTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newRetailDetail, + String node, Integer level) { + if (null == targetRetailDetail) { + return; + } + if (level.equals(1)) { + if (BonusConstants.POINT_21.equals(node) + || BonusConstants.POINT_23.equals(node) + || BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_35.equals(node) + || BonusConstants.POINT_37.equals(node)) { + targetRetailDetail.setPointMember11(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint11(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_22.equals(node) + || BonusConstants.POINT_24.equals(node) + || BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_36.equals(node) + || BonusConstants.POINT_38.equals(node)) { + targetRetailDetail.setPointMember12(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint12(newRetailDetail.getChildNode()); + } + } else if (level.equals(2)) { + if (BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_35.equals(node)) { + targetRetailDetail.setPointMember21(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint21(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_36.equals(node)) { + targetRetailDetail.setPointMember22(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint22(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_37.equals(node)) { + targetRetailDetail.setPointMember23(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint23(newRetailDetail.getChildNode()); + } else if (BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_38.equals(node)) { + targetRetailDetail.setPointMember24(newRetailDetail.getPkMember()); + targetRetailDetail.setPoint24(newRetailDetail.getChildNode()); + } + } + } + + @Override + public void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第一层 + newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二、三层结算数据 + CuMemberRetailRangeExt memberFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberFirst && null != newParentRetailDetail.getPointMemberFirst()) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + CuMemberRetailRangeExt memberSecond = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null == memberSecond && null != newParentRetailDetail.getPointMemberSecond()) { + queryMemberList.add(newParentRetailDetail.getPointMemberSecond()); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第二层 + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointSecond(newParentRetailDetail.getPointFirst()); + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + + + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberSecond()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointSecond()); + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointSecond()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + } + + @Override + public void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第二层 + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第三层结算数据 + CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberUpFirst) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_21: + case BonusConstants.POINT_22: + downFirstMember = newParentRetailDetail.getPointMember11(); + downFirstPoint = newParentRetailDetail.getPoint11(); + break; + case BonusConstants.POINT_23: + case BonusConstants.POINT_24: + downFirstMember = newParentRetailDetail.getPointMember12(); + downFirstPoint = newParentRetailDetail.getPoint12(); + break; + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointFirst()); + CuMemberRetailRangeExt thirdMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != thirdMemberRetail) { + CuMemberRetailDetail memberDetail = thirdMemberRetail.getOneDetailMap().get(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode); + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(memberDetail.getPkMember()); + newRetailDetail.setPointFirst(memberDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1); + } + } + } + + @Override + public void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode) { + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointThird(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二层结算数据 + Long downSecondMember = null; + Integer downSecondPoint = null; + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + downSecondMember = newParentRetailDetail.getPointMember11(); + downSecondPoint = newParentRetailDetail.getPoint11(); + if (BonusConstants.POINT_31.equals(newNode) + || BonusConstants.POINT_32.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember21(); + downFirstPoint = newParentRetailDetail.getPoint21(); + } else { + downFirstMember = newParentRetailDetail.getPointMember22(); + downFirstPoint = newParentRetailDetail.getPoint22(); + } + break; + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + downSecondMember = newParentRetailDetail.getPointMember12(); + downSecondPoint = newParentRetailDetail.getPoint12(); + if (BonusConstants.POINT_35.equals(newNode) + || BonusConstants.POINT_36.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember23(); + downFirstPoint = newParentRetailDetail.getPoint23(); + } else { + downFirstMember = newParentRetailDetail.getPointMember24(); + downFirstPoint = newParentRetailDetail.getPoint24(); + } + break; + } + CuMemberRetailRangeExt memberDownSecond = memberRangeExtMap.get(downSecondMember); + if (null == memberDownSecond) { + queryMemberList.add(downSecondMember); + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + } + } + + // 新点位的上第二层 + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(downSecondMember); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = secondMemberRetail.getOneDetailMap().get(downSecondPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 2); + } + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = firstMemberRetail.getOneDetailMap().get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1); + } + } + } +} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 1d3ef1a3..610ce41a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -50,11 +50,10 @@ + - - @@ -125,6 +124,191 @@ + + + merge into ${detailTableName} a + using ( + select x.pk_member, + x.child_node, + cm.pk_parent, + x.stage, + x.stage_status, + x.stage_date, + x.point_11, + x.point_12, + x.point_21, + x.point_22, + x.point_23, + x.point_24, + x.point_31, + x.point_32, + x.point_33, + x.point_34, + x.point_35, + x.point_36, + x.point_37, + x.point_38, + x.point_member_11, + x.point_member_12, + x.point_member_21, + x.point_member_22, + x.point_member_23, + x.point_member_24, + x.point_member_31, + x.point_member_32, + x.point_member_33, + x.point_member_34, + x.point_member_35, + x.point_member_36, + x.point_member_37, + x.point_member_38, + x.point_type, + x.point_gift, + x.creation_time, + x.point_first, + x.point_member_first, + x.point_second, + x.point_member_second, + x.point_third, + x.point_member_third + from ${yesterdayDetailTableName} x + left join cu_member cm + on cm.pk_id = x.pk_member + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node) + when not matched then + insert (pk_member, + child_node, + pk_parent, + stage, + stage_status, + stage_date, + point_11, + point_12, + point_21, + point_22, + point_23, + point_24, + point_31, + point_32, + point_33, + point_34, + point_35, + point_36, + point_37, + point_38, + point_member_11, + point_member_12, + point_member_21, + point_member_22, + point_member_23, + point_member_24, + point_member_31, + point_member_32, + point_member_33, + point_member_34, + point_member_35, + point_member_36, + point_member_37, + point_member_38, + point_type, + point_gift, + creation_time, + point_first, + point_member_first, + point_second, + point_member_second, + point_third, + point_member_third) + values (b.pk_member, + b.child_node, + b.pk_parent, + b.stage, + b.stage_status, + b.stage_date, + b.point_11, + b.point_12, + b.point_21, + b.point_22, + b.point_23, + b.point_24, + b.point_31, + b.point_32, + b.point_33, + b.point_34, + b.point_35, + b.point_36, + b.point_37, + b.point_38, + b.point_member_11, + b.point_member_12, + b.point_member_21, + b.point_member_22, + b.point_member_23, + b.point_member_24, + b.point_member_31, + b.point_member_32, + b.point_member_33, + b.point_member_34, + b.point_member_35, + b.point_member_36, + b.point_member_37, + b.point_member_38, + b.point_type, + b.point_gift, + b.creation_time, + b.point_first, + b.point_member_first, + b.point_second, + b.point_member_second, + b.point_third, + b.point_member_third) + when matched then + update set + a.pk_parent = b.pk_parent, + a.stage = b.stage, + a.stage_status = b.stage_status, + a.stage_date = b.stage_date, + a.point_11 = b.point_11, + a.point_12 = b.point_12, + a.point_21 = b.point_21, + a.point_22 = b.point_22, + a.point_23 = b.point_23, + a.point_24 = b.point_24, + a.point_31 = b.point_31, + a.point_32 = b.point_32, + a.point_33 = b.point_33, + a.point_34 = b.point_34, + a.point_35 = b.point_35, + a.point_36 = b.point_36, + a.point_37 = b.point_37, + a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, + a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, + a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, + a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, + a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, + a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, + a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, + a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, + a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, + a.point_member_first = b.point_member_first, + a.point_second = b.point_second, + a.point_member_second = b.point_member_second, + a.point_third = b.point_third, + a.point_member_third = b.point_member_third + + + merge into ${rangeTableName} a using ( @@ -156,6 +340,104 @@ a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv + + + merge into ${rangeDetailTableName} a + using ( + + select + #{item.pkMember} pk_member, #{item.childNode} child_node, #{item.pkParent} pk_parent, + #{item.stage} stage, #{item.stageStatus} stage_status, #{item.stageDate, jdbcType=TIMESTAMP} stage_date, + #{item.point11, jdbcType=NUMERIC} point_11, #{item.point12, jdbcType=NUMERIC} point_12, + #{item.point21, jdbcType=NUMERIC} point_21, #{item.point22, jdbcType=NUMERIC} point_22, + #{item.point23, jdbcType=NUMERIC} point_23, #{item.point24, jdbcType=NUMERIC} point_24, + #{item.point31, jdbcType=NUMERIC} point_31, #{item.point32, jdbcType=NUMERIC} point_32, + #{item.point33, jdbcType=NUMERIC} point_33, #{item.point34, jdbcType=NUMERIC} point_34, + #{item.point35, jdbcType=NUMERIC} point_35, #{item.point36, jdbcType=NUMERIC} point_36, + #{item.point37, jdbcType=NUMERIC} point_37, #{item.point38, jdbcType=NUMERIC} point_38, + #{item.pointMember11, jdbcType=NUMERIC} point_member_11, #{item.pointMember12, jdbcType=NUMERIC} point_member_12, + #{item.pointMember21, jdbcType=NUMERIC} point_member_21, #{item.pointMember22, jdbcType=NUMERIC} point_member_22, + #{item.pointMember23, jdbcType=NUMERIC} point_member_23, #{item.pointMember24, jdbcType=NUMERIC} point_member_24, + #{item.pointMember31, jdbcType=NUMERIC} point_member_31, #{item.pointMember32, jdbcType=NUMERIC} point_member_32, + #{item.pointMember33, jdbcType=NUMERIC} point_member_33, #{item.pointMember34, jdbcType=NUMERIC} point_member_34, + #{item.pointMember35, jdbcType=NUMERIC} point_member_35, #{item.pointMember36, jdbcType=NUMERIC} point_member_36, + #{item.pointMember37, jdbcType=NUMERIC} point_member_37, #{item.pointMember38, jdbcType=NUMERIC} point_member_38, + #{item.pointType} point_type, #{item.pointGift} point_gift, + #{item.creationTime, jdbcType=TIMESTAMP} creation_time, + #{item.pointFirst, jdbcType=NUMERIC} point_first, #{item.pointMemberFirst, jdbcType=NUMERIC} point_member_first, + #{item.pointSecond, jdbcType=NUMERIC} point_second, #{item.pointMemberSecond, jdbcType=NUMERIC} point_member_second, + #{item.pointThird, jdbcType=NUMERIC} point_third, #{item.pointMemberThird, jdbcType=NUMERIC} point_member_third + from dual + + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node) + when not matched then + insert (pk_member, child_node, pk_parent, + stage, stage_status, stage_date, + point_11, point_12, + point_21, point_22, + point_23, point_24, + point_31, point_32, + point_33, point_34, + point_35, point_36, + point_37, point_38, + point_member_11, point_member_12, + point_member_21, point_member_22, + point_member_23, point_member_24, + point_member_31, point_member_32, + point_member_33, point_member_34, + point_member_35, point_member_36, + point_member_37, point_member_38, + point_type, point_gift, + creation_time, + point_first, point_member_first, + point_second, point_member_second, + point_third, point_member_third) + values (b.pk_member, b.child_node, b.pk_parent, + b.stage, b.stage_status, b.stage_date, + b.point_11, b.point_12, + b.point_21, b.point_22, + b.point_23, b.point_24, + b.point_31, b.point_32, + b.point_33, b.point_34, + b.point_35, b.point_36, + b.point_37, b.point_38, + b.point_member_11, b.point_member_12, + b.point_member_21, b.point_member_22, + b.point_member_23, b.point_member_24, + b.point_member_31, b.point_member_32, + b.point_member_33, b.point_member_34, + b.point_member_35, b.point_member_36, + b.point_member_37, b.point_member_38, + b.point_type, b.point_gift, + b.creation_time, + b.point_first, b.point_member_first, + b.point_second, b.point_member_second, + b.point_third, b.point_member_third) + when matched then + update set + a.stage = b.stage, a.stage_status = b.stage_status, a.stage_date = b.stage_date, + a.point_11 = b.point_11, a.point_12 = b.point_12, + a.point_21 = b.point_21, a.point_22 = b.point_22, + a.point_23 = b.point_23, a.point_24 = b.point_24, + a.point_31 = b.point_31, a.point_32 = b.point_32, + a.point_33 = b.point_33, a.point_34 = b.point_34, + a.point_35 = b.point_35, a.point_36 = b.point_36, + a.point_37 = b.point_37, a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, a.point_member_first = b.point_member_first, + a.point_second = b.point_second, a.point_member_second = b.point_member_second, + a.point_third = b.point_third, a.point_member_third = b.point_member_third + + merge into ${secondRangeTableName} a @@ -321,48 +603,95 @@ rep_consume_new_pv, rep_team_new_amount, rep_team_new_pv, + point_count, bw.awards_value, - bw.awards_name, - bwa.awards_value share_awards_value, - bwa.awards_name share_awards_name + bw.awards_name from ( select * from ${tableName} start with pk_member = #{item} connect by pk_member = prior pk_parent ) a inner join bd_awards bw - on bw.pk_id = a.pk_awards and bw.del_flag = 0 - left join bd_awards bwa - on bwa.pk_id = a.pk_share_awards and bwa.del_flag = 0 + on bw.pk_id = a.pk_awards left join bd_vertex bv on bv.pk_id = a.pk_vertex + + + SELECT + cud.CHILD_NODE + FROM + CU_MEMBER cu LEFT JOIN + ${ settleTableName } cud ON cu.PK_ID = cud.PK_MEMBER + WHERE + cu.MEMBER_CODE = #{ memberCode } + AND cud.STAGE = #{ stage } + AND cud.STAGE_STATUS = #{ stageStatus } + + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index f3bb3c13..f9f3e67b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -402,6 +402,8 @@ public enum EOperationBusiness { MONTHLY_JOB_LEVEL("月度职级名单查询"), MEMBER_RISK_CONTROL("K值风控设置"), MEMBER_RETAIL_STAT("收益区域数据"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构") ; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 0c18f133..e4cd274c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -401,6 +401,8 @@ public enum EOperationModule { MEMBER_RISK_CONTROL("K值风控设置"), ORDER_SYNC("同步失败订单"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构") ; /** From abe46ad69ed67b01fad07f122a2f660b6d697e61 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 15:49:15 +0800 Subject: [PATCH 203/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A1=AB=E5=85=85=E7=82=B9=E4=BD=8D=E9=80=BB=E8=BE=91=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CuMemberRetailRangeServiceImpl.java | 26 ++- .../service/ICuMemberBonusStageService.java | 6 + .../service/impl/BonusSettleRangeHandle.java | 175 ++++++++++++++---- .../impl/CuMemberBonusStageServiceImpl.java | 144 +++++++------- .../hzs/bonus/constant/BonusConstants.java | 18 +- .../bonus/achieve/CuMemberTreeMapper.xml | 26 +-- .../mapper/bonus/order/BonusOrderMapper.xml | 2 +- .../member/achieve/CuActiveMemberCensus.java | 5 - .../member/achieve/CuMemberRangeMonth.java | 59 ------ .../member/achieve/CuMemberRetailDetail.java | 5 + 10 files changed, 259 insertions(+), 207 deletions(-) delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 9a50232d..38a019a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -4,15 +4,14 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; +import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,6 +26,8 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl retailDetailColl = new ArrayList<>(); memberRangeExtMap.forEach((key, value) -> { if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { - retailDetailColl.addAll(value.getOneDetailMap().values()); + Collection tmpDetailColl = value.getOneDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } } }); List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); - list.forEach(tmpList -> { - if (CollectionUtil.isNotEmpty(tmpList)) { - baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); - } - }); + list.forEach(tmpList -> { + if (CollectionUtil.isNotEmpty(tmpList)) { + baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); + } + }); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 15c1ccb8..72592edd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -37,6 +37,12 @@ public interface ICuMemberBonusStageService extends IService */ String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); + /** + * 填充指定点位 + */ + void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + Long pkMember, Integer childNode); + /** * 处理新点位是推荐第一层 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 83c92210..50b3f5de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -278,7 +278,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); // 新零售订单(注册、复购) - List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 @@ -371,6 +371,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); + CuMemberRetailRangeExt tt = memberRangeExtMap.get(20363L); // 更新日结明细数据 iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } @@ -950,6 +951,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); + + newPointInt: for (int i = 1; i <= newPointInt; i++) { // 订单会员生成的新点位 CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() @@ -961,6 +964,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) + .updateBool(0) .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); @@ -980,47 +984,142 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 推荐人没有未完成点位,继续往上找 continue; } - parentDetailList.forEach((key, parentRetailDetail) -> { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第一层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); // 遍历推荐人点位,使用第一个未完成的点位,进行填充 if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - String newNode = iCuMemberBonusStageService.fillChildNode(parentRetailDetail, newRetailDetail); - if (null == newNode) { - return; - } - switch (newNode) { - case BonusConstants.POINT_11: - case BonusConstants.POINT_12: - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); - break; - case BonusConstants.POINT_21: - case BonusConstants.POINT_22: - case BonusConstants.POINT_23: - case BonusConstants.POINT_24: - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); - break; - case BonusConstants.POINT_38: - // 第一个点位已经全部填满,更新完成状态和时间 - parentRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - parentRetailDetail.setStageDate(settleDate); - // TODO 一阶段全满则需要发放一阶段奖金 - // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 - case BonusConstants.POINT_31: - case BonusConstants.POINT_32: - case BonusConstants.POINT_33: - case BonusConstants.POINT_34: - case BonusConstants.POINT_35: - case BonusConstants.POINT_36: - case BonusConstants.POINT_37: - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); + if (null == parentRetailDetail.getPointMember11()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_11); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember12()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_12); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; } } - }); + } + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember22()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember23()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember24()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } + } + } + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第三层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember31()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_31); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember32()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_32); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember33()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_33); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember34()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_34); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember35()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_35); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember36()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_36); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember37()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_37); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember38()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_38); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } + } + } } } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 60d38738..7a923d3b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -47,7 +47,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl cuMemberBonusStageList, Set memberIdSet) { - if (cuMemberBonusStageList.size() == 0) { + if (CollectionUtil.isEmpty(cuMemberBonusStageList)) { return; } List addMemberBonusStageList = new ArrayList<>(); @@ -89,19 +89,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl(); - for (String suffix : BonusConstants.FIELD_LIST) { - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); - } - } - @Override public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { - if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { - initFieldMap(); - } for (String suffix : BonusConstants.FIELD_LIST) { Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); @@ -109,6 +98,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, @@ -292,22 +267,25 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl queryMemberList = new ArrayList<>(2); // 获取上第三层结算数据 CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); - if (null == memberUpFirst) { + if (null == memberUpFirst && null != newParentRetailDetail.getPointMemberFirst()) { queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); } // 获取上第一层结算数据 @@ -341,7 +319,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); - public static final String POINT_FIELD_NAME = "point"; + // 会员ID字段 public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; + // 会员子点位字段 + public static final String POINT_FIELD_NAME = "point"; + // 入库标记字段 + public static final String UPDATE_FLAG = "updateBool"; public static Map FIELD_MAP = null; + static { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index b737895b..2a39496d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -299,32 +299,32 @@ stage_status NUMBER(1) default 1 not null, stage_date DATE, point_11 NUMBER(8), - point_12 NUMBER(8), - point_21 NUMBER(8), - point_22 NUMBER(8), - point_23 NUMBER(8), - point_24 NUMBER(8), - point_31 NUMBER(8), - point_32 NUMBER(8), - point_33 NUMBER(8), - point_34 NUMBER(8), - point_35 NUMBER(8), - point_36 NUMBER(8), - point_37 NUMBER(8), - point_38 NUMBER(8), point_member_11 NUMBER(20), + point_12 NUMBER(8), point_member_12 NUMBER(20), + point_21 NUMBER(8), point_member_21 NUMBER(20), + point_22 NUMBER(8), point_member_22 NUMBER(20), + point_23 NUMBER(8), point_member_23 NUMBER(20), + point_24 NUMBER(8), point_member_24 NUMBER(20), + point_31 NUMBER(8), point_member_31 NUMBER(20), + point_32 NUMBER(8), point_member_32 NUMBER(20), + point_33 NUMBER(8), point_member_33 NUMBER(20), + point_34 NUMBER(8), point_member_34 NUMBER(20), + point_35 NUMBER(8), point_member_35 NUMBER(20), + point_36 NUMBER(8), point_member_36 NUMBER(20), + point_37 NUMBER(8), point_member_37 NUMBER(20), + point_38 NUMBER(8), point_member_38 NUMBER(20), point_type NUMBER(1) default 0 not null, point_gift NUMBER(1) default 0 not null, diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 808f4e14..7d93e0e3 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -90,7 +90,7 @@ and so.pay_time >= #{startDate} and so.pay_time < #{endDate} - order by pay_time desc + order by pay_time diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java index 0d4db8a5..ba8858ed 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java @@ -10,12 +10,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 统计活跃会员 - *

- * - * @author zhangjing - * @since 2023-05-17 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java deleted file mode 100644 index eb4662b0..00000000 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.common.domain.member.achieve; - -import java.math.BigDecimal; -import com.baomidou.mybatisplus.annotation.TableName; -import java.util.Date; -import com.baomidou.mybatisplus.annotation.TableField; -import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *

- * 极差月新增业绩 - *

- * - * @author hzs - * @since 2024-10-28 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@TableName("CU_MEMBER_RANGE_MONTH") -public class CuMemberRangeMonth extends BaseEntity { - - private static final long serialVersionUID = 1L; - - /** - * 会员ID - */ - @TableField("PK_MEMBER") - private Long pkMember; - - /** - * 期数 - */ - @TableField("PERIOD") - private Integer period; - - /** - * 结算日期 - */ - @TableField("SETTLE_DATE") - private Date settleDate; - - /** - * 个人新增PV - */ - @TableField("NEW_PV") - private BigDecimal newPv; - - /** - * 团队新增PV - */ - @TableField("NEW_TEAM_PV") - private BigDecimal newTeamPv; - - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index f705282d..ceaf9aa9 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -280,5 +280,10 @@ public class CuMemberRetailDetail { @TableField("POINT_MEMBER_THIRD") private Long pointMemberThird; + /** + * 更新标记(不为null则需要入库) + */ + @TableField(exist = false) + private Integer updateBool; } From a518eb877536a4cc3e408f616985f7b4f4d6f422 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 21 Sep 2025 10:47:40 +0800 Subject: [PATCH 204/362] =?UTF-8?q?##=20=E9=98=B6=E6=AE=B5=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E5=85=A5=E5=BA=93=E6=93=8D=E4=BD=9C=EF=BC=9B=E5=B0=81?= =?UTF-8?q?=E8=A3=85=E9=98=B6=E6=AE=B5=E6=94=B6=E7=9B=8A=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E5=A4=87=E6=B3=A8=E7=AD=89=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberBonusStageMapper.java | 13 ++++ .../service/ICuMemberBonusStageService.java | 21 ++++++ .../bonus/service/impl/BonusSettleHandle.java | 13 ++++ .../service/impl/BonusSettleRangeHandle.java | 3 + .../service/impl/BonusSettleServiceImpl.java | 71 +++++++++++-------- .../impl/CuMemberBonusStageServiceImpl.java | 62 ++++++++++++++-- .../bonus/bonus/vo/BonusRecordDetailVO.java | 7 +- .../bonus/bonus/CuMemberBonusStageMapper.xml | 57 ++++++++------- .../core/constant/msg/BonusMsgConstants.java | 5 ++ .../domain/member/bonus/CuMemberBonus.java | 6 +- .../member/bonus/CuMemberBonusStage.java | 12 +++- 11 files changed, 203 insertions(+), 67 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java index cda6f8d0..cffb0062 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java @@ -2,10 +2,23 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 会员奖金-阶段收益明细表 Mapper 接口 */ public interface CuMemberBonusStageMapper extends BaseMapper { + /** + * 删除会员阶段奖金表 + */ + void deleteCuMemberBonusStage(Integer period); + + /** + * 批量插入会员阶段奖 + */ + void batchInsertCuMemberBonusStage(@Param("cuMemberBonusStageList") List cuMemberBonusStageList); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 9324c81a..15c1ccb8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -3,15 +3,35 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.sale.ext.SaOrderExt; +import java.util.List; import java.util.Map; +import java.util.Set; /** * 会员奖金-阶段收益明细表 服务类 */ public interface ICuMemberBonusStageService extends IService { + /** + * 删除会员阶段奖金表 + */ + void deleteCuMemberBonusStage(Integer period); + + /** + * 批量插入会员阶段奖 + */ + void batchInsertCuMemberBonusStage(List cuMemberBonusStageList, Set memberIdSet); + + /** + * 获取阶段收益信息 + */ + CuMemberBonusStage getCuMemberBonusStage(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, + CuMemberBonus cuMemberBonus, Integer pkBonusItems); + /** * 填充会员点位 */ @@ -38,4 +58,5 @@ public interface ICuMemberBonusStageService extends IService CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, String rangeTableName, String rangeDetailTableName, String newNode); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 616125b9..f9ca8ea7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -79,6 +79,19 @@ public abstract class BonusSettleHandle { } + /** + * 获得 阶段收益 备注 + */ + protected void stageIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusStage cuMemberBonusStage, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember) { + String remark = String.format(BonusMsgConstants.STAGE_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + cuMemberBonusStage.setRemark(remark); + } + + /** * 获得 直推级差收益的备注 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 4abdb337..83c92210 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -354,6 +354,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (cuMemberBonusPushList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); } + if (cuMemberBonusStageList.size() > 0) { + bonusRecordDetailVO.setCuMemberBonusStageList(cuMemberBonusStageList); + } if (cuMemberBonusRangeList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index 9daf6b84..bf6b5e51 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -40,22 +40,23 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private IBonusOrderService iBonusOrderService; @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired private BonusSettleRangeHandle bonusSettleRangeHandle; @Autowired - private ICuMemberBonusService cuMemberBonusService; + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Autowired - private ICuMemberBonusPushService cuMemberBonusPushService; + private ICuMemberBonusService iCuMemberBonusService; @Autowired - private ICuMemberBonusRangeService cuMemberBonusRangeService; + private ICuMemberBonusPushService iCuMemberBonusPushService; @Autowired - private ICuMemberBonusDetailService cuMemberBonusDetailService; - + private ICuMemberBonusStageService iCuMemberBonusStageService; + @Autowired + private ICuMemberBonusRangeService iCuMemberBonusRangeService; + @Autowired + private ICuMemberBonusDetailService iCuMemberBonusDetailService; @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired - private ICuMemberService cuMemberService; + private ICuMemberService iCuMemberService; /** @@ -68,8 +69,8 @@ public class BonusSettleServiceImpl implements IBonusSettleService { List cuMemberBonusList = setCuMemberBonusSeq(settleDate, cuMemberBonusMap); if (cuMemberBonusList.size() > 0) { // 插入奖金主表 - cuMemberBonusService.insertOrUpdateCuMemberBonus(cuMemberBonusList); - List cuMemberBonuses = cuMemberBonusService.queryCuMemberBonus(period, cuMemberBonusList); + iCuMemberBonusService.insertOrUpdateCuMemberBonus(cuMemberBonusList); + List cuMemberBonuses = iCuMemberBonusService.queryCuMemberBonus(period, cuMemberBonusList); cuMemberBonuses.forEach(cuMemberBonus -> cuMemberBonusMap.put(cuMemberBonus.getPkMember(), cuMemberBonus)); } } @@ -79,10 +80,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService { public void calculateCuMemberBonus(String settleDate) { try { // 结算期间 - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + Integer period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); String yesterday = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, settleDate); // 结算期间前一天期间 - Integer yesterdayPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId(); + Integer yesterdayPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId(); // 获取所有国家的奖金项 key = 国家 + 奖金项的值 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); @@ -121,10 +122,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 处理奖金结算秒结表,判断是否存在当天结算的秒接表,从cu_member中获取网体,从昨日结算表中获取累计、结余数据 // 今天结算期数 String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, saOrderExt.getPayTime()); - int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + int currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); // 昨天结算期数 String beforeDay = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS, saOrderExt.getPayTime())); - int beforePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDay).getPkId(); + int beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDay).getPkId(); // 秒结表名 String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; @@ -137,28 +138,28 @@ public class BonusSettleServiceImpl implements IBonusSettleService { secondRangeTableName, beforePeriod, currentPeriod, cuMemberBonusMap, cuMemberBonusDetailList); saveCuMemberBonus(currentPeriod, settleDate, cuMemberBonusMap); - Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(currentPeriod); + Set memberIdSet = iCuMemberBonusService.queryMemberBonusByPeriod(currentPeriod); if (cuMemberBonusRangeList.size() > 0) { cuMemberBonusRangeList.forEach(cuMemberBonusRange -> cuMemberBonusRange.setPkBonus(cuMemberBonusMap.get(cuMemberBonusRange.getPkBonus()).getPkId())); - cuMemberBonusRangeService.batchInsertCuMemberBonusRange(cuMemberBonusRangeList, memberIdSet); + iCuMemberBonusRangeService.batchInsertCuMemberBonusRange(cuMemberBonusRangeList, memberIdSet); } if (cuMemberBonusDetailList.size() > 0) { cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); - cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(cuMemberBonusDetailList, memberIdSet); + iCuMemberBonusDetailService.batchInsertCuMemberBonusDetail(cuMemberBonusDetailList, memberIdSet); } } else { // 订单撤单处理(逆向) if (!DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate())) { settleDate = DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS)); - currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); } // 实时计算撤单数据(业绩、等级、奖衔、日奖) bonusSettleRangeHandle.calculateCuMemberBackRetailIncome(saOrderExt, bonusConfigDTO, secondRangeTableName, beforePeriod, currentPeriod); // 处理收益 - cuMemberBonusService.mergeBackMemberBonusIncome(saOrderExt.getPkId()); + iCuMemberBonusService.mergeBackMemberBonusIncome(saOrderExt.getPkId()); } } } @@ -177,11 +178,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { } // 今天结算期数 String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, orderExt.getPayTime()); - int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + int currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); // 秒结表名 String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); - CuMember self = cuMemberService.getById(orderExt.getPkId()); + CuMember self = iCuMemberService.getById(orderExt.getPkId()); iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); } @@ -193,10 +194,11 @@ public class BonusSettleServiceImpl implements IBonusSettleService { * @param bonusRecordDetailVO 奖金明细表 */ void insertCuMemberBonus(String settleDate, Integer period, Map cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO) { - cuMemberBonusPushService.deleteCuMemberBonusPush(period); - cuMemberBonusDetailService.deleteCuMemberBonusDetail(period); - cuMemberBonusRangeService.deleteCuMemberBonusRange(period); - cuMemberBonusService.deleteCuMemberBonus(period); + iCuMemberBonusPushService.deleteCuMemberBonusPush(period); + iCuMemberBonusStageService.deleteCuMemberBonusStage(period); + iCuMemberBonusDetailService.deleteCuMemberBonusDetail(period); + iCuMemberBonusRangeService.deleteCuMemberBonusRange(period); + iCuMemberBonusService.deleteCuMemberBonus(period); if (cuMemberBonusMap.size() == 0) { return; } @@ -207,11 +209,17 @@ public class BonusSettleServiceImpl implements IBonusSettleService { List cuMemberBonusPushList = bonusRecordDetailVO.getCuMemberBonusPushList(); List cuMemberBonusDetailList = bonusRecordDetailVO.getCuMemberBonusDetailList(); List cuMemberBonusRangeList = bonusRecordDetailVO.getCuMemberBonusRangeList(); + // 阶段收益奖金明细 + List cuMemberBonusStageList = bonusRecordDetailVO.getCuMemberBonusStageList(); if (cuMemberBonusPushList != null && cuMemberBonusPushList.size() > 0) { cuMemberBonusPushList.forEach(cuMemberBonusPush -> cuMemberBonusPush.setPkBonus(cuMemberBonusMap.get(cuMemberBonusPush.getPkBonus()).getPkId())); batchMemberBonusPushList.addAll(cuMemberBonusPushList); } + if (cuMemberBonusStageList != null && cuMemberBonusStageList.size() > 0) { + cuMemberBonusStageList.forEach(cuMemberBonusStage -> + cuMemberBonusStage.setPkBonus(cuMemberBonusMap.get(cuMemberBonusStage.getPkBonus()).getPkId())); + } if (cuMemberBonusDetailList != null && cuMemberBonusDetailList.size() > 0) { cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); @@ -223,15 +231,16 @@ public class BonusSettleServiceImpl implements IBonusSettleService { batchMemberBonusRangeList.addAll(cuMemberBonusRangeList); } // 插入奖金主表 - cuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); - Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(period); - cuMemberBonusPushService.batchInsertCuMemberBonusPush(batchMemberBonusPushList, memberIdSet); - cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(batchMemberBonusDetailList, memberIdSet); - cuMemberBonusRangeService.batchInsertCuMemberBonusRange(batchMemberBonusRangeList, memberIdSet); + iCuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); + Set memberIdSet = iCuMemberBonusService.queryMemberBonusByPeriod(period); + iCuMemberBonusPushService.batchInsertCuMemberBonusPush(batchMemberBonusPushList, memberIdSet); + iCuMemberBonusStageService.batchInsertCuMemberBonusStage(cuMemberBonusStageList, memberIdSet); + iCuMemberBonusDetailService.batchInsertCuMemberBonusDetail(batchMemberBonusDetailList, memberIdSet); + iCuMemberBonusRangeService.batchInsertCuMemberBonusRange(batchMemberBonusRangeList, memberIdSet); } private List setCuMemberBonusSeq(String settleDate, Map cuMemberBonusMap) { - List pkIdList = cuMemberBonusService.batchQueryCuMemberBonusSeq(cuMemberBonusMap.size()); + List pkIdList = iCuMemberBonusService.batchQueryCuMemberBonusSeq(cuMemberBonusMap.size()); int i = 0; // 判断时间,重算的时候直接是已公布 Integer grantStatus = EGrantStatus.SETTLED.getValue(); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index cc86523b..60d38738 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -5,23 +5,26 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.constant.BonusConstants; +import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.ECalType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.sale.ext.SaOrderExt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.math.BigDecimal; +import java.util.*; /** * 会员奖金-阶段收益明细表 服务实现类 @@ -29,12 +32,63 @@ import java.util.Map; @Service public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { + @Autowired + private CuMemberBonusSettle cuMemberBonusSettle; @Autowired private ICuMemberRetailDetailService iCuMemberRetailDetailService; @Resource private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + @Override + public void deleteCuMemberBonusStage(Integer period) { + baseMapper.deleteCuMemberBonusStage(period); + } + + @Override + public void batchInsertCuMemberBonusStage(List cuMemberBonusStageList, Set memberIdSet) { + if (cuMemberBonusStageList.size() == 0) { + return; + } + List addMemberBonusStageList = new ArrayList<>(); + for (CuMemberBonusStage cuMemberBonusStage : cuMemberBonusStageList) { + if (memberIdSet.contains(cuMemberBonusStage.getPkBonus())) { + addMemberBonusStageList.add(cuMemberBonusStage); + } + } + if (addMemberBonusStageList.size() == 0) { + return; + } + List> lists = cuMemberBonusSettle.handleCutList(addMemberBonusStageList); + lists.forEach(list -> + baseMapper.batchInsertCuMemberBonusStage(list)); + } + + /** + * 获取阶段收益信息 + */ + @Override + public CuMemberBonusStage getCuMemberBonusStage(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusStage cuMemberBonusStage = CuMemberBonusStage.builder() + .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(saOrderExt.getPkId()) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.VALUE.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) + .pretaxIncome(BigDecimal.ZERO) + .incomeTax(BigDecimal.ZERO) + .realIncome(BigDecimal.ZERO) + .incomeRatio(BigDecimal.ZERO) + .incomeDialRatio(BigDecimal.ZERO) + .orderDialRatio(BigDecimal.ZERO) + .build(); + cuMemberBonusStage.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusStage.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusStage; + } + private void initFieldMap() { BonusConstants.FIELD_MAP = new HashMap<>(); for (String suffix : BonusConstants.FIELD_LIST) { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java index ff67bca9..703a1dc3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java @@ -18,10 +18,15 @@ public class BonusRecordDetailVO implements Serializable { private Long pkMember; /** - * + * 直推收益、见点收益 */ private List cuMemberBonusPushList; + /** + * 阶段收益 + */ + private List cuMemberBonusStageList; + /** * 新零售 - 区域分红、月度分红 */ diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 8c915f1c..fb2c6d16 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -2,31 +2,36 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + delete + from CU_MEMBER_BONUS_STAGE + where PK_BONUS in ( + select pk_id + from cu_member_bonus + where period = #{period} + and grant_status <= 2) + + + + + insert ALL + + into cu_member_bonus_stage ( + pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, + pretax_income, income_tax, real_income, remark, + income_ratio, income_dial_ratio, order_dial_ratio, + pk_creator, child_node, stage, stage_num) + values ( + #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, + #{item.round}, #{item.second}, #{item.remark}, + #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}) + + SELECT 1 FROM dual + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/BonusMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/BonusMsgConstants.java index cc1ecdd0..530a7a40 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/BonusMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/BonusMsgConstants.java @@ -15,6 +15,11 @@ public class BonusMsgConstants { */ public static String REPUR_DIRECT_INCOME = "订单编号%s,%s为%s贡献了第%s代见点收益,计算业绩%f,计算比例%f。"; + /** + * 阶段 收益说明 + */ + public static String STAGE_INCOME = "订单编号%s,%s为%s贡献了阶段收益,%s子点位%s阶段。"; + /** * 直推级差收益说明 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index c1f52db2..6ac6da2b 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -50,7 +50,7 @@ public class CuMemberBonus extends BaseEntity { private Integer pkRate; /** - * 注册直推收益-康健 + * 注册直推收益-众康 */ @TableField("DIRECT_INCOME") private BigDecimal directIncome; @@ -176,7 +176,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal repurCouponSubtotal; /** - * 复购见点收益-康健 + * 复购见点收益-众康 */ @TableField("GLOBAL_POINTS") private BigDecimal globalPoints; @@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal carAwardPoints; /** - * 注册阶段收益-康健 + * 注册阶段收益-众康 */ @TableField("STORE_INCOME") private BigDecimal storeIncome; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java index f39d2fed..746a38e0 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java @@ -7,13 +7,15 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; +import lombok.*; import lombok.experimental.Accessors; /** * 会员奖金-阶段收益明细表 */ +@Builder +@AllArgsConstructor +@NoArgsConstructor @Data @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @@ -113,6 +115,12 @@ public class CuMemberBonusStage extends BaseEntity { @TableField("ORDER_DIAL_RATIO") private BigDecimal orderDialRatio; + /** + * 会员子节点 + */ + @TableField("CHILD_NODE") + private Integer childNode; + /** * 三个阶段(1、2、3) */ From c91ce61eac58b9f126672577f42f408ff1788236 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 22 Sep 2025 15:13:12 +0800 Subject: [PATCH 205/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84,=E5=AD=90=E4=BC=9A=E5=91=98=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 23 ++++ .../base/service/ICumemberRetailDetail.java | 17 +++ .../impl/ICumemberRetailDetailImpl.java | 115 ++++++++++++++++++ .../manage/MemberStructureController.java | 75 ++++++++++++ .../structure/controller/vo/ChildCodeVO.java | 13 ++ .../member/CuMemberRetailDetailMapper.xml | 35 ++++++ .../common/core/enums/EOperationBusiness.java | 2 + .../common/core/enums/EOperationModule.java | 2 + 8 files changed, 282 insertions(+) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetail.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java create mode 100644 bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java new file mode 100644 index 00000000..6a747921 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -0,0 +1,23 @@ +package com.hzs.member.base.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface CuMemberRetailDetailMapper extends BaseMapper { + List getChildList(@Param("memberCode") String memberCode, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("settleTableName")String settleTableName); + + CuMemberRetailDetail getCuMemberRetailDetailExt(@Param("memberCode")String memberCode, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("childNode")String childNode, + @Param("settleTableName")String settleTableName); + + Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetail.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetail.java new file mode 100644 index 00000000..415b32c5 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetail.java @@ -0,0 +1,17 @@ +package com.hzs.member.base.service; + +import cn.hutool.core.lang.tree.Tree; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.vo.ChildCodeVO; + +import java.util.List; + +public interface ICumemberRetailDetail { + List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName); + + CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus, String childNode, String settleTableName); + + Integer getFindCumemberRetailDetail(String settleTableName); + + List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java new file mode 100644 index 00000000..83cc5881 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java @@ -0,0 +1,115 @@ +package com.hzs.member.base.service.impl; + +import cn.hutool.core.lang.tree.Tree; +import cn.hutool.core.lang.tree.TreeUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +@Service +public class ICumemberRetailDetailImpl extends ServiceImpl implements ICumemberRetailDetail { + @Autowired + private ICuMemberService iCuMemberService; + @Override + public List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName) { + return baseMapper.getChildList(memberCode,stage,stageStatus,settleTableName); + } + + @Override + public CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus,String childNode,String settleTableName) { + return baseMapper.getCuMemberRetailDetailExt(memberCode,stage,stageStatus,childNode,settleTableName); + } + + @Override + public Integer getFindCumemberRetailDetail(String settleTableName) { + return baseMapper.getFindCumemberRetailDetail(settleTableName); + } + + @Override + public List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail) { + // 所有会员id + Set ids = new LinkedHashSet<>(); + ids.add(cuMemberRetailDetail.getPkMember()); + // 过滤空的会员id + Stream.of( + cuMemberRetailDetail.getPointMember11(), cuMemberRetailDetail.getPointMember12(), + cuMemberRetailDetail.getPointMember21(), cuMemberRetailDetail.getPointMember22(), cuMemberRetailDetail.getPointMember23(), cuMemberRetailDetail.getPointMember24(), + cuMemberRetailDetail.getPointMember31(), cuMemberRetailDetail.getPointMember32(), cuMemberRetailDetail.getPointMember33(), cuMemberRetailDetail.getPointMember34(), + cuMemberRetailDetail.getPointMember35(), cuMemberRetailDetail.getPointMember36(), cuMemberRetailDetail.getPointMember37(), cuMemberRetailDetail.getPointMember38(), + cuMemberRetailDetail.getPointMemberFirst(), cuMemberRetailDetail.getPointMemberSecond(), cuMemberRetailDetail.getPointMemberThird() + ).filter(Objects::nonNull).forEach(ids::add); + + // 查找对应会员信息 + List members; + if (ids.isEmpty()) { + members = Collections.emptyList(); + } else { + members = iCuMemberService.listByIds(new ArrayList<>(ids)); + } + + Map memberMap = members.stream() + .collect(Collectors.toMap(CuMember::getPkId, Function.identity(), (a, b) -> a)); + + // 构建node + List> nodeList = new ArrayList<>(); + nodeList.add(makeNode("root", "0", "root", cuMemberRetailDetail.getPkMember(), memberMap)); + + nodeList.add(makeNode("1", "root", "1", cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode("2", "root", "2", cuMemberRetailDetail.getPointMember12(), memberMap)); + + nodeList.add(makeNode("3", "1", "3", cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode("4", "1", "4", cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode("5", "2", "5", cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode("6", "2", "6", cuMemberRetailDetail.getPointMember24(), memberMap)); + + nodeList.add(makeNode("7", "3", "7", cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode("8", "3", "8", cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode("9", "4", "9", cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode("10", "4", "10", cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode("11", "5", "11", cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode("12", "5", "12", cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode("13", "6", "13", cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode("14", "6", "14", cuMemberRetailDetail.getPointMember38(), memberMap)); + + // 构造树结构 + return TreeUtil.build(nodeList, "0", (node, tree) -> { + tree.setId((String) node.get("id")); + tree.setParentId((String) node.get("parentId")); + tree.setName((String) node.get("label")); + tree.putExtra("memberCode", node.get("memberCode")); + tree.putExtra("memberName", node.get("memberName")); + tree.putExtra("nodeCode", node.get("nodeCode")); + }); + } + private Map makeNode(String id, String parentId, String label, + Long memberId, Map memberMap) { + Map map = new HashMap<>(); + map.put("id", id); + map.put("parentId", parentId); + map.put("label", label); + map.put("nodeCode", label); + + if (memberId != null && memberMap.containsKey(memberId)) { + CuMember member = memberMap.get(memberId); + map.put("memberCode", member.getMemberCode()); + map.put("memberName", member.getMemberName()); + } else { + // 没有信息置空 + map.put("memberCode", ""); + map.put("memberName", ""); + } + return map; + } + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index bc5fd02f..bd3db03d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -3,19 +3,26 @@ package com.hzs.member.structure.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.tree.Tree; import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.AccessPermissions; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.*; +import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.EOperationBusiness; +import com.hzs.common.core.enums.EOperationMethod; +import com.hzs.common.core.enums.EOperationModule; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailSExt; import com.hzs.common.domain.member.base.CuMember; @@ -24,11 +31,14 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IUserServiceApi; import com.hzs.system.sys.dto.UserAuthorityDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -38,6 +48,7 @@ import java.util.*; /** * 架构管理 */ +@Slf4j @RestController @RequestMapping("/manage/member-structure") public class MemberStructureController extends BaseController { @@ -49,6 +60,8 @@ public class MemberStructureController extends BaseController { @Autowired private ICuMemberService iCuMemberService; + @Autowired + private ICumemberRetailDetail iCumemberRetailDetail; @DubboReference IUserServiceApi iUserServiceApi; @DubboReference @@ -193,6 +206,68 @@ public class MemberStructureController extends BaseController { } } + + /** + * 三阶段架构 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param childNode + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) + @GetMapping("/three-framework") + public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,String childNode,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null || childNode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + if (isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetail.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); + log.info("日结表会员信息{}",cuMemberRetailDetail); + // 拼接树形结构 + List> cuMemberRetailTree = iCumemberRetailDetail.convertToNodeList(cuMemberRetailDetail); + return AjaxResult.success(cuMemberRetailTree); + } + + /** + * 查询子节点 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) + @GetMapping("/childList") + public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + if (isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + List childCodeList = iCumemberRetailDetail.getChildList(memberCode,stage,stageStatus,settleTableName); + return AjaxResult.success(childCodeList); + } /** * 查询最近一月所有期数 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java new file mode 100644 index 00000000..4bc9f369 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java @@ -0,0 +1,13 @@ +package com.hzs.member.structure.controller.vo; + +import lombok.Data; + +@Data + +public class ChildCodeVO { + /** + * 子会员节点 + */ + Integer childNode; + +} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml new file mode 100644 index 00000000..08dff19e --- /dev/null +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index f3bb3c13..f9f3e67b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -402,6 +402,8 @@ public enum EOperationBusiness { MONTHLY_JOB_LEVEL("月度职级名单查询"), MEMBER_RISK_CONTROL("K值风控设置"), MEMBER_RETAIL_STAT("收益区域数据"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构") ; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 0c18f133..e4cd274c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -401,6 +401,8 @@ public enum EOperationModule { MEMBER_RISK_CONTROL("K值风控设置"), ORDER_SYNC("同步失败订单"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构") ; /** From 48863d8dc722a152c79dfdca4f354f6681a474e2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 15:49:15 +0800 Subject: [PATCH 206/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A1=AB=E5=85=85=E7=82=B9=E4=BD=8D=E9=80=BB=E8=BE=91=E8=B0=83?= =?UTF-8?q?=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CuMemberRetailRangeServiceImpl.java | 26 ++- .../service/ICuMemberBonusStageService.java | 6 + .../service/impl/BonusSettleRangeHandle.java | 175 ++++++++++++++---- .../impl/CuMemberBonusStageServiceImpl.java | 144 +++++++------- .../hzs/bonus/constant/BonusConstants.java | 18 +- .../bonus/achieve/CuMemberTreeMapper.xml | 26 +-- .../mapper/bonus/order/BonusOrderMapper.xml | 2 +- .../member/achieve/CuActiveMemberCensus.java | 5 - .../member/achieve/CuMemberRangeMonth.java | 59 ------ .../member/achieve/CuMemberRetailDetail.java | 5 + 10 files changed, 259 insertions(+), 207 deletions(-) delete mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 9a50232d..38a019a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -4,15 +4,14 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; +import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -27,6 +26,8 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl retailDetailColl = new ArrayList<>(); memberRangeExtMap.forEach((key, value) -> { if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { - retailDetailColl.addAll(value.getOneDetailMap().values()); + Collection tmpDetailColl = value.getOneDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } } }); List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); - list.forEach(tmpList -> { - if (CollectionUtil.isNotEmpty(tmpList)) { - baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); - } - }); + list.forEach(tmpList -> { + if (CollectionUtil.isNotEmpty(tmpList)) { + baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); + } + }); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 15c1ccb8..72592edd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -37,6 +37,12 @@ public interface ICuMemberBonusStageService extends IService */ String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); + /** + * 填充指定点位 + */ + void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + Long pkMember, Integer childNode); + /** * 处理新点位是推荐第一层 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 83c92210..50b3f5de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -278,7 +278,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); // 新零售订单(注册、复购) - List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 @@ -371,6 +371,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); + CuMemberRetailRangeExt tt = memberRangeExtMap.get(20363L); // 更新日结明细数据 iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } @@ -950,6 +951,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); + + newPointInt: for (int i = 1; i <= newPointInt; i++) { // 订单会员生成的新点位 CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() @@ -961,6 +964,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) + .updateBool(0) .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); @@ -980,47 +984,142 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 推荐人没有未完成点位,继续往上找 continue; } - parentDetailList.forEach((key, parentRetailDetail) -> { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第一层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); // 遍历推荐人点位,使用第一个未完成的点位,进行填充 if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - String newNode = iCuMemberBonusStageService.fillChildNode(parentRetailDetail, newRetailDetail); - if (null == newNode) { - return; - } - switch (newNode) { - case BonusConstants.POINT_11: - case BonusConstants.POINT_12: - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); - break; - case BonusConstants.POINT_21: - case BonusConstants.POINT_22: - case BonusConstants.POINT_23: - case BonusConstants.POINT_24: - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); - break; - case BonusConstants.POINT_38: - // 第一个点位已经全部填满,更新完成状态和时间 - parentRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - parentRetailDetail.setStageDate(settleDate); - // TODO 一阶段全满则需要发放一阶段奖金 - // TODO 需要记录填满子点位,用来处理生成二阶段以及生成赠点 - case BonusConstants.POINT_31: - case BonusConstants.POINT_32: - case BonusConstants.POINT_33: - case BonusConstants.POINT_34: - case BonusConstants.POINT_35: - case BonusConstants.POINT_36: - case BonusConstants.POINT_37: - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, newNode); + if (null == parentRetailDetail.getPointMember11()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_11); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember12()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第一层 + iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_12); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; } } - }); + } + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember22()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember23()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember24()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第二层 + iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } + } + } + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第三层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember31()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_31); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember32()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_32); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember33()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_33); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember34()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_34); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember35()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_35); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember36()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_36); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember37()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_37); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } else if (null == parentRetailDetail.getPointMember38()) { + iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, + newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); + // 新点位是推荐人点位的第三层 + iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_38); + // 当前新子点位填充完成,进入下一个新子点位 + continue newPointInt; + } + } + } } } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 60d38738..7a923d3b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -47,7 +47,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl cuMemberBonusStageList, Set memberIdSet) { - if (cuMemberBonusStageList.size() == 0) { + if (CollectionUtil.isEmpty(cuMemberBonusStageList)) { return; } List addMemberBonusStageList = new ArrayList<>(); @@ -89,19 +89,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl(); - for (String suffix : BonusConstants.FIELD_LIST) { - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); - BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); - } - } - @Override public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { - if (ObjectUtil.isEmpty(BonusConstants.FIELD_MAP)) { - initFieldMap(); - } for (String suffix : BonusConstants.FIELD_LIST) { Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); @@ -109,6 +98,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, @@ -292,22 +267,25 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl queryMemberList = new ArrayList<>(2); // 获取上第三层结算数据 CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); - if (null == memberUpFirst) { + if (null == memberUpFirst && null != newParentRetailDetail.getPointMemberFirst()) { queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); } // 获取上第一层结算数据 @@ -341,7 +319,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); - public static final String POINT_FIELD_NAME = "point"; + // 会员ID字段 public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; + // 会员子点位字段 + public static final String POINT_FIELD_NAME = "point"; + // 入库标记字段 + public static final String UPDATE_FLAG = "updateBool"; public static Map FIELD_MAP = null; + static { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index b737895b..2a39496d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -299,32 +299,32 @@ stage_status NUMBER(1) default 1 not null, stage_date DATE, point_11 NUMBER(8), - point_12 NUMBER(8), - point_21 NUMBER(8), - point_22 NUMBER(8), - point_23 NUMBER(8), - point_24 NUMBER(8), - point_31 NUMBER(8), - point_32 NUMBER(8), - point_33 NUMBER(8), - point_34 NUMBER(8), - point_35 NUMBER(8), - point_36 NUMBER(8), - point_37 NUMBER(8), - point_38 NUMBER(8), point_member_11 NUMBER(20), + point_12 NUMBER(8), point_member_12 NUMBER(20), + point_21 NUMBER(8), point_member_21 NUMBER(20), + point_22 NUMBER(8), point_member_22 NUMBER(20), + point_23 NUMBER(8), point_member_23 NUMBER(20), + point_24 NUMBER(8), point_member_24 NUMBER(20), + point_31 NUMBER(8), point_member_31 NUMBER(20), + point_32 NUMBER(8), point_member_32 NUMBER(20), + point_33 NUMBER(8), point_member_33 NUMBER(20), + point_34 NUMBER(8), point_member_34 NUMBER(20), + point_35 NUMBER(8), point_member_35 NUMBER(20), + point_36 NUMBER(8), point_member_36 NUMBER(20), + point_37 NUMBER(8), point_member_37 NUMBER(20), + point_38 NUMBER(8), point_member_38 NUMBER(20), point_type NUMBER(1) default 0 not null, point_gift NUMBER(1) default 0 not null, diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 808f4e14..7d93e0e3 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -90,7 +90,7 @@ and so.pay_time >= #{startDate} and so.pay_time < #{endDate} - order by pay_time desc + order by pay_time diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java index 0d4db8a5..ba8858ed 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuActiveMemberCensus.java @@ -10,12 +10,7 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 统计活跃会员 - *

- * - * @author zhangjing - * @since 2023-05-17 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java deleted file mode 100644 index eb4662b0..00000000 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRangeMonth.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.common.domain.member.achieve; - -import java.math.BigDecimal; -import com.baomidou.mybatisplus.annotation.TableName; -import java.util.Date; -import com.baomidou.mybatisplus.annotation.TableField; -import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.experimental.Accessors; - -/** - *

- * 极差月新增业绩 - *

- * - * @author hzs - * @since 2024-10-28 - */ -@Data -@EqualsAndHashCode(callSuper = true) -@Accessors(chain = true) -@TableName("CU_MEMBER_RANGE_MONTH") -public class CuMemberRangeMonth extends BaseEntity { - - private static final long serialVersionUID = 1L; - - /** - * 会员ID - */ - @TableField("PK_MEMBER") - private Long pkMember; - - /** - * 期数 - */ - @TableField("PERIOD") - private Integer period; - - /** - * 结算日期 - */ - @TableField("SETTLE_DATE") - private Date settleDate; - - /** - * 个人新增PV - */ - @TableField("NEW_PV") - private BigDecimal newPv; - - /** - * 团队新增PV - */ - @TableField("NEW_TEAM_PV") - private BigDecimal newTeamPv; - - -} diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index f705282d..ceaf9aa9 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -280,5 +280,10 @@ public class CuMemberRetailDetail { @TableField("POINT_MEMBER_THIRD") private Long pointMemberThird; + /** + * 更新标记(不为null则需要入库) + */ + @TableField(exist = false) + private Integer updateBool; } From 800d9db8fa1d99552f3908482abb38a9f28570b2 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 16:26:15 +0800 Subject: [PATCH 207/362] =?UTF-8?q?##=20Opt=20-=20=E7=A7=92=E7=BB=93MQ(?= =?UTF-8?q?=E4=B8=8B=E5=8D=95/=E6=92=A4=E5=8D=95)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 3 + .../service/ICuMemberRetailRangeService.java | 1 + .../impl/CuMemberRetailRangeServiceImpl.java | 5 ++ .../hzs/bonus/base/mapper/CuMemberMapper.java | 3 + .../bonus/base/service/ICuMemberService.java | 3 + .../service/impl/CuMemberServiceImpl.java | 6 ++ .../service/impl/BonusSettleServiceImpl.java | 13 +++- .../achieve/CuMemberRetailRangeMapper.xml | 61 ++++++++++++++++--- .../mapper/bonus/base/CuMemberMapper.xml | 4 ++ .../manage/CuUmbrellaBelowPushController.java | 5 +- .../manage/OrderSingleItemStatController.java | 7 +-- .../service/impl/RetailOrderServiceImpl.java | 27 ++++---- .../service/impl/SaOrderServiceImpl.java | 6 +- .../com/hzs/common/core/utils/DateUtils.java | 25 ++++++++ 14 files changed, 136 insertions(+), 33 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index d3b1e4c7..13cca34f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -127,4 +127,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + + void initMemberRetailSecondRange(@Param("tableName") String tableName, @Param("member") CuMemberExt memberList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 8b805aa7..e9a7eb2e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -87,4 +87,5 @@ public interface ICuMemberRetailRangeService extends IService pkMemberList, Integer updateType, String symbol); + void initMemberRetailSecondRange(String tableName, CuMemberExt member); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 9a50232d..7b7276bb 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -139,6 +139,11 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl> setUpdCuMemberTreeLists(Map cuMemberTreeMap) { List cuMemberTreeList = new ArrayList<>(); cuMemberTreeMap.forEach((key, value) -> cuMemberTreeList.add(value)); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java index 2d21daf6..5675063a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java @@ -5,6 +5,7 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; import org.apache.ibatis.annotations.Param; +import java.io.Serializable; import java.util.Date; import java.util.List; @@ -13,6 +14,8 @@ import java.util.List; */ public interface CuMemberMapper extends BaseMapper { + CuMember getByPkId(@Param("pkId") Serializable id); + /** * 更新会员奖衔根据临时表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 8ccbffd5..28b2ba62 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -3,7 +3,9 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; +import org.apache.ibatis.annotations.Param; +import java.io.Serializable; import java.util.Date; import java.util.List; @@ -12,6 +14,7 @@ import java.util.List; */ public interface ICuMemberService extends IService { + CuMember getByPkId(Serializable id); /** * 更新会员奖衔根据临时表 -- 日结 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index e1e193a2..c0272a6d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -8,6 +8,7 @@ import com.hzs.common.domain.member.detail.CuMemberAwards; import com.hzs.bonus.base.mapper.CuMemberMapper; import org.springframework.stereotype.Service; +import java.io.Serializable; import java.util.*; /** @@ -16,6 +17,11 @@ import java.util.*; @Service public class CuMemberServiceImpl extends ServiceImpl implements ICuMemberService { + @Override + public CuMember getByPkId(Serializable id) { + return baseMapper.getByPkId(id); + } + @Override public void updateCuMemberRetailRangeByPeriod(Integer period) { baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index bf6b5e51..f6c7ff35 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -1,7 +1,9 @@ package com.hzs.bonus.bonus.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.base.service.ICuMemberService; @@ -26,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional; import java.time.temporal.ChronoUnit; import java.util.*; +import java.util.stream.Collectors; /** * 奖金结算服务类 @@ -182,7 +185,15 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 秒结表名 String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); - CuMember self = iCuMemberService.getById(orderExt.getPkId()); + CuMember self = iCuMemberService.getByPkId(orderExt.getPkMember()); + CuMemberExt initSelf = new CuMemberExt(); + BeanUtil.copyProperties(self, initSelf); + List initMemberList = new ArrayList<>(); + initMemberList.add(initSelf); + initMemberList.addAll(memberList); + for (CuMemberExt memberExt : initMemberList) { + iCuMemberRetailRangeService.initMemberRetailSecondRange(secondRangeTableName, memberExt); + } iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 610ce41a..d6667d93 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -540,7 +540,7 @@ ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} WHERE - PK_MEMBER = #{pkMember} + PK_MEMBER = #{cuMember.pkId}
UPDATE ${tableName} @@ -554,13 +554,56 @@ REP_TEAM_NEW_PV = REP_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, ALL_TEAM_NEW_AMOUNT = ALL_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, - ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve} WHERE PK_MEMBER in #{member.pkId} + + INSERT INTO ${tableName} ( + "PK_MEMBER", + "PK_PARENT", + "PK_GRADE", + "PK_AWARDS", + "ALL_CONSUME_NEW_AMOUNT", + "ALL_CONSUME_NEW_PV", + "ALL_TEAM_NEW_AMOUNT", + "ALL_TEAM_NEW_PV", + "REG_CONSUME_NEW_AMOUNT", + "REG_CONSUME_NEW_PV", + "REG_TEAM_NEW_AMOUNT", + "REG_TEAM_NEW_PV", + "REP_CONSUME_NEW_AMOUNT", + "REP_CONSUME_NEW_PV", + "REP_TEAM_NEW_AMOUNT", + "REP_TEAM_NEW_PV" + ) + SELECT + #{member.pkId}, + #{member.pkParent}, + #{member.pkSettleGrade}, + #{member.pkAwards}, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + FROM DUAL + WHERE NOT EXISTS ( + SELECT 1 + FROM ${tableName} + WHERE "PK_MEMBER" = #{member.pkId} + ) + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml index 038c7f0c..d2756848 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml @@ -239,5 +239,9 @@ a.modified_time = sysdate
+ diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java index 3ffddaf8..b23a93ad 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java @@ -13,14 +13,11 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.IMemberServiceApi; import com.hzs.report.member.service.IMemberService; -import com.hzs.report.member.vo.MallPVStatVO; import com.hzs.report.member.vo.UmbrellaBelowPushVO; -import com.hzs.sale.order.ISaOrderServiceApi; +import com.hzs.report.order.ISaOrderServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java index 237dcd88..3f22ed44 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java @@ -10,13 +10,12 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.PageDomain; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.core.web.page.TableSupport; -import com.hzs.sale.order.ISaOrderServiceApi; -import com.hzs.sale.order.dto.SingleItemStatDTO; -import com.hzs.sale.order.dto.SingleItemStatParamDTO; +import com.hzs.report.order.ISaOrderServiceApi; +import com.hzs.report.order.dto.SingleItemStatDTO; +import com.hzs.report.order.dto.SingleItemStatParamDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index d1c9090f..0e2d6742 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -51,6 +51,7 @@ import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; +import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -91,6 +92,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private RedisService redisService; + @Autowired + private RabbitTemplate rabbitTemplate; @DubboReference IGradeServiceApi iGradeServiceApi; @@ -577,16 +580,16 @@ public class RetailOrderServiceImpl implements IRetailOrderService { this.allProductSync(saOrderExt); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType() ) { // 计算奖金,通过mq分发消息,异步处理 saOrderExt.setCancelBool(Boolean.FALSE); -// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); + log.info("{} 秒结消息,order.second.exchange:{}", SysConstants.RETAIL_PREFIX, saOrderExt.getOrderCode()); + rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { - log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); + log.error("{} pushOrderMq 推送MQ失败. order: {}", SysConstants.RETAIL_PREFIX, saOrderExt, e); } } @@ -742,18 +745,16 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private Boolean handleMemberActivate(CuMember cuMember, SaOrderExt saOrder) { if ((null == cuMember.getIsActivate() || EYesNo.YES.getIntValue() != cuMember.getIsActivate()) - && EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) ) { // 会员激活状态为空 或 未激活,并且是 注册、升级 订单,判断会员是否激活 - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 存在指定盒数商品 - cuMember.setIsActivate(EYesNo.YES.getIntValue()); - if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { - cuMember.setPayTime(saOrder.getPayTime()); - cuMember.setPayStatus(EPayStatus.PAID.getValue()); - } - return true; + // 存在指定盒数商品 + cuMember.setIsActivate(EYesNo.YES.getIntValue()); + if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { + cuMember.setPayTime(saOrder.getPayTime()); + cuMember.setPayStatus(EPayStatus.PAID.getValue()); } + return true; } return false; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 551bc2a8..2ab130a6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1402,11 +1402,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 -// log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); -// rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); + log.info("{} 秒结消息,order.second.exchange:{}", SysConstants.RETAIL_PREFIX, saOrderExt.getOrderCode()); + rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { - log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); + log.error("{} pushOrderMq 推送MQ失败. order: {}", SysConstants.RETAIL_PREFIX, saOrderExt, e); } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java index aa66ce87..f40085e8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java @@ -1,5 +1,6 @@ package com.hzs.common.core.utils; +import cn.hutool.core.date.DateUtil; import org.apache.commons.lang3.time.DateFormatUtils; import java.text.ParseException; @@ -910,4 +911,28 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return daysStrList; } + + public static Date getStartOfDay(Date date) { + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + public static Date getEndOfDay(Date date) { + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(23).withMinute(59).withSecond(59).withNano(999999999); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + + public static Date getStartOfDay(String day) { + Date date = DateUtil.parse(day, "yyyy-MM-dd"); + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + public static Date getEndOfDay(String day) { + Date date = DateUtil.parse(day, "yyyy-MM-dd"); + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(23).withMinute(59).withSecond(59).withNano(999999999); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } } From ae08bd578c7b5bad832d26e007d601a606e78f7d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 16:35:44 +0800 Subject: [PATCH 208/362] =?UTF-8?q?##=20=E6=97=A5=E7=BB=93=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E5=94=AF=E4=B8=80=E7=B4=A2=E5=BC=95=E8=B0=83=E6=95=B4?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 2a39496d..dd57f034 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -343,7 +343,7 @@ create unique index PK_${tableName} on ${tableName} ( - PK_MEMBER, CHILD_NODE + PK_MEMBER, CHILD_NODE, STAGE ) From 6860d3359b3e8cd1d9731f1fd626812047e7ba31 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 22 Sep 2025 16:38:44 +0800 Subject: [PATCH 209/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84,=E5=AD=90=E4=BC=9A=E5=91=98=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=9F=A5=E8=AF=A2=E9=98=B6=E6=AE=B5=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E5=8F=AF=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- .../mapper/retail/member/CuMemberRetailDetailMapper.xml | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index bd3db03d..f7d1205f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -219,7 +219,7 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) @GetMapping("/three-framework") public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,String childNode,Integer stageStatus) { - if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null || childNode == null) { + if (memberSettlePeriodId == null || memberCode == null || stage == null || childNode == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } @@ -251,7 +251,7 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) @GetMapping("/childList") public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { - if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 08dff19e..a9e7abdd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -11,7 +11,9 @@ WHERE cu.MEMBER_CODE = #{ memberCode } AND cud.STAGE = #{ stage } - AND cud.STAGE_STATUS = #{ stageStatus } + + and cud.STAGE_STATUS = #{stageStatus} + From b57f668b50c523b9911737a3d0f7ad9a4474ced4 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 16:53:16 +0800 Subject: [PATCH 210/362] =?UTF-8?q?##=20Opt=20-=20=E6=92=A4=E5=8D=95?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BC=9A=E5=91=98=E8=B4=A6=E5=8F=B7=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/service/impl/RetailOrderServiceImpl.java | 2 +- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 0e2d6742..e660642f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -616,7 +616,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPayType(EOrderPayType.ONLINE.getValue()); RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); - boolean isShared = ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); + boolean isShared = ObjectUtil.isNotEmpty(registerParam) && ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || (isShared && EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) ) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 2ab130a6..a5869452 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1154,7 +1154,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderChargeLogService.save(saOrderChargeLog); // 撤销注册订单 - if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue()) { + CuMember member = memberServiceApi.getMember(myOrderVO.getPkMember()).getData(); + if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() + || (myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && myOrderVO.getPayTime().equals(member.getPayTime())) + ) { // 逻辑删除会员 if (!memberServiceApi.singleRevokeMemberBySelfRevokeOrder(pkApprove, saOrderExt, businessCommissionDTO).getData()) { throw new ServiceException("撤单失败"); From 864521137740bee79d625e18733de665a2eae685 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 17:51:33 +0800 Subject: [PATCH 211/362] ## Fix - OrderServiceApi --- .../controller/manage/CuUmbrellaBelowPushController.java | 2 +- .../controller/manage/OrderSingleItemStatController.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java index b23a93ad..4a7e45f5 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java @@ -17,7 +17,7 @@ import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.IMemberServiceApi; import com.hzs.report.member.service.IMemberService; import com.hzs.report.member.vo.UmbrellaBelowPushVO; -import com.hzs.report.order.ISaOrderServiceApi; +import com.hzs.sale.order.ISaOrderServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java index 3f22ed44..1a83cb87 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java @@ -13,9 +13,9 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.PageDomain; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.core.web.page.TableSupport; -import com.hzs.report.order.ISaOrderServiceApi; -import com.hzs.report.order.dto.SingleItemStatDTO; -import com.hzs.report.order.dto.SingleItemStatParamDTO; +import com.hzs.sale.order.ISaOrderServiceApi; +import com.hzs.sale.order.dto.SingleItemStatDTO; +import com.hzs.sale.order.dto.SingleItemStatParamDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; From 444c2be451e1814fe77874da30a0e564c4f62087 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 22 Sep 2025 18:00:30 +0800 Subject: [PATCH 212/362] =?UTF-8?q?##=20=E6=A0=A1=E9=AA=8C=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E6=97=A5=E7=BB=93=E8=A1=A8=E6=98=AF=E5=90=A6=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E6=B7=BB=E5=8A=A0=E9=9D=9E=E7=A9=BA=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index f7d1205f..43eaee5d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -229,7 +229,7 @@ public class MemberStructureController extends BaseController { log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); - if (isFind != 1) { + if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } @@ -261,7 +261,7 @@ public class MemberStructureController extends BaseController { log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); - if (isFind != 1) { + if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } From 7a5bc55ddf6500a8ccfb179dcdf321c7a0b02d5b Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 19:24:00 +0800 Subject: [PATCH 213/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E5=85=A5=E5=BA=93=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CuMemberRetailDetailServiceImpl.java | 12 +- .../hzs/bonus/bonus/dto/BonusStageData.java | 41 +++ .../service/ICuMemberBonusStageService.java | 44 ++- .../bonus/service/impl/BonusSettleHandle.java | 3 +- .../service/impl/BonusSettleRangeHandle.java | 211 ++++------- .../impl/CuMemberBonusStageServiceImpl.java | 348 +++++++++++++++--- .../hzs/bonus/constant/BonusConstants.java | 10 + .../bonus/bonus/CuMemberBonusStageMapper.xml | 3 +- .../achieve/ext/CuMemberRetailRangeExt.java | 10 +- .../domain/member/bonus/CuMemberBonus.java | 2 +- 10 files changed, 477 insertions(+), 207 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 46291351..e59bc8a9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -32,11 +32,17 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl()); + } + if (null == cuMemberRetailRangeExt.getTwoDetailMap()) { + cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>()); + } + if (null == cuMemberRetailRangeExt.getThreeDetailMap()) { + cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>()); + } if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { // 阶段一点位列表(使用有序map,为了后续业务处理方便) - if (null == cuMemberRetailRangeExt.getOneDetailMap()) { - cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); - } cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java new file mode 100644 index 00000000..36cdcbbe --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -0,0 +1,41 @@ +package com.hzs.bonus.bonus.dto; + +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * 阶段奖金数据 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class BonusStageData { + + /** + * 阶段奖金 + */ + private BigDecimal bonusIncome; + /** + * 奖金获取会员 + */ + private Long targetPkMember; + /** + * 奖金达标子点位 + */ + private Integer targetChildNode; + /** + * 第几阶段 + */ + private Integer stage; + /** + * 第几个点位 + */ + private Integer stageNum; + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 72592edd..3cc8468c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -1,15 +1,15 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.bonus.bonus.dto.BonusStageData; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; /** * 会员奖金-阶段收益明细表 服务类 @@ -40,29 +40,57 @@ public interface ICuMemberBonusStageService extends IService /** * 填充指定点位 */ - void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, - Long pkMember, Integer childNode); + boolean fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); /** * 处理新点位是推荐第一层 */ void handlePointFirst(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); /** * 处理新点位是推荐第二层 */ void handlePointSecond(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); /** * 处理新点位是推荐第三层 */ void handlePointThird(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); + + /** + * 处理填充第一层 + */ + boolean firstLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第二层 + */ + boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第三层 + */ + boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index f9ca8ea7..c00f9fb9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -1,6 +1,5 @@ package com.hzs.bonus.bonus.service.impl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.BonusFieldConstants; import com.hzs.common.core.constant.MagicNumberConstants; @@ -143,7 +142,7 @@ public abstract class BonusSettleHandle { cuMemberBonusRange.setRemark(remark); } - protected CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, + public CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, Long pkMember, Integer incomeStatus, Integer pkCountry, Integer pkRate) { if (cuMemberBonusMap.containsKey(pkMember)) { return cuMemberBonusMap.get(pkMember); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 50b3f5de..d25286d4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,14 +1,12 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; -import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; @@ -31,7 +29,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.lang.reflect.Field; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -328,29 +325,33 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List cuMemberBonusDetailList = new ArrayList<>(); for (SaOrderExt saOrderExt : orderList) { - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { - // 精品专区 + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区、甄选专区 // 直推收益 -- 来源订单金额,直推拿金额的10% this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单金额 - this.calculateStageIncome(cuMemberBonusStageList, memberRangeExtMap, saOrderExt, - settleStartDate, rangeTableName, rangeDetailTableName); + this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE); // TODO 领导级差收益 -- 来源PV // TODO 领导平差收益 -- 来源PV } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 商城专区 - // TODO 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% + // 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单业绩 + } } + // TODO 统一处理第二阶段还是 fillRetailDetail 方法进行处理 + if (cuMemberBonusPushList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); } @@ -371,7 +372,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); - CuMemberRetailRangeExt tt = memberRangeExtMap.get(20363L); // 更新日结明细数据 iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } @@ -932,8 +932,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 计算阶段收益 -- 精品专区 */ - private void calculateStageIncome(List cuMemberBonusStageList, Map memberRangeExtMap, SaOrderExt saOrderExt, - Date settleDate, String rangeTableName, String rangeDetailTableName) { + private void calculateStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage) { // 订单金额除50取整,为新増点位数量 int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); if (newPointInt == 0) { @@ -951,8 +953,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); - - newPointInt: for (int i = 1; i <= newPointInt; i++) { // 订单会员生成的新点位 CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() @@ -968,6 +968,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + // 阶段奖金处理列表 + List bonusStageDataList = new ArrayList<>(); // 推荐人 Long pkParent = sourceMember.getPkParent(); while (true) { @@ -984,143 +986,58 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 推荐人没有未完成点位,继续往上找 continue; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第一层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember11()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_11); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember12()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_12); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第二层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember21()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_21); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember22()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_22); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember23()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_23); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember24()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_24); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第三层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember31()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_31); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember32()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_32); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember33()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_33); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember34()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_34); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember35()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_35); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember36()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_36); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember37()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_37); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember38()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_38); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; } } + + if (CollectionUtil.isNotEmpty(bonusStageDataList)) { + // 有需要生成奖金的数据 + for (BonusStageData bonusStageData : bonusStageDataList) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(bonusStageData.getTargetPkMember()); + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 阶段奖金 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.STAGE_INCOME.getValue()); + // 阶段收益明细 + CuMemberBonusStage cuMemberBonusStage = iCuMemberBonusStageService.getCuMemberBonusStage(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusStage.setPretaxIncome(bonusStageData.getBonusIncome()); + cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); + cuMemberBonusStage.setStage(bonusStageData.getStage()); + cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { + cuMemberBonus.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonus.getStoreIncome(), cuMemberBonusStage.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusStage); + } + cuMemberBonusStageList.add(cuMemberBonusStage); + } + } + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 7a923d3b..a5d4d8de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -6,13 +6,13 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; +import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.constant.BonusConstants; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EBonusStage; -import com.hzs.common.core.enums.ECalType; +import com.hzs.common.core.enums.*; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; @@ -109,7 +109,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { if (null == targetRetailDetail) { return; } @@ -122,60 +123,80 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { if (null == targetRetailDetail) { return; } @@ -199,28 +221,34 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, sourceRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, sourceRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0); + + switch (point) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 + boolean isFinish = true; + for (String suffix : BonusConstants.FIELD_LIST) { + if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + isFinish = false; + break; + } + } + if (isFinish) { + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + // TODO 统一处理第二阶段还是 fillRetailDetail 方法进行处理 + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 一阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + bonusStageDataList.add(BonusStageData.builder() + .bonusIncome(BonusConstants.ONE_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build()); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + // 二阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + bonusStageDataList.add(BonusStageData.builder() + .bonusIncome(BonusConstants.TWO_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build()); + } + return true; + } + break; + } + return false; } @Override public void handlePointFirst(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第一层 newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); @@ -273,7 +351,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第二层 newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); @@ -341,7 +422,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第三层 newRetailDetail.setPointMemberThird(newParentRetailDetail.getPkMember()); newRetailDetail.setPointThird(newParentRetailDetail.getChildNode()); @@ -431,7 +515,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第一层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember11()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_11, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember12()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_12, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember22()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember23()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember24()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第三层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember31()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_31, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember32()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_32, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember33()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_33, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember34()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_34, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember35()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_35, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember36()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_36, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember37()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_37, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember38()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_38, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index 1fd4a965..e0ea54b8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import java.lang.reflect.Field; +import java.math.BigDecimal; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -11,6 +12,15 @@ import java.util.Map; public class BonusConstants { + /** + * 一阶段奖金 -- 满14,发35 + */ + public static final BigDecimal ONE_BONUS = new BigDecimal("35"); + /** + * 二阶段奖金 -- 满14,发220 + */ + public static final BigDecimal TWO_BONUS = new BigDecimal("220"); + public static final String POINT_11 = "11"; public static final String POINT_12 = "12"; public static final String POINT_21 = "21"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index fb2c6d16..42f3c685 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -26,8 +26,7 @@ values ( #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, #{item.calType}, #{item.calAchieve}, #{item.calValue}, - #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, - #{item.round}, #{item.second}, #{item.remark}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 2bd50421..b9e2a69e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -130,8 +130,16 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { // 秒结 end /** - * 阶段一点位列表 + * 一阶段点位列表 */ private LinkedHashMap oneDetailMap; + /** + * 二阶段点位列表 + */ + private LinkedHashMap twoDetailMap; + /** + * 三阶段点位列表 + */ + private LinkedHashMap threeDetailMap; } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index 6ac6da2b..3e8d8ded 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal carAwardPoints; /** - * 注册阶段收益-众康 + * 阶段收益-众康 */ @TableField("STORE_INCOME") private BigDecimal storeIncome; From 9868e5fabbe3e6227c0a9aaa36ff1e4c19cfb000 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 16:35:44 +0800 Subject: [PATCH 214/362] =?UTF-8?q?##=20=E6=97=A5=E7=BB=93=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E5=94=AF=E4=B8=80=E7=B4=A2=E5=BC=95=E8=B0=83=E6=95=B4?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 2a39496d..dd57f034 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -343,7 +343,7 @@ create unique index PK_${tableName} on ${tableName} ( - PK_MEMBER, CHILD_NODE + PK_MEMBER, CHILD_NODE, STAGE ) From 8ccf1f4c9abbc262cbc364085b1477b925f309cc Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 22 Sep 2025 16:38:44 +0800 Subject: [PATCH 215/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84,=E5=AD=90=E4=BC=9A=E5=91=98=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=9F=A5=E8=AF=A2=E9=98=B6=E6=AE=B5=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E5=8F=AF=E4=B8=BA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- .../mapper/retail/member/CuMemberRetailDetailMapper.xml | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index bd3db03d..f7d1205f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -219,7 +219,7 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) @GetMapping("/three-framework") public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,String childNode,Integer stageStatus) { - if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null || childNode == null) { + if (memberSettlePeriodId == null || memberCode == null || stage == null || childNode == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } @@ -251,7 +251,7 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) @GetMapping("/childList") public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { - if (memberSettlePeriodId == null || memberCode == null || stage == null || stageStatus == null) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 08dff19e..a9e7abdd 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -11,7 +11,9 @@ WHERE cu.MEMBER_CODE = #{ memberCode } AND cud.STAGE = #{ stage } - AND cud.STAGE_STATUS = #{ stageStatus } + + and cud.STAGE_STATUS = #{stageStatus} + From 817bca75534604c47bd2a930a3d3be5a1e1b8260 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 16:26:15 +0800 Subject: [PATCH 216/362] =?UTF-8?q?##=20Opt=20-=20=E7=A7=92=E7=BB=93MQ(?= =?UTF-8?q?=E4=B8=8B=E5=8D=95/=E6=92=A4=E5=8D=95)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 3 + .../service/ICuMemberRetailRangeService.java | 1 + .../impl/CuMemberRetailRangeServiceImpl.java | 5 ++ .../hzs/bonus/base/mapper/CuMemberMapper.java | 3 + .../bonus/base/service/ICuMemberService.java | 3 + .../service/impl/CuMemberServiceImpl.java | 6 ++ .../service/impl/BonusSettleServiceImpl.java | 13 +++- .../achieve/CuMemberRetailRangeMapper.xml | 61 ++++++++++++++++--- .../mapper/bonus/base/CuMemberMapper.xml | 4 ++ .../manage/CuUmbrellaBelowPushController.java | 5 +- .../manage/OrderSingleItemStatController.java | 7 +-- .../service/impl/RetailOrderServiceImpl.java | 16 +++-- .../com/hzs/common/core/utils/DateUtils.java | 25 ++++++++ 13 files changed, 126 insertions(+), 26 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index d3b1e4c7..13cca34f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -127,4 +127,7 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + + void initMemberRetailSecondRange(@Param("tableName") String tableName, @Param("member") CuMemberExt memberList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 8b805aa7..e9a7eb2e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -87,4 +87,5 @@ public interface ICuMemberRetailRangeService extends IService pkMemberList, Integer updateType, String symbol); + void initMemberRetailSecondRange(String tableName, CuMemberExt member); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 38a019a3..87745682 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -149,6 +149,11 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl> setUpdCuMemberTreeLists(Map cuMemberTreeMap) { List cuMemberTreeList = new ArrayList<>(); cuMemberTreeMap.forEach((key, value) -> cuMemberTreeList.add(value)); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java index 2d21daf6..5675063a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java @@ -5,6 +5,7 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; import org.apache.ibatis.annotations.Param; +import java.io.Serializable; import java.util.Date; import java.util.List; @@ -13,6 +14,8 @@ import java.util.List; */ public interface CuMemberMapper extends BaseMapper { + CuMember getByPkId(@Param("pkId") Serializable id); + /** * 更新会员奖衔根据临时表 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 8ccbffd5..28b2ba62 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -3,7 +3,9 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; +import org.apache.ibatis.annotations.Param; +import java.io.Serializable; import java.util.Date; import java.util.List; @@ -12,6 +14,7 @@ import java.util.List; */ public interface ICuMemberService extends IService { + CuMember getByPkId(Serializable id); /** * 更新会员奖衔根据临时表 -- 日结 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index e1e193a2..c0272a6d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -8,6 +8,7 @@ import com.hzs.common.domain.member.detail.CuMemberAwards; import com.hzs.bonus.base.mapper.CuMemberMapper; import org.springframework.stereotype.Service; +import java.io.Serializable; import java.util.*; /** @@ -16,6 +17,11 @@ import java.util.*; @Service public class CuMemberServiceImpl extends ServiceImpl implements ICuMemberService { + @Override + public CuMember getByPkId(Serializable id) { + return baseMapper.getByPkId(id); + } + @Override public void updateCuMemberRetailRangeByPeriod(Integer period) { baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index bf6b5e51..f6c7ff35 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -1,7 +1,9 @@ package com.hzs.bonus.bonus.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.base.service.ICuMemberService; @@ -26,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional; import java.time.temporal.ChronoUnit; import java.util.*; +import java.util.stream.Collectors; /** * 奖金结算服务类 @@ -182,7 +185,15 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 秒结表名 String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); - CuMember self = iCuMemberService.getById(orderExt.getPkId()); + CuMember self = iCuMemberService.getByPkId(orderExt.getPkMember()); + CuMemberExt initSelf = new CuMemberExt(); + BeanUtil.copyProperties(self, initSelf); + List initMemberList = new ArrayList<>(); + initMemberList.add(initSelf); + initMemberList.addAll(memberList); + for (CuMemberExt memberExt : initMemberList) { + iCuMemberRetailRangeService.initMemberRetailSecondRange(secondRangeTableName, memberExt); + } iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 610ce41a..d6667d93 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -540,7 +540,7 @@ ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} WHERE - PK_MEMBER = #{pkMember} + PK_MEMBER = #{cuMember.pkId} UPDATE ${tableName} @@ -554,13 +554,56 @@ REP_TEAM_NEW_PV = REP_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, ALL_TEAM_NEW_AMOUNT = ALL_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, - ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve} WHERE PK_MEMBER in #{member.pkId} + + INSERT INTO ${tableName} ( + "PK_MEMBER", + "PK_PARENT", + "PK_GRADE", + "PK_AWARDS", + "ALL_CONSUME_NEW_AMOUNT", + "ALL_CONSUME_NEW_PV", + "ALL_TEAM_NEW_AMOUNT", + "ALL_TEAM_NEW_PV", + "REG_CONSUME_NEW_AMOUNT", + "REG_CONSUME_NEW_PV", + "REG_TEAM_NEW_AMOUNT", + "REG_TEAM_NEW_PV", + "REP_CONSUME_NEW_AMOUNT", + "REP_CONSUME_NEW_PV", + "REP_TEAM_NEW_AMOUNT", + "REP_TEAM_NEW_PV" + ) + SELECT + #{member.pkId}, + #{member.pkParent}, + #{member.pkSettleGrade}, + #{member.pkAwards}, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + FROM DUAL + WHERE NOT EXISTS ( + SELECT 1 + FROM ${tableName} + WHERE "PK_MEMBER" = #{member.pkId} + ) + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml index 038c7f0c..d2756848 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml @@ -239,5 +239,9 @@ a.modified_time = sysdate + diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java index 3ffddaf8..b23a93ad 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java @@ -13,14 +13,11 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.IMemberServiceApi; import com.hzs.report.member.service.IMemberService; -import com.hzs.report.member.vo.MallPVStatVO; import com.hzs.report.member.vo.UmbrellaBelowPushVO; -import com.hzs.sale.order.ISaOrderServiceApi; +import com.hzs.report.order.ISaOrderServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java index 237dcd88..3f22ed44 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java @@ -10,13 +10,12 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.PageDomain; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.core.web.page.TableSupport; -import com.hzs.sale.order.ISaOrderServiceApi; -import com.hzs.sale.order.dto.SingleItemStatDTO; -import com.hzs.sale.order.dto.SingleItemStatParamDTO; +import com.hzs.report.order.ISaOrderServiceApi; +import com.hzs.report.order.dto.SingleItemStatDTO; +import com.hzs.report.order.dto.SingleItemStatParamDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 8fda2f70..0e2d6742 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -745,18 +745,16 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private Boolean handleMemberActivate(CuMember cuMember, SaOrderExt saOrder) { if ((null == cuMember.getIsActivate() || EYesNo.YES.getIntValue() != cuMember.getIsActivate()) - && EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) ) { // 会员激活状态为空 或 未激活,并且是 注册、升级 订单,判断会员是否激活 - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 存在指定盒数商品 - cuMember.setIsActivate(EYesNo.YES.getIntValue()); - if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { - cuMember.setPayTime(saOrder.getPayTime()); - cuMember.setPayStatus(EPayStatus.PAID.getValue()); - } - return true; + // 存在指定盒数商品 + cuMember.setIsActivate(EYesNo.YES.getIntValue()); + if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { + cuMember.setPayTime(saOrder.getPayTime()); + cuMember.setPayStatus(EPayStatus.PAID.getValue()); } + return true; } return false; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java index aa66ce87..f40085e8 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DateUtils.java @@ -1,5 +1,6 @@ package com.hzs.common.core.utils; +import cn.hutool.core.date.DateUtil; import org.apache.commons.lang3.time.DateFormatUtils; import java.text.ParseException; @@ -910,4 +911,28 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils { return daysStrList; } + + public static Date getStartOfDay(Date date) { + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + public static Date getEndOfDay(Date date) { + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(23).withMinute(59).withSecond(59).withNano(999999999); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + + public static Date getStartOfDay(String day) { + Date date = DateUtil.parse(day, "yyyy-MM-dd"); + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(0).withMinute(0).withSecond(0).withNano(0); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } + public static Date getEndOfDay(String day) { + Date date = DateUtil.parse(day, "yyyy-MM-dd"); + LocalDateTime localDateTime = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(); + LocalDateTime endOfDay = localDateTime.withHour(23).withMinute(59).withSecond(59).withNano(999999999); + return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); + } } From d2fd2c87c833dce8414d707c14d4604f6cee5f62 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 16:53:16 +0800 Subject: [PATCH 217/362] =?UTF-8?q?##=20Opt=20-=20=E6=92=A4=E5=8D=95?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BC=9A=E5=91=98=E8=B4=A6=E5=8F=B7=E9=AA=8C?= =?UTF-8?q?=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/controller/service/impl/RetailOrderServiceImpl.java | 2 +- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 0e2d6742..e660642f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -616,7 +616,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPayType(EOrderPayType.ONLINE.getValue()); RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); - boolean isShared = ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); + boolean isShared = ObjectUtil.isNotEmpty(registerParam) && ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || (isShared && EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) ) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 2ab130a6..a5869452 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1154,7 +1154,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderChargeLogService.save(saOrderChargeLog); // 撤销注册订单 - if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue()) { + CuMember member = memberServiceApi.getMember(myOrderVO.getPkMember()).getData(); + if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() + || (myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && myOrderVO.getPayTime().equals(member.getPayTime())) + ) { // 逻辑删除会员 if (!memberServiceApi.singleRevokeMemberBySelfRevokeOrder(pkApprove, saOrderExt, businessCommissionDTO).getData()) { throw new ServiceException("撤单失败"); From f59c0ec32aab72afdfedcaad9afd9a4375a20f9d Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 22 Sep 2025 17:51:33 +0800 Subject: [PATCH 218/362] ## Fix - OrderServiceApi --- .../controller/manage/CuUmbrellaBelowPushController.java | 2 +- .../controller/manage/OrderSingleItemStatController.java | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java index b23a93ad..4a7e45f5 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/CuUmbrellaBelowPushController.java @@ -17,7 +17,7 @@ import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.IMemberServiceApi; import com.hzs.report.member.service.IMemberService; import com.hzs.report.member.vo.UmbrellaBelowPushVO; -import com.hzs.report.order.ISaOrderServiceApi; +import com.hzs.sale.order.ISaOrderServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java index 3f22ed44..1a83cb87 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/member/controller/manage/OrderSingleItemStatController.java @@ -13,9 +13,9 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.PageDomain; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.core.web.page.TableSupport; -import com.hzs.report.order.ISaOrderServiceApi; -import com.hzs.report.order.dto.SingleItemStatDTO; -import com.hzs.report.order.dto.SingleItemStatParamDTO; +import com.hzs.sale.order.ISaOrderServiceApi; +import com.hzs.sale.order.dto.SingleItemStatDTO; +import com.hzs.sale.order.dto.SingleItemStatParamDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; From 521de1ed7b12d116d07aaa35587396739beab521 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 22 Sep 2025 18:00:30 +0800 Subject: [PATCH 219/362] =?UTF-8?q?##=20=E6=A0=A1=E9=AA=8C=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E6=97=A5=E7=BB=93=E8=A1=A8=E6=98=AF=E5=90=A6=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E6=B7=BB=E5=8A=A0=E9=9D=9E=E7=A9=BA=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index f7d1205f..43eaee5d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -229,7 +229,7 @@ public class MemberStructureController extends BaseController { log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); - if (isFind != 1) { + if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } @@ -261,7 +261,7 @@ public class MemberStructureController extends BaseController { log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); - if (isFind != 1) { + if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } From 8642d1aca3d6b420beac27d57f092c21af40859c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 22 Sep 2025 19:24:00 +0800 Subject: [PATCH 220/362] =?UTF-8?q?##=20=E4=B8=80=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E5=85=A5=E5=BA=93=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CuMemberRetailDetailServiceImpl.java | 12 +- .../hzs/bonus/bonus/dto/BonusStageData.java | 41 +++ .../service/ICuMemberBonusStageService.java | 44 ++- .../bonus/service/impl/BonusSettleHandle.java | 3 +- .../service/impl/BonusSettleRangeHandle.java | 211 ++++------- .../impl/CuMemberBonusStageServiceImpl.java | 348 +++++++++++++++--- .../hzs/bonus/constant/BonusConstants.java | 10 + .../bonus/bonus/CuMemberBonusStageMapper.xml | 3 +- .../achieve/ext/CuMemberRetailRangeExt.java | 10 +- .../domain/member/bonus/CuMemberBonus.java | 2 +- 10 files changed, 477 insertions(+), 207 deletions(-) create mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 46291351..e59bc8a9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -32,11 +32,17 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl()); + } + if (null == cuMemberRetailRangeExt.getTwoDetailMap()) { + cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>()); + } + if (null == cuMemberRetailRangeExt.getThreeDetailMap()) { + cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>()); + } if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { // 阶段一点位列表(使用有序map,为了后续业务处理方便) - if (null == cuMemberRetailRangeExt.getOneDetailMap()) { - cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); - } cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java new file mode 100644 index 00000000..36cdcbbe --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -0,0 +1,41 @@ +package com.hzs.bonus.bonus.dto; + +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * 阶段奖金数据 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class BonusStageData { + + /** + * 阶段奖金 + */ + private BigDecimal bonusIncome; + /** + * 奖金获取会员 + */ + private Long targetPkMember; + /** + * 奖金达标子点位 + */ + private Integer targetChildNode; + /** + * 第几阶段 + */ + private Integer stage; + /** + * 第几个点位 + */ + private Integer stageNum; + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 72592edd..3cc8468c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -1,15 +1,15 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.bonus.bonus.dto.BonusStageData; +import com.hzs.common.core.enums.EBonusStage; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; /** * 会员奖金-阶段收益明细表 服务类 @@ -40,29 +40,57 @@ public interface ICuMemberBonusStageService extends IService /** * 填充指定点位 */ - void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, - Long pkMember, Integer childNode); + boolean fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); /** * 处理新点位是推荐第一层 */ void handlePointFirst(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); /** * 处理新点位是推荐第二层 */ void handlePointSecond(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); /** * 处理新点位是推荐第三层 */ void handlePointThird(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode); + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); + + /** + * 处理填充第一层 + */ + boolean firstLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第二层 + */ + boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第三层 + */ + boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index f9ca8ea7..c00f9fb9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -1,6 +1,5 @@ package com.hzs.bonus.bonus.service.impl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.BonusFieldConstants; import com.hzs.common.core.constant.MagicNumberConstants; @@ -143,7 +142,7 @@ public abstract class BonusSettleHandle { cuMemberBonusRange.setRemark(remark); } - protected CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, + public CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, Long pkMember, Integer incomeStatus, Integer pkCountry, Integer pkRate) { if (cuMemberBonusMap.containsKey(pkMember)) { return cuMemberBonusMap.get(pkMember); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 50b3f5de..d25286d4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,14 +1,12 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; -import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; @@ -31,7 +29,6 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; -import java.lang.reflect.Field; import java.math.BigDecimal; import java.math.RoundingMode; import java.time.temporal.ChronoUnit; @@ -328,29 +325,33 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List cuMemberBonusDetailList = new ArrayList<>(); for (SaOrderExt saOrderExt : orderList) { - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { - // 精品专区 + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区、甄选专区 // 直推收益 -- 来源订单金额,直推拿金额的10% this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单金额 - this.calculateStageIncome(cuMemberBonusStageList, memberRangeExtMap, saOrderExt, - settleStartDate, rangeTableName, rangeDetailTableName); + this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE); // TODO 领导级差收益 -- 来源PV // TODO 领导平差收益 -- 来源PV } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 商城专区 - // TODO 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% + // 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); // TODO 阶段收益 -- 来源订单业绩 + } } + // TODO 统一处理第二阶段还是 fillRetailDetail 方法进行处理 + if (cuMemberBonusPushList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); } @@ -371,7 +372,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); - CuMemberRetailRangeExt tt = memberRangeExtMap.get(20363L); // 更新日结明细数据 iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } @@ -932,8 +932,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { /** * 计算阶段收益 -- 精品专区 */ - private void calculateStageIncome(List cuMemberBonusStageList, Map memberRangeExtMap, SaOrderExt saOrderExt, - Date settleDate, String rangeTableName, String rangeDetailTableName) { + private void calculateStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage) { // 订单金额除50取整,为新増点位数量 int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); if (newPointInt == 0) { @@ -951,8 +953,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); - - newPointInt: for (int i = 1; i <= newPointInt; i++) { // 订单会员生成的新点位 CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() @@ -968,6 +968,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + // 阶段奖金处理列表 + List bonusStageDataList = new ArrayList<>(); // 推荐人 Long pkParent = sourceMember.getPkParent(); while (true) { @@ -984,143 +986,58 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 推荐人没有未完成点位,继续往上找 continue; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第一层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember11()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_11); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember12()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第一层 - iCuMemberBonusStageService.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_12); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第二层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember21()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_21); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember22()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_22); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember23()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_23); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember24()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第二层 - iCuMemberBonusStageService.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_24); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; } - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第三层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember31()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_31); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember32()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_32); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember33()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_33); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember34()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_34); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember35()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_35); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember36()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_36); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember37()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_37); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } else if (null == parentRetailDetail.getPointMember38()) { - iCuMemberBonusStageService.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, - newRetailDetail.getPkMember(), newRetailDetail.getChildNode()); - // 新点位是推荐人点位的第三层 - iCuMemberBonusStageService.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_38); - // 当前新子点位填充完成,进入下一个新子点位 - continue newPointInt; - } - } + + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; } } + + if (CollectionUtil.isNotEmpty(bonusStageDataList)) { + // 有需要生成奖金的数据 + for (BonusStageData bonusStageData : bonusStageDataList) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(bonusStageData.getTargetPkMember()); + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 阶段奖金 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.STAGE_INCOME.getValue()); + // 阶段收益明细 + CuMemberBonusStage cuMemberBonusStage = iCuMemberBonusStageService.getCuMemberBonusStage(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusStage.setPretaxIncome(bonusStageData.getBonusIncome()); + cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); + cuMemberBonusStage.setStage(bonusStageData.getStage()); + cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { + cuMemberBonus.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonus.getStoreIncome(), cuMemberBonusStage.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusStage); + } + cuMemberBonusStageList.add(cuMemberBonusStage); + } + } + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 7a923d3b..a5d4d8de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -6,13 +6,13 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; +import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.constant.BonusConstants; import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EBonusStage; -import com.hzs.common.core.enums.ECalType; +import com.hzs.common.core.enums.*; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; @@ -109,7 +109,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { if (null == targetRetailDetail) { return; } @@ -122,60 +123,80 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { if (null == targetRetailDetail) { return; } @@ -199,28 +221,34 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, sourceRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, sourceRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0); + + switch (point) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 + boolean isFinish = true; + for (String suffix : BonusConstants.FIELD_LIST) { + if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + isFinish = false; + break; + } + } + if (isFinish) { + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + // TODO 统一处理第二阶段还是 fillRetailDetail 方法进行处理 + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 一阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + bonusStageDataList.add(BonusStageData.builder() + .bonusIncome(BonusConstants.ONE_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build()); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + // 二阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + bonusStageDataList.add(BonusStageData.builder() + .bonusIncome(BonusConstants.TWO_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build()); + } + return true; + } + break; + } + return false; } @Override public void handlePointFirst(Map memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第一层 newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); @@ -273,7 +351,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第二层 newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); @@ -341,7 +422,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl memberRangeExtMap, CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, - String rangeTableName, String rangeDetailTableName, String newNode) { + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { // 新点位的上第三层 newRetailDetail.setPointMemberThird(newParentRetailDetail.getPkMember()); newRetailDetail.setPointThird(newParentRetailDetail.getChildNode()); @@ -431,7 +515,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第一层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember11()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_11, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember12()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_12, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember22()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember23()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember24()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第三层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember31()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_31, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember32()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_32, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember33()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_33, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember34()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_34, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember35()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_35, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember36()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_36, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember37()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_37, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember38()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_38, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index 1fd4a965..e0ea54b8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.ReflectUtil; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import java.lang.reflect.Field; +import java.math.BigDecimal; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -11,6 +12,15 @@ import java.util.Map; public class BonusConstants { + /** + * 一阶段奖金 -- 满14,发35 + */ + public static final BigDecimal ONE_BONUS = new BigDecimal("35"); + /** + * 二阶段奖金 -- 满14,发220 + */ + public static final BigDecimal TWO_BONUS = new BigDecimal("220"); + public static final String POINT_11 = "11"; public static final String POINT_12 = "12"; public static final String POINT_21 = "21"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index fb2c6d16..42f3c685 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -26,8 +26,7 @@ values ( #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, #{item.calType}, #{item.calAchieve}, #{item.calValue}, - #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, - #{item.round}, #{item.second}, #{item.remark}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 2bd50421..b9e2a69e 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -130,8 +130,16 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { // 秒结 end /** - * 阶段一点位列表 + * 一阶段点位列表 */ private LinkedHashMap oneDetailMap; + /** + * 二阶段点位列表 + */ + private LinkedHashMap twoDetailMap; + /** + * 三阶段点位列表 + */ + private LinkedHashMap threeDetailMap; } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index 6ac6da2b..3e8d8ded 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -188,7 +188,7 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal carAwardPoints; /** - * 注册阶段收益-众康 + * 阶段收益-众康 */ @TableField("STORE_INCOME") private BigDecimal storeIncome; From 26c5325bcbf55a9a4b5f7bc3e5dae9b7e03670a4 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 23 Sep 2025 09:49:16 +0800 Subject: [PATCH 221/362] =?UTF-8?q?##=20Opt=20-=20=E5=8C=BA=E5=88=86?= =?UTF-8?q?=E7=B2=BE=E5=93=81=E4=B8=93=E5=8C=BA/=E5=95=86=E5=9F=8E?= =?UTF-8?q?=E4=B8=93=E5=8C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/CuMemberBusinessServiceImpl.java | 7 +++++-- .../main/resources/mapper/member/base/CuMemberMapper.xml | 2 +- .../controller/service/impl/RetailOrderServiceImpl.java | 3 ++- .../hzs/sale/order/service/impl/SaOrderServiceImpl.java | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index fa151657..fa14d091 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -621,10 +621,13 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberBySelfRevokeOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); // 回退给创建人 + CuMember member = cuMemberService.getMember(saOrder.getPkMember()); CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { + if ( + EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + || (saOrder.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && saOrder.getPayTime().equals(member.getPayTime())) + ) { // 会员账号 验证会员账户是否存在金额 - CuMember member = cuMemberService.getMember(saOrder.getPkMember()); //删除会员 LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index 34562b58..7b65a071 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -2402,7 +2402,7 @@ inner join cu_member cm on cm.pk_id = so.pk_creator where so.del_flag = 0 - and so.order_type = 41 + and so.order_type in (41, 43) and so.order_code = #{orderCode} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index e660642f..12591e9a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -636,7 +636,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPkMember(newMember.getPkId()); if(ObjectUtil.isNotEmpty(registerParam.getCuMemberShare())){ saOrderExt.setPkReference(registerParam.getCuMemberShare().getPkParent()); - saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); +// saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); + saOrderExt.setOrderType(registerParam.getSpecialArea()); } resultStr = this.payRegOrder(saOrderExt, newMember, null); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index a5869452..ed814c32 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1154,7 +1154,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderChargeLogService.save(saOrderChargeLog); // 撤销注册订单 - CuMember member = memberServiceApi.getMember(myOrderVO.getPkMember()).getData(); + CuMember member = memberServiceApi.getMember(SecurityUtils.getUserId()).getData(); if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() || (myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && myOrderVO.getPayTime().equals(member.getPayTime())) ) { From 12d1e8f0f89fe70aaa4798c8f72991956f95cb88 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 10:08:15 +0800 Subject: [PATCH 222/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BD=BF=E7=94=A8=E6=9E=9A=E4=B8=BE,?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8A=82=E7=82=B9=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ICumemberRetailDetailImpl.java | 33 +++++----- .../core/enums/EMemberChildNodeType.java | 65 +++++++++++++++++++ 2 files changed, 82 insertions(+), 16 deletions(-) create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java index 83cc5881..8bf481b4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EMemberChildNodeType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; @@ -63,27 +64,27 @@ public class ICumemberRetailDetailImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode("root", "0", "root", cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getPkMember(), memberMap)); - nodeList.add(makeNode("1", "root", "1", cuMemberRetailDetail.getPointMember11(), memberMap)); - nodeList.add(makeNode("2", "root", "2", cuMemberRetailDetail.getPointMember12(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPointMember12(), memberMap)); - nodeList.add(makeNode("3", "1", "3", cuMemberRetailDetail.getPointMember21(), memberMap)); - nodeList.add(makeNode("4", "1", "4", cuMemberRetailDetail.getPointMember22(), memberMap)); - nodeList.add(makeNode("5", "2", "5", cuMemberRetailDetail.getPointMember23(), memberMap)); - nodeList.add(makeNode("6", "2", "6", cuMemberRetailDetail.getPointMember24(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPointMember24(), memberMap)); - nodeList.add(makeNode("7", "3", "7", cuMemberRetailDetail.getPointMember31(), memberMap)); - nodeList.add(makeNode("8", "3", "8", cuMemberRetailDetail.getPointMember32(), memberMap)); - nodeList.add(makeNode("9", "4", "9", cuMemberRetailDetail.getPointMember33(), memberMap)); - nodeList.add(makeNode("10", "4", "10", cuMemberRetailDetail.getPointMember34(), memberMap)); - nodeList.add(makeNode("11", "5", "11", cuMemberRetailDetail.getPointMember35(), memberMap)); - nodeList.add(makeNode("12", "5", "12", cuMemberRetailDetail.getPointMember36(), memberMap)); - nodeList.add(makeNode("13", "6", "13", cuMemberRetailDetail.getPointMember37(), memberMap)); - nodeList.add(makeNode("14", "6", "14", cuMemberRetailDetail.getPointMember38(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPointMember38(), memberMap)); // 构造树结构 - return TreeUtil.build(nodeList, "0", (node, tree) -> { + return TreeUtil.build(nodeList, EMemberChildNodeType.ROOT.getParentId(), (node, tree) -> { tree.setId((String) node.get("id")); tree.setParentId((String) node.get("parentId")); tree.setName((String) node.get("label")); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java new file mode 100644 index 00000000..b56bf454 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java @@ -0,0 +1,65 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 三阶段节点枚举类 + */ +@AllArgsConstructor +@Getter +public enum EMemberChildNodeType { + + + /** + * 根节点 + */ + ROOT("0-root", "0", "0-root"), + + /** + * 第一层:根的子节点 + */ + /** + * 1-1 + */ + NODE1("1-1", "0-root", "1-1"), + /** + * 1-2 + */ + NODE2("1-2", "0-root", "1-2"), + + /** + * 第二层 + */ + NODE3("2-1", "1-1", "2-1"), + NODE4("2-2", "1-1", "2-2"), + NODE5("2-3", "1-2", "2-3"), + NODE6("2-4", "1-2", "2-4"), + + /** + * 第三层 + */ + NODE7("3-1", "2-1", "3-1"), + NODE8("3-2", "2-1", "3-2"), + NODE9("3-3", "2-2", "3-3"), + NODE10("3-4", "2-2", "3-4"), + NODE11("3-5", "2-3", "3-5"), + NODE12("3-6", "2-3", "3-6"), + NODE13("3-7", "2-4", "3-7"), + NODE14("3-8", "2-4", "3-8"); + + /** + * 点位子会员节点 + */ + private final String id; + + /** + * 节点 + */ + private final String parentId; + + /** + * 节点显示名称 + */ + private final String label; +} From 7dda5696407e1ca89944ac19392268de5aa36781 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 23 Sep 2025 10:24:56 +0800 Subject: [PATCH 223/362] =?UTF-8?q?##=20Opt=20-=20=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java | 2 +- .../main/resources/mapper/third/pay/TOnlinePaymentMapper.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java index 911d8a75..b9bf39d8 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/TOnlinePaymentServiceImpl.java @@ -62,7 +62,7 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index e660642f..12591e9a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -636,7 +636,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPkMember(newMember.getPkId()); if(ObjectUtil.isNotEmpty(registerParam.getCuMemberShare())){ saOrderExt.setPkReference(registerParam.getCuMemberShare().getPkParent()); - saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); +// saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); + saOrderExt.setOrderType(registerParam.getSpecialArea()); } resultStr = this.payRegOrder(saOrderExt, newMember, null); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index a5869452..ed814c32 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1154,7 +1154,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderChargeLogService.save(saOrderChargeLog); // 撤销注册订单 - CuMember member = memberServiceApi.getMember(myOrderVO.getPkMember()).getData(); + CuMember member = memberServiceApi.getMember(SecurityUtils.getUserId()).getData(); if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() || (myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && myOrderVO.getPayTime().equals(member.getPayTime())) ) { From de291e986aa47170055f0b2886835c4cb9926f1c Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 10:08:15 +0800 Subject: [PATCH 227/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BD=BF=E7=94=A8=E6=9E=9A=E4=B8=BE,?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=8A=82=E7=82=B9=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ICumemberRetailDetailImpl.java | 33 +++++----- .../core/enums/EMemberChildNodeType.java | 65 +++++++++++++++++++ 2 files changed, 82 insertions(+), 16 deletions(-) create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java index 83cc5881..8bf481b4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EMemberChildNodeType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; @@ -63,27 +64,27 @@ public class ICumemberRetailDetailImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode("root", "0", "root", cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getPkMember(), memberMap)); - nodeList.add(makeNode("1", "root", "1", cuMemberRetailDetail.getPointMember11(), memberMap)); - nodeList.add(makeNode("2", "root", "2", cuMemberRetailDetail.getPointMember12(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPointMember12(), memberMap)); - nodeList.add(makeNode("3", "1", "3", cuMemberRetailDetail.getPointMember21(), memberMap)); - nodeList.add(makeNode("4", "1", "4", cuMemberRetailDetail.getPointMember22(), memberMap)); - nodeList.add(makeNode("5", "2", "5", cuMemberRetailDetail.getPointMember23(), memberMap)); - nodeList.add(makeNode("6", "2", "6", cuMemberRetailDetail.getPointMember24(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPointMember24(), memberMap)); - nodeList.add(makeNode("7", "3", "7", cuMemberRetailDetail.getPointMember31(), memberMap)); - nodeList.add(makeNode("8", "3", "8", cuMemberRetailDetail.getPointMember32(), memberMap)); - nodeList.add(makeNode("9", "4", "9", cuMemberRetailDetail.getPointMember33(), memberMap)); - nodeList.add(makeNode("10", "4", "10", cuMemberRetailDetail.getPointMember34(), memberMap)); - nodeList.add(makeNode("11", "5", "11", cuMemberRetailDetail.getPointMember35(), memberMap)); - nodeList.add(makeNode("12", "5", "12", cuMemberRetailDetail.getPointMember36(), memberMap)); - nodeList.add(makeNode("13", "6", "13", cuMemberRetailDetail.getPointMember37(), memberMap)); - nodeList.add(makeNode("14", "6", "14", cuMemberRetailDetail.getPointMember38(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPointMember38(), memberMap)); // 构造树结构 - return TreeUtil.build(nodeList, "0", (node, tree) -> { + return TreeUtil.build(nodeList, EMemberChildNodeType.ROOT.getParentId(), (node, tree) -> { tree.setId((String) node.get("id")); tree.setParentId((String) node.get("parentId")); tree.setName((String) node.get("label")); diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java new file mode 100644 index 00000000..b56bf454 --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EMemberChildNodeType.java @@ -0,0 +1,65 @@ +package com.hzs.common.core.enums; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 三阶段节点枚举类 + */ +@AllArgsConstructor +@Getter +public enum EMemberChildNodeType { + + + /** + * 根节点 + */ + ROOT("0-root", "0", "0-root"), + + /** + * 第一层:根的子节点 + */ + /** + * 1-1 + */ + NODE1("1-1", "0-root", "1-1"), + /** + * 1-2 + */ + NODE2("1-2", "0-root", "1-2"), + + /** + * 第二层 + */ + NODE3("2-1", "1-1", "2-1"), + NODE4("2-2", "1-1", "2-2"), + NODE5("2-3", "1-2", "2-3"), + NODE6("2-4", "1-2", "2-4"), + + /** + * 第三层 + */ + NODE7("3-1", "2-1", "3-1"), + NODE8("3-2", "2-1", "3-2"), + NODE9("3-3", "2-2", "3-3"), + NODE10("3-4", "2-2", "3-4"), + NODE11("3-5", "2-3", "3-5"), + NODE12("3-6", "2-3", "3-6"), + NODE13("3-7", "2-4", "3-7"), + NODE14("3-8", "2-4", "3-8"); + + /** + * 点位子会员节点 + */ + private final String id; + + /** + * 节点 + */ + private final String parentId; + + /** + * 节点显示名称 + */ + private final String label; +} From d344eb098b3178d8246f6874b38202b7f1ef86bd Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 10:25:26 +0800 Subject: [PATCH 228/362] =?UTF-8?q?##=20=E5=88=A0=E9=99=A4=E4=B8=8D?= =?UTF-8?q?=E5=BF=85=E8=A6=81=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/service/impl/ICumemberRetailDetailImpl.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java index 8bf481b4..46ef4631 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java @@ -47,8 +47,7 @@ public class ICumemberRetailDetailImpl extends ServiceImpl Date: Tue, 23 Sep 2025 11:05:12 +0800 Subject: [PATCH 229/362] =?UTF-8?q?##=20=E4=BC=9A=E5=91=98=E6=97=A5?= =?UTF-8?q?=E7=BB=93=E4=BF=A1=E6=81=AF=E9=9D=9E=E7=A9=BA=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 43eaee5d..6bcf17bc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -235,6 +235,10 @@ public class MemberStructureController extends BaseController { } CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetail.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); + if (cuMemberRetailDetail == null) { + log.error("当前会员日结信息不存在"); + return AjaxResult.error("当前会员日结信息不存在"); + } // 拼接树形结构 List> cuMemberRetailTree = iCumemberRetailDetail.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); From bfb04378b1c05a6c3558c54a8438b9dfc81ac700 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 23 Sep 2025 11:35:50 +0800 Subject: [PATCH 230/362] =?UTF-8?q?##=20Opt=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=92=A4=E5=8D=95=20(=E5=95=86=E5=9F=8E-43)=20=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/CuMemberBusinessServiceImpl.java | 9 +++++---- .../hzs/sale/order/service/impl/SaOrderServiceImpl.java | 6 +++++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index fa14d091..090b39db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -587,10 +587,11 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { deductCancelOrderCost(businessCommissionDTO); CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); - - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 会员账号 验证会员账户是否存在金额 - CuMember member = cuMemberService.getMemberById(saOrder.getPkMember()); + // 会员账号 验证会员账户是否存在金额 + CuMember member = cuMemberService.getMemberById(saOrder.getPkMember()); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + ||(ObjectUtil.isNotEmpty(member) && EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType() && saOrder.getPayTime().equals(member.getPayTime())) + ) { // 会员变为死点 member.setCategory(ECategory.LOGGED_OUT.getValue()); member.setCustomerType(ECustomerType.DEAD_POINT.getValue()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index ed814c32..5466ab56 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.sale.order.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; @@ -662,6 +663,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Transactional(rollbackFor = Exception.class) public void revokeSaOrderByOrderCode(Long pkApprove, OrderCancelParam orderCancelParam, ValidateCancelOrderVO validateCancelOrderVO) { SaOrderExt saOrderExt = validateCancelOrderVO.getSaOrderExt(); + CuMemberExt memberExt = memberServiceApi.getMemberById(saOrderExt.getPkMember()).getData(); BusinessCommissionDTO businessCommissionDTO = null; if (orderCancelParam.getCancelRoad() == 1) { EApprovalBusiness approveBusiness = EApprovalBusiness.ORDER_CANCEL; @@ -750,7 +752,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl } // 撤销注册订单 单点撤单 - if (ECancelOrderType.SINGLE_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType()) { + if (ECancelOrderType.SINGLE_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType() + ||(ObjectUtil.isNotEmpty(memberExt) && ECancelOrderType.OTHER_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType() && saOrderExt.getPayTime().equals(memberExt.getPayTime())) + ) { // 单点撤单,变死点 R tmpR = memberServiceApi.singleRevokeMemberByRegisterOrder(pkApprove, saOrderExt, businessCommissionDTO); if (!tmpR.isSuccess()) { From 07f8dbe8d351d7d3e0a431804bb46e7bc9e8adf3 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Tue, 23 Sep 2025 11:54:03 +0800 Subject: [PATCH 231/362] =?UTF-8?q?##=20Feat=20-=20=E4=B8=9A=E7=BB=A9?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/IPerformanceSummaryServiceApi.java | 19 +++ .../CuMemberPerformanceSummaryController.java | 20 +++ .../CuMemberPerformanceSummaryMapper.java | 21 +++ .../provider/PerformanceSummaryProvider.java | 24 ++++ .../ICuMemberPerformanceSummaryService.java | 16 +++ ...CuMemberPerformanceSummaryServiceImpl.java | 73 ++++++++++ .../CuMemberPerformanceSummaryMapper.xml | 49 +++++++ .../report/CuMemberPerformanceSummary.java | 125 ++++++++++++++++++ sql/2025年9月22日_业绩统计.sql | 43 ++++++ 9 files changed, 390 insertions(+) create mode 100644 bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java create mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/order/controller/CuMemberPerformanceSummaryController.java create mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/order/mapper/CuMemberPerformanceSummaryMapper.java create mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/order/provider/PerformanceSummaryProvider.java create mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/ICuMemberPerformanceSummaryService.java create mode 100644 bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java create mode 100644 bd-business/bd-business-report/src/main/resources/mapper/report/order/CuMemberPerformanceSummaryMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/report/CuMemberPerformanceSummary.java create mode 100644 sql/2025年9月22日_业绩统计.sql diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java new file mode 100644 index 00000000..357fe024 --- /dev/null +++ b/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java @@ -0,0 +1,19 @@ +package com.hzs.report.order; + +import com.hzs.common.core.domain.R; +import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; + +/** + * 订单服务对外提供接口 + */ +public interface IPerformanceSummaryServiceApi { + + /** + * 按天创建统计数据 + * + * @param day + * @return + */ + R createDataByDay(String day); + +} diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/controller/CuMemberPerformanceSummaryController.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/controller/CuMemberPerformanceSummaryController.java new file mode 100644 index 00000000..22b076a4 --- /dev/null +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/controller/CuMemberPerformanceSummaryController.java @@ -0,0 +1,20 @@ +package com.hzs.report.order.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 销售业绩统计表 前端控制器 + *

+ * + * @author sangelxiu1 + * @since 2025-09-22 + */ +@RestController +@RequestMapping("/order/performance-summary") +public class CuMemberPerformanceSummaryController { + +} diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/mapper/CuMemberPerformanceSummaryMapper.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/mapper/CuMemberPerformanceSummaryMapper.java new file mode 100644 index 00000000..2e78435c --- /dev/null +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/mapper/CuMemberPerformanceSummaryMapper.java @@ -0,0 +1,21 @@ +package com.hzs.report.order.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.report.CuMemberPerformanceSummary; +import com.hzs.common.domain.sale.order.SaOrder; +import org.apache.ibatis.annotations.Param; + +import java.util.Date; +import java.util.List; + +/** + *

+ * 销售业绩统计表 Mapper 接口 + *

+ * + * @author sangelxiu1 + * @since 2025-09-22 + */ +public interface CuMemberPerformanceSummaryMapper extends BaseMapper { + List getOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, @Param("orderTypeList") List orderTypeList); +} diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/provider/PerformanceSummaryProvider.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/provider/PerformanceSummaryProvider.java new file mode 100644 index 00000000..d258a9e9 --- /dev/null +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/provider/PerformanceSummaryProvider.java @@ -0,0 +1,24 @@ +package com.hzs.report.order.provider; + +import com.hzs.common.core.domain.R; +import com.hzs.report.order.IPerformanceSummaryServiceApi; +import com.hzs.report.order.service.ICuMemberPerformanceSummaryService; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.config.annotation.DubboService; + +import javax.annotation.Resource; + +/** + * 销售业绩统计 + */ +@DubboService +@Slf4j +public class PerformanceSummaryProvider implements IPerformanceSummaryServiceApi { + @Resource + ICuMemberPerformanceSummaryService iCuMemberPerformanceSummaryService; + @Override + public R createDataByDay(String day) { + iCuMemberPerformanceSummaryService.createDataByDay(day); + return R.ok(); + } +} diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/ICuMemberPerformanceSummaryService.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/ICuMemberPerformanceSummaryService.java new file mode 100644 index 00000000..da1e2887 --- /dev/null +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/ICuMemberPerformanceSummaryService.java @@ -0,0 +1,16 @@ +package com.hzs.report.order.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.domain.report.CuMemberPerformanceSummary; + +/** + *

+ * 销售业绩统计表 服务类 + *

+ * + * @author sangelxiu1 + * @since 2025-09-22 + */ +public interface ICuMemberPerformanceSummaryService extends IService { + void createDataByDay(String day); +} diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java new file mode 100644 index 00000000..44487796 --- /dev/null +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java @@ -0,0 +1,73 @@ +package com.hzs.report.order.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.domain.report.CuMemberPerformanceSummary; +import com.hzs.common.domain.sale.order.SaOrder; +import com.hzs.report.order.mapper.CuMemberPerformanceSummaryMapper; +import com.hzs.report.order.service.ICuMemberPerformanceSummaryService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + *

+ * 销售业绩统计表 服务实现类 + *

+ * + * @author sangelxiu1 + * @since 2025-09-22 + */ +@Service +@Slf4j +public class CuMemberPerformanceSummaryServiceImpl extends ServiceImpl implements ICuMemberPerformanceSummaryService { + + @Override + public void createDataByDay(String day) { + Date startDate = DateUtils.getStartOfDay(day); + Date endDate = DateUtils.getEndOfDay(day); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberPerformanceSummary::getSummaryDate, startDate); + baseMapper.delete(queryWrapper); + List orderTypeList = Arrays.asList(41, 42, 43); + List orderList = baseMapper.getOrderByDay(startDate, endDate, orderTypeList); + Map> groupedOrders = orderList.stream().collect(Collectors.groupingBy(SaOrder::getOrderType)); + CuMemberPerformanceSummary summary = CuMemberPerformanceSummary.getInitCuMemberPerformanceSummary(startDate); + for (SaOrder saOrder : groupedOrders.get(41)) { + summary.setRetailRegisterAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); + summary.setRetailRegisterPv(summary.getRetailDiscountPv().add(saOrder.getOrderAchieve())); + + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } + for (SaOrder saOrder : groupedOrders.get(42)) { + summary.setRetailUpgradeAmount(summary.getRetailUpgradeAmount().add(saOrder.getOrderAmount())); + summary.setRetailUpgradePv(summary.getRetailUpgradePv().add(saOrder.getOrderAchieve())); + + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } + for (SaOrder saOrder : groupedOrders.get(43)) { + summary.setRetailRepurchaseAmount(summary.getRetailRepurchaseAmount().add(saOrder.getOrderAmount())); + summary.setRetailRepurchasePv(summary.getRetailRepurchasePv().add(saOrder.getOrderAchieve())); + + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } + for (SaOrder saOrder : groupedOrders.get(44)) { + summary.setRetailDiscountAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); + summary.setDividendPv(summary.getDividendPv().add(saOrder.getOrderAchieve())); + + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } + summary.setDividendPv(summary.getTotalPv().multiply(new BigDecimal("0.015"))); + baseMapper.insert(summary); + } +} diff --git a/bd-business/bd-business-report/src/main/resources/mapper/report/order/CuMemberPerformanceSummaryMapper.xml b/bd-business/bd-business-report/src/main/resources/mapper/report/order/CuMemberPerformanceSummaryMapper.xml new file mode 100644 index 00000000..492f82bf --- /dev/null +++ b/bd-business/bd-business-report/src/main/resources/mapper/report/order/CuMemberPerformanceSummaryMapper.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG, + PK_COUNTRY, + CREATION_TIME, + MODIFIED_TIME, + PK_CREATOR, + PK_MODIFIED, + PK_ID, SUMMARY_DATE, RETAIL_REGISTER_AMOUNT, RETAIL_REGISTER_PV, RETAIL_UPGRADE_AMOUNT, RETAIL_UPGRADE_PV, RETAIL_REPURCHASE_AMOUNT, RETAIL_REPURCHASE_PV, RETAIL_DISCOUNT_AMOUNT, RETAIL_DISCOUNT_PV, TOTAL_AMOUNT, TOTAL_PV, DIVIDEND_PV + + + + diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/report/CuMemberPerformanceSummary.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/report/CuMemberPerformanceSummary.java new file mode 100644 index 00000000..1823e0df --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/report/CuMemberPerformanceSummary.java @@ -0,0 +1,125 @@ +package com.hzs.common.domain.report; + +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.*; +import lombok.experimental.Accessors; + +/** + *

+ * 销售业绩统计表 + *

+ * + * @author sangelxiu1 + * @since 2025-09-22 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("CU_MEMBER_PERFORMANCE_SUMMARY") +@KeySequence("C_M_PERFORMANCE_SUMMARY_SEQ") +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class CuMemberPerformanceSummary extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @TableField("PK_ID") + private Long pkId; + + /** + * 统计日期 + */ + @TableField("SUMMARY_DATE") + private Date summaryDate; + + /** + * 精品专区销售金额 + */ + @TableField("RETAIL_REGISTER_AMOUNT") + private BigDecimal retailRegisterAmount; + + /** + * 精品专区销售业绩 + */ + @TableField("RETAIL_REGISTER_PV") + private BigDecimal retailRegisterPv; + + /** + * 甄选专区销售金额 + */ + @TableField("RETAIL_UPGRADE_AMOUNT") + private BigDecimal retailUpgradeAmount; + + /** + * 甄选专区销售业绩 + */ + @TableField("RETAIL_UPGRADE_PV") + private BigDecimal retailUpgradePv; + + /** + * 商城专区销售金额 + */ + @TableField("RETAIL_REPURCHASE_AMOUNT") + private BigDecimal retailRepurchaseAmount; + + /** + * 商城专区销售业绩 + */ + @TableField("RETAIL_REPURCHASE_PV") + private BigDecimal retailRepurchasePv; + + /** + * 五折专区销售金额 + */ + @TableField("RETAIL_DISCOUNT_AMOUNT") + private BigDecimal retailDiscountAmount; + + /** + * 五折专区销售业绩 + */ + @TableField("RETAIL_DISCOUNT_PV") + private BigDecimal retailDiscountPv; + + /** + * 当期销售金额合计 + */ + @TableField("TOTAL_AMOUNT") + private BigDecimal totalAmount; + + /** + * 当期销售业绩合计 + */ + @TableField("TOTAL_PV") + private BigDecimal totalPv; + + /** + * 当日分红合计(分红:所有专区PV值的1.5%每天进行记录) + */ + @TableField("DIVIDEND_PV") + private BigDecimal dividendPv; + + + public static CuMemberPerformanceSummary getInitCuMemberPerformanceSummary(Date summaryDate){ + return CuMemberPerformanceSummary.builder() + .summaryDate(summaryDate) + .retailRegisterAmount(BigDecimal.ZERO) + .retailRegisterPv(BigDecimal.ZERO) + .retailUpgradeAmount(BigDecimal.ZERO) + .retailUpgradePv(BigDecimal.ZERO) + .retailRepurchaseAmount(BigDecimal.ZERO) + .retailRepurchasePv(BigDecimal.ZERO) + .retailDiscountAmount(BigDecimal.ZERO) + .retailDiscountPv(BigDecimal.ZERO) + .totalAmount(BigDecimal.ZERO) + .totalPv(BigDecimal.ZERO) + .dividendPv(BigDecimal.ZERO) + .build(); + } +} diff --git a/sql/2025年9月22日_业绩统计.sql b/sql/2025年9月22日_业绩统计.sql new file mode 100644 index 00000000..5fd29e0d --- /dev/null +++ b/sql/2025年9月22日_业绩统计.sql @@ -0,0 +1,43 @@ +CREATE TABLE CU_MEMBER_PERFORMANCE_SUMMARY +( + "PK_ID" NUMBER(20,0) NOT NULL ENABLE, + "SUMMARY_DATE" DATE NOT NULL ENABLE, + "RETAIL_REGISTER_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REGISTER_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_UPGRADE_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_UPGRADE_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REPURCHASE_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REPURCHASE_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_DISCOUNT_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_DISCOUNT_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "TOTAL_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "TOTAL_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "DIVIDEND_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "PK_COUNTRY" NUMBER(4,0) DEFAULT 1 NOT NULL ENABLE, + "CREATION_TIME" DATE DEFAULT sysdate NOT NULL ENABLE, + "MODIFIED_TIME" DATE, + "PK_CREATOR" NUMBER(20,0) NOT NULL ENABLE, + "PK_MODIFIED" NUMBER(20,0) +); + +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."SUMMARY_DATE" IS '统计日期'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REGISTER_AMOUNT" IS '精品专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REGISTER_PV" IS '精品专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_UPGRADE_AMOUNT" IS '甄选专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_UPGRADE_PV" IS '甄选专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REPURCHASE_AMOUNT" IS '商城专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REPURCHASE_PV" IS '商城专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_DISCOUNT_AMOUNT" IS '五折专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_DISCOUNT_PV" IS '五折专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."TOTAL_AMOUNT" IS '当期销售金额合计'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."TOTAL_PV" IS '当期销售业绩合计'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."DIVIDEND_PV" IS '当日分红合计(分红:所有专区PV值的1.5%每天进行记录)'; + +COMMENT ON TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" IS '销售业绩统计表'; + + + +CREATE SEQUENCE C_M_PERFORMANCE_SUMMARY_SEQ + START WITH 1 + INCREMENT BY 1; From 6a4429ca6825fecd2c0b5ee84d0fb5fba7effa36 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 23 Sep 2025 12:00:25 +0800 Subject: [PATCH 232/362] =?UTF-8?q?##=20=E6=97=A5=E7=BB=93=E7=BB=93?= =?UTF-8?q?=E6=9D=9F=E8=B0=83=E7=94=A8=E4=B8=9A=E7=BB=A9=E6=B1=87=E6=80=BB?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bd-business/bd-business-bonus/pom.xml | 6 ++++++ .../bonus/bonus/service/impl/BonusSettleServiceImpl.java | 9 +++++++++ .../bd-business-bonus/src/main/resources/bootstrap.yml | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/pom.xml b/bd-business/bd-business-bonus/pom.xml index 21cf1ac9..caad04c9 100644 --- a/bd-business/bd-business-bonus/pom.xml +++ b/bd-business/bd-business-bonus/pom.xml @@ -39,11 +39,17 @@ com.bd bd-common-aop + com.bd bd-api-bonus + + com.bd + bd-api-report + + org.springframework.amqp diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index f6c7ff35..6065dcb6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -18,6 +18,7 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.report.order.IPerformanceSummaryServiceApi; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; import lombok.extern.slf4j.Slf4j; @@ -39,6 +40,8 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @DubboReference IBonusItemsServiceApi iBonusItemsServiceApi; + @DubboReference + IPerformanceSummaryServiceApi iPerformanceSummaryServiceApi; @Autowired private IBonusOrderService iBonusOrderService; @@ -107,6 +110,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService { log.error("奖金结算异常", e); throw new RuntimeException(e); } + try { + // 调用统计业绩汇总接口 + iPerformanceSummaryServiceApi.createDataByDay(settleDate); + } catch (Exception e) { + log.error("每日数据业绩汇总异常", e); + } } @Override diff --git a/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml b/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml index e354fed0..415e76f1 100644 --- a/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml +++ b/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml @@ -67,7 +67,7 @@ dubbo: port: -1 cloud: # 订阅服务 - subscribed-services: bd-system, bd-third, bd-sale, bd-member + subscribed-services: bd-system, bd-third, bd-sale, bd-member, bd-report scan: # dubbo 服务扫描包(开启之后才会对外提供服务) base-packages: com.hzs.bonus From b4cbcda88b685af5f8c094856722f64b811a78e9 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 15:08:24 +0800 Subject: [PATCH 233/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 6 ++ ...java => ICumemberRetailDetailService.java} | 4 +- ... => ICumemberRetailDetailServiceImpl.java} | 10 ++- .../api/ApiMemberStructureController.java | 90 ++++++++++++------- .../manage/MemberStructureController.java | 14 +-- .../member/CuMemberRetailDetailMapper.xml | 14 +++ 6 files changed, 94 insertions(+), 44 deletions(-) rename bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/{ICumemberRetailDetail.java => ICumemberRetailDetailService.java} (76%) rename bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/{ICumemberRetailDetailImpl.java => ICumemberRetailDetailServiceImpl.java} (93%) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 6a747921..d3c6a769 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -20,4 +20,10 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName); CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus, String childNode, String settleTableName); @@ -14,4 +14,6 @@ public interface ICumemberRetailDetail { Integer getFindCumemberRetailDetail(String settleTableName); List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); + + CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java similarity index 93% rename from bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java rename to bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 46ef4631..db7f3d63 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -8,7 +8,7 @@ import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -19,7 +19,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; @Service -public class ICumemberRetailDetailImpl extends ServiceImpl implements ICumemberRetailDetail { +public class ICumemberRetailDetailServiceImpl extends ServiceImpl implements ICumemberRetailDetailService { @Autowired private ICuMemberService iCuMemberService; @Override @@ -92,6 +92,12 @@ public class ICumemberRetailDetailImpl extends ServiceImpl makeNode(String id, String parentId, String label, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 35d107b6..32ca3e61 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -1,52 +1,31 @@ package com.hzs.member.structure.controller.api; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateTime; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.tree.Tree; -import cn.hutool.core.lang.tree.TreeUtil; -import cn.hutool.core.util.RandomUtil; -import com.alibaba.fastjson2.JSONArray; -import com.alibaba.fastjson2.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.*; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.domain.R; +import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import com.hzs.common.domain.system.base.BdCountry; +import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; -import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; -import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; -import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; -import com.hzs.system.sys.IUserServiceApi; -import com.hzs.system.sys.dto.UserAuthorityDTO; -import org.apache.dubbo.config.annotation.DubboReference; +import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.system.sys.dto.LoginUser; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; +import java.text.DateFormatSymbols; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; /** * @Description: @@ -55,10 +34,53 @@ import java.util.stream.Collectors; * @Classname: MemberStructureController * @PackageName: com.hzs.member.memberStructure.controller.api */ -//@RestController -//@RequestMapping("/api/member-structure") +@Slf4j +@RestController +@RequestMapping("/api/member-structure") public class ApiMemberStructureController extends BaseController { + @Autowired + ICuMemberSettlePeriodService iCuMemberSettlePeriodService; + + @Autowired + ICumemberRetailDetailService iCumemberRetailDetailService; + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) + @GetMapping("/three-framework") + public AjaxResult Framework(Integer stage,String childNode,Integer stageStatus) { + if (stage == null || childNode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); + log.info("日结表会员信息{}",cuMemberRetailDetail); + if (cuMemberRetailDetail == null) { + log.error("当前会员日结信息不存在"); + return AjaxResult.error("当前会员日结信息不存在"); + } + // 拼接树形结构 + List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); + return AjaxResult.success(cuMemberRetailTree); + } + // @Autowired // private ITransactionCommonService iTransactionCommonService; // @Autowired diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 6bcf17bc..3c24d1fe 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -31,7 +31,7 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; import com.hzs.system.config.IGradeServiceApi; @@ -61,7 +61,7 @@ public class MemberStructureController extends BaseController { private ICuMemberService iCuMemberService; @Autowired - private ICumemberRetailDetail iCumemberRetailDetail; + private ICumemberRetailDetailService iCumemberRetailDetailService; @DubboReference IUserServiceApi iUserServiceApi; @DubboReference @@ -228,19 +228,19 @@ public class MemberStructureController extends BaseController { String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 - Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetail.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { log.error("当前会员日结信息不存在"); return AjaxResult.error("当前会员日结信息不存在"); } // 拼接树形结构 - List> cuMemberRetailTree = iCumemberRetailDetail.convertToNodeList(cuMemberRetailDetail); + List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } @@ -264,12 +264,12 @@ public class MemberStructureController extends BaseController { String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 - Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - List childCodeList = iCumemberRetailDetail.getChildList(memberCode,stage,stageStatus,settleTableName); + List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); } /** diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index a9e7abdd..c1e6e913 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -36,4 +36,18 @@ AND CHILD_NODE = #{childNode} + From 56a63dff4c82e4ecb244296d63e95b2365f23d95 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 15:48:30 +0800 Subject: [PATCH 234/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=AD=90=E8=8A=82=E7=82=B9=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=89=8D=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 5 +++ .../service/ICumemberRetailDetailService.java | 2 ++ .../ICumemberRetailDetailServiceImpl.java | 5 +++ .../api/ApiMemberStructureController.java | 36 +++++++++++++++++++ .../member/CuMemberRetailDetailMapper.xml | 12 +++++++ 5 files changed, 60 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index d3c6a769..86852ae1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -26,4 +26,9 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getChildListByUserId(@Param("userId") Long userId, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("settleTableName")String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 2393903c..ac6bc6ff 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -16,4 +16,6 @@ public interface ICumemberRetailDetailService { List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); + + List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index db7f3d63..fa3486b0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -98,6 +98,11 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName) { + return baseMapper.getChildListByUserId(userId,stage,stageStatus,settleTableName); + } + private Map makeNode(String id, String parentId, String label, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 32ca3e61..f1754e25 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -13,6 +13,7 @@ import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -80,6 +81,41 @@ public class ApiMemberStructureController extends BaseController { List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } + /** + * 查询子节点 + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) + @GetMapping("/childList") + public AjaxResult Framework(Integer stage,Integer stageStatus) { + if (stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + List childCodeList = iCumemberRetailDetailService.getChildListByUserId(userId,stage,stageStatus,settleTableName); + return AjaxResult.success(childCodeList); + } + // @Autowired // private ITransactionCommonService iTransactionCommonService; diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index c1e6e913..47caad8f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -50,4 +50,16 @@ AND CHILD_NODE = #{childNode} + From 5b539aad41a78f4733e2860b39ed5a4fc4acc939 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 15:08:24 +0800 Subject: [PATCH 235/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 6 ++ ...java => ICumemberRetailDetailService.java} | 4 +- ... => ICumemberRetailDetailServiceImpl.java} | 10 ++- .../api/ApiMemberStructureController.java | 90 ++++++++++++------- .../manage/MemberStructureController.java | 14 +-- .../member/CuMemberRetailDetailMapper.xml | 14 +++ 6 files changed, 94 insertions(+), 44 deletions(-) rename bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/{ICumemberRetailDetail.java => ICumemberRetailDetailService.java} (76%) rename bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/{ICumemberRetailDetailImpl.java => ICumemberRetailDetailServiceImpl.java} (93%) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 6a747921..d3c6a769 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -20,4 +20,10 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName); CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus, String childNode, String settleTableName); @@ -14,4 +14,6 @@ public interface ICumemberRetailDetail { Integer getFindCumemberRetailDetail(String settleTableName); List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); + + CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java similarity index 93% rename from bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java rename to bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 46ef4631..db7f3d63 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -8,7 +8,7 @@ import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -19,7 +19,7 @@ import java.util.stream.Collectors; import java.util.stream.Stream; @Service -public class ICumemberRetailDetailImpl extends ServiceImpl implements ICumemberRetailDetail { +public class ICumemberRetailDetailServiceImpl extends ServiceImpl implements ICumemberRetailDetailService { @Autowired private ICuMemberService iCuMemberService; @Override @@ -92,6 +92,12 @@ public class ICumemberRetailDetailImpl extends ServiceImpl makeNode(String id, String parentId, String label, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 35d107b6..32ca3e61 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -1,52 +1,31 @@ package com.hzs.member.structure.controller.api; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateTime; -import cn.hutool.core.date.DateUtil; import cn.hutool.core.lang.tree.Tree; -import cn.hutool.core.lang.tree.TreeUtil; -import cn.hutool.core.util.RandomUtil; -import com.alibaba.fastjson2.JSONArray; -import com.alibaba.fastjson2.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.*; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.domain.R; +import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import com.hzs.common.domain.system.base.BdCountry; +import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; -import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; -import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; -import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; -import com.hzs.system.sys.IUserServiceApi; -import com.hzs.system.sys.dto.UserAuthorityDTO; -import org.apache.dubbo.config.annotation.DubboReference; +import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.system.sys.dto.LoginUser; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.time.temporal.ChronoUnit; -import java.util.ArrayList; +import java.text.DateFormatSymbols; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.Date; import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; /** * @Description: @@ -55,10 +34,53 @@ import java.util.stream.Collectors; * @Classname: MemberStructureController * @PackageName: com.hzs.member.memberStructure.controller.api */ -//@RestController -//@RequestMapping("/api/member-structure") +@Slf4j +@RestController +@RequestMapping("/api/member-structure") public class ApiMemberStructureController extends BaseController { + @Autowired + ICuMemberSettlePeriodService iCuMemberSettlePeriodService; + + @Autowired + ICumemberRetailDetailService iCumemberRetailDetailService; + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) + @GetMapping("/three-framework") + public AjaxResult Framework(Integer stage,String childNode,Integer stageStatus) { + if (stage == null || childNode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); + log.info("日结表会员信息{}",cuMemberRetailDetail); + if (cuMemberRetailDetail == null) { + log.error("当前会员日结信息不存在"); + return AjaxResult.error("当前会员日结信息不存在"); + } + // 拼接树形结构 + List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); + return AjaxResult.success(cuMemberRetailTree); + } + // @Autowired // private ITransactionCommonService iTransactionCommonService; // @Autowired diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 6bcf17bc..3c24d1fe 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -31,7 +31,7 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICumemberRetailDetail; +import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; import com.hzs.system.config.IGradeServiceApi; @@ -61,7 +61,7 @@ public class MemberStructureController extends BaseController { private ICuMemberService iCuMemberService; @Autowired - private ICumemberRetailDetail iCumemberRetailDetail; + private ICumemberRetailDetailService iCumemberRetailDetailService; @DubboReference IUserServiceApi iUserServiceApi; @DubboReference @@ -228,19 +228,19 @@ public class MemberStructureController extends BaseController { String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 - Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetail.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { log.error("当前会员日结信息不存在"); return AjaxResult.error("当前会员日结信息不存在"); } // 拼接树形结构 - List> cuMemberRetailTree = iCumemberRetailDetail.convertToNodeList(cuMemberRetailDetail); + List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } @@ -264,12 +264,12 @@ public class MemberStructureController extends BaseController { String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); log.info("日结表名称{}",settleTableName); // 校验当前日结表是否存在 - Integer isFind = iCumemberRetailDetail.getFindCumemberRetailDetail(settleTableName); + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - List childCodeList = iCumemberRetailDetail.getChildList(memberCode,stage,stageStatus,settleTableName); + List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); } /** diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index a9e7abdd..c1e6e913 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -36,4 +36,18 @@ AND CHILD_NODE = #{childNode} + From fb0e1c62e8b3dd3bc41106626e8ba7e125ea8a35 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 23 Sep 2025 15:48:30 +0800 Subject: [PATCH 236/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=AD=90=E8=8A=82=E7=82=B9=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=89=8D=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 5 +++ .../service/ICumemberRetailDetailService.java | 2 ++ .../ICumemberRetailDetailServiceImpl.java | 5 +++ .../api/ApiMemberStructureController.java | 36 +++++++++++++++++++ .../member/CuMemberRetailDetailMapper.xml | 12 +++++++ 5 files changed, 60 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index d3c6a769..86852ae1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -26,4 +26,9 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getChildListByUserId(@Param("userId") Long userId, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("settleTableName")String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 2393903c..ac6bc6ff 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -16,4 +16,6 @@ public interface ICumemberRetailDetailService { List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); + + List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index db7f3d63..fa3486b0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -98,6 +98,11 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName) { + return baseMapper.getChildListByUserId(userId,stage,stageStatus,settleTableName); + } + private Map makeNode(String id, String parentId, String label, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 32ca3e61..f1754e25 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -13,6 +13,7 @@ import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -80,6 +81,41 @@ public class ApiMemberStructureController extends BaseController { List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } + /** + * 查询子节点 + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) + @GetMapping("/childList") + public AjaxResult Framework(Integer stage,Integer stageStatus) { + if (stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + List childCodeList = iCumemberRetailDetailService.getChildListByUserId(userId,stage,stageStatus,settleTableName); + return AjaxResult.success(childCodeList); + } + // @Autowired // private ITransactionCommonService iTransactionCommonService; diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index c1e6e913..47caad8f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -50,4 +50,16 @@ AND CHILD_NODE = #{childNode} + From 1568b3c1974fc38fa29f275f33a6a838e42c1225 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 09:54:36 +0800 Subject: [PATCH 237/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0=E6=9F=A5=E8=AF=A2=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E6=8F=90=E7=A4=BA=E8=AF=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberStructureController.java | 8 ++++---- .../controller/manage/MemberStructureController.java | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index f1754e25..08daf99d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -74,8 +74,8 @@ public class ApiMemberStructureController extends BaseController { CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { - log.error("当前会员日结信息不存在"); - return AjaxResult.error("当前会员日结信息不存在"); + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); } // 拼接树形结构 List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); @@ -109,8 +109,8 @@ public class ApiMemberStructureController extends BaseController { // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { - log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); } List childCodeList = iCumemberRetailDetailService.getChildListByUserId(userId,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 3c24d1fe..f027b1ef 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -236,7 +236,7 @@ public class MemberStructureController extends BaseController { CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { - log.error("当前会员日结信息不存在"); + log.error("当前会员日结信息不存在{}",settleTableName); return AjaxResult.error("当前会员日结信息不存在"); } // 拼接树形结构 @@ -266,7 +266,7 @@ public class MemberStructureController extends BaseController { // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { - log.error("当前表名不存在{}",settleTableName); + log.error("当前会员日结信息不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); From cff02f12da95a452ebd497ce7cde5e8df612fcb8 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 09:58:18 +0800 Subject: [PATCH 238/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0=E6=9F=A5=E8=AF=A2=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E6=8F=90=E7=A4=BA=E8=AF=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index f027b1ef..3c2bce57 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -237,7 +237,7 @@ public class MemberStructureController extends BaseController { log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { log.error("当前会员日结信息不存在{}",settleTableName); - return AjaxResult.error("当前会员日结信息不存在"); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); } // 拼接树形结构 List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); @@ -267,7 +267,7 @@ public class MemberStructureController extends BaseController { Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前会员日结信息不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); } List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); From cef149218034349e59be0b846a69cab43eccafd7 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 13:36:12 +0800 Subject: [PATCH 239/362] =?UTF-8?q?##=20=E6=8E=A8=E8=8D=90=E6=9E=B6?= =?UTF-8?q?=E6=9E=84=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9:=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E4=BC=A0=E5=85=A5=E6=97=A5=E7=BB=93=E4=BF=A1=E6=81=AF?= =?UTF-8?q?(=E5=BD=93=E5=A4=A9=E6=9F=A5=E8=AF=A2=E4=B8=8A=E4=B8=80?= =?UTF-8?q?=E5=A4=A9=E6=97=A5=E7=BB=93=E4=BF=A1=E6=81=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/MemberStructureController.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 3c2bce57..45909763 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -43,6 +43,8 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; /** @@ -110,8 +112,9 @@ public class MemberStructureController extends BaseController { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); } else { - // 没有传入期数,按当前时间取期数 - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + // 没有传入期数,按当前时间-1取期数 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); if (csPeriod != null) { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); @@ -121,7 +124,9 @@ public class MemberStructureController extends BaseController { if (settleDate != null && DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, settleDate).equals(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, new Date()))) { // 查询当天 (秒结) // 会员秒结表 - String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_S + period; + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); // 校验秒结表是否存在 Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); if (tableNumber != null && tableNumber == 1) { @@ -135,7 +140,7 @@ public class MemberStructureController extends BaseController { // 秒结表不存在,取昨天的结算表 DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); if (csPeriod != null) { period = csPeriod.getPkId(); } @@ -174,13 +179,7 @@ public class MemberStructureController extends BaseController { return AjaxResult.success(iCuMemberService.systemListTree(memberRetailExtList, cuMemberSettleExt, settleTableName)); } } else { - DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - if (csPeriod != null) { - period = csPeriod.getPkId(); - } - // 查询 历史 + // 不是当天,查询传入日结信息 String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); From fd85b3f972ede70535f9356de65ab2f5e26a8fff Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 09:54:36 +0800 Subject: [PATCH 240/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0=E6=9F=A5=E8=AF=A2=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E6=8F=90=E7=A4=BA=E8=AF=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberStructureController.java | 8 ++++---- .../controller/manage/MemberStructureController.java | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index f1754e25..08daf99d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -74,8 +74,8 @@ public class ApiMemberStructureController extends BaseController { CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { - log.error("当前会员日结信息不存在"); - return AjaxResult.error("当前会员日结信息不存在"); + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); } // 拼接树形结构 List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); @@ -109,8 +109,8 @@ public class ApiMemberStructureController extends BaseController { // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { - log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); } List childCodeList = iCumemberRetailDetailService.getChildListByUserId(userId,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 3c24d1fe..f027b1ef 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -236,7 +236,7 @@ public class MemberStructureController extends BaseController { CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { - log.error("当前会员日结信息不存在"); + log.error("当前会员日结信息不存在{}",settleTableName); return AjaxResult.error("当前会员日结信息不存在"); } // 拼接树形结构 @@ -266,7 +266,7 @@ public class MemberStructureController extends BaseController { // 校验当前日结表是否存在 Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { - log.error("当前表名不存在{}",settleTableName); + log.error("当前会员日结信息不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); From bc3cd3d941dbf33a2e42b7f433e3c6d17d95c220 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 09:58:18 +0800 Subject: [PATCH 241/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0=E6=9F=A5=E8=AF=A2=E6=8A=A5?= =?UTF-8?q?=E9=94=99=E6=8F=90=E7=A4=BA=E8=AF=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/MemberStructureController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index f027b1ef..3c2bce57 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -237,7 +237,7 @@ public class MemberStructureController extends BaseController { log.info("日结表会员信息{}",cuMemberRetailDetail); if (cuMemberRetailDetail == null) { log.error("当前会员日结信息不存在{}",settleTableName); - return AjaxResult.error("当前会员日结信息不存在"); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); } // 拼接树形结构 List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); @@ -267,7 +267,7 @@ public class MemberStructureController extends BaseController { Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前会员日结信息不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); } List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); return AjaxResult.success(childCodeList); From 9b6ec03b739a89b1d9e7738c7aa8cc1269886ed2 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 13:36:12 +0800 Subject: [PATCH 242/362] =?UTF-8?q?##=20=E6=8E=A8=E8=8D=90=E6=9E=B6?= =?UTF-8?q?=E6=9E=84=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9:=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E4=BC=A0=E5=85=A5=E6=97=A5=E7=BB=93=E4=BF=A1=E6=81=AF?= =?UTF-8?q?(=E5=BD=93=E5=A4=A9=E6=9F=A5=E8=AF=A2=E4=B8=8A=E4=B8=80?= =?UTF-8?q?=E5=A4=A9=E6=97=A5=E7=BB=93=E4=BF=A1=E6=81=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/MemberStructureController.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 3c2bce57..45909763 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -43,6 +43,8 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; /** @@ -110,8 +112,9 @@ public class MemberStructureController extends BaseController { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); } else { - // 没有传入期数,按当前时间取期数 - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + // 没有传入期数,按当前时间-1取期数 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); if (csPeriod != null) { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); @@ -121,7 +124,9 @@ public class MemberStructureController extends BaseController { if (settleDate != null && DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, settleDate).equals(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, new Date()))) { // 查询当天 (秒结) // 会员秒结表 - String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_S + period; + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); // 校验秒结表是否存在 Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); if (tableNumber != null && tableNumber == 1) { @@ -135,7 +140,7 @@ public class MemberStructureController extends BaseController { // 秒结表不存在,取昨天的结算表 DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); if (csPeriod != null) { period = csPeriod.getPkId(); } @@ -174,13 +179,7 @@ public class MemberStructureController extends BaseController { return AjaxResult.success(iCuMemberService.systemListTree(memberRetailExtList, cuMemberSettleExt, settleTableName)); } } else { - DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - if (csPeriod != null) { - period = csPeriod.getPkId(); - } - // 查询 历史 + // 不是当天,查询传入日结信息 String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); From 639c76366d99874827f26f48d000f872d656d604 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 24 Sep 2025 14:42:36 +0800 Subject: [PATCH 243/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=89=8D=E5=8F=B0=E6=8A=A5=E9=94=99=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../structure/controller/api/ApiMemberStructureController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 08daf99d..fa356dbf 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -69,7 +69,7 @@ public class ApiMemberStructureController extends BaseController { Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); } CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); log.info("日结表会员信息{}",cuMemberRetailDetail); From 7fd4beb6e6d0cb6916702ea0707e92469db8250e Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 24 Sep 2025 15:46:30 +0800 Subject: [PATCH 244/362] =?UTF-8?q?##=20Opt=20-=20=E4=BA=AC=E4=B8=9C?= =?UTF-8?q?=E6=94=AF=E4=BB=98=20=E9=A1=B5=E9=9D=A2=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=9C=B0=E5=9D=80(=E5=85=BC=E5=AE=B9=E6=80=A7)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java | 2 ++ .../com/hzs/third/pay/service/impl/JdPayServiceImpl.java | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java index 3ff50551..c683b87b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java @@ -72,11 +72,13 @@ public class JdPayAggregateCreateOrderRequest implements Serializable { * 同步通知页面url */ private String pageBackUrl; + private String pagebackUrl; /** * 点击完成按钮后跳转页面 */ private String callbackUrl; + private String callBackUrl; /** * 风控信息map-- json串 */ diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index 0aad0171..b1963ee7 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -103,8 +103,13 @@ public class JdPayServiceImpl implements IJdPayService { // 用户标识(收银台必传) .userId(userId) // 同步通知URL(收银台必传,页面回调地址) + + .pagebackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) .pageBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + .callbackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + .callBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + // 支付回调地址 .notifyUrl(jdPayBankProperties.getNotifyUrl()) // 交易类型 From 2e46aca4e15a6908436d77057d4ea8d893c037c1 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 24 Sep 2025 15:46:30 +0800 Subject: [PATCH 245/362] =?UTF-8?q?##=20Opt=20-=20=E4=BA=AC=E4=B8=9C?= =?UTF-8?q?=E6=94=AF=E4=BB=98=20=E9=A1=B5=E9=9D=A2=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=9C=B0=E5=9D=80(=E5=85=BC=E5=AE=B9=E6=80=A7)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java | 2 ++ .../com/hzs/third/pay/service/impl/JdPayServiceImpl.java | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java index 3ff50551..c683b87b 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java @@ -72,11 +72,13 @@ public class JdPayAggregateCreateOrderRequest implements Serializable { * 同步通知页面url */ private String pageBackUrl; + private String pagebackUrl; /** * 点击完成按钮后跳转页面 */ private String callbackUrl; + private String callBackUrl; /** * 风控信息map-- json串 */ diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index 0aad0171..b1963ee7 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -103,8 +103,13 @@ public class JdPayServiceImpl implements IJdPayService { // 用户标识(收银台必传) .userId(userId) // 同步通知URL(收银台必传,页面回调地址) + + .pagebackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) .pageBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + .callbackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + .callBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + // 支付回调地址 .notifyUrl(jdPayBankProperties.getNotifyUrl()) // 交易类型 From 08f6b98e291cadcf29a0b5c748e485f82a77ae57 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 24 Sep 2025 17:51:39 +0800 Subject: [PATCH 246/362] =?UTF-8?q?##=20Opt=20-=20=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E6=9E=9A=E4=B8=BE&=E9=9D=9E=E7=A9=BA=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...CuMemberPerformanceSummaryServiceImpl.java | 52 +++++++++++-------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java index 44487796..b41f97e5 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java @@ -1,6 +1,8 @@ package com.hzs.report.order.service.impl; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.report.CuMemberPerformanceSummary; import com.hzs.common.domain.sale.order.SaOrder; @@ -35,37 +37,45 @@ public class CuMemberPerformanceSummaryServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberPerformanceSummary::getSummaryDate, startDate); baseMapper.delete(queryWrapper); - List orderTypeList = Arrays.asList(41, 42, 43); + List orderTypeList = Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()); List orderList = baseMapper.getOrderByDay(startDate, endDate, orderTypeList); Map> groupedOrders = orderList.stream().collect(Collectors.groupingBy(SaOrder::getOrderType)); CuMemberPerformanceSummary summary = CuMemberPerformanceSummary.getInitCuMemberPerformanceSummary(startDate); - for (SaOrder saOrder : groupedOrders.get(41)) { - summary.setRetailRegisterAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); - summary.setRetailRegisterPv(summary.getRetailDiscountPv().add(saOrder.getOrderAchieve())); + if(ObjectUtil.isNotEmpty(groupedOrders.get(EOrderType.RETAIL_REGISTER.getValue()))) { + for (SaOrder saOrder : groupedOrders.get(EOrderType.RETAIL_REGISTER.getValue())) { + summary.setRetailRegisterAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); + summary.setRetailRegisterPv(summary.getRetailDiscountPv().add(saOrder.getOrderAchieve())); - summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); - summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } } - for (SaOrder saOrder : groupedOrders.get(42)) { - summary.setRetailUpgradeAmount(summary.getRetailUpgradeAmount().add(saOrder.getOrderAmount())); - summary.setRetailUpgradePv(summary.getRetailUpgradePv().add(saOrder.getOrderAchieve())); + if(ObjectUtil.isNotEmpty(groupedOrders.get(EOrderType.RETAIL_UPGRADE.getValue()))) { + for (SaOrder saOrder : groupedOrders.get(EOrderType.RETAIL_UPGRADE.getValue())) { + summary.setRetailUpgradeAmount(summary.getRetailUpgradeAmount().add(saOrder.getOrderAmount())); + summary.setRetailUpgradePv(summary.getRetailUpgradePv().add(saOrder.getOrderAchieve())); - summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); - summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } } - for (SaOrder saOrder : groupedOrders.get(43)) { - summary.setRetailRepurchaseAmount(summary.getRetailRepurchaseAmount().add(saOrder.getOrderAmount())); - summary.setRetailRepurchasePv(summary.getRetailRepurchasePv().add(saOrder.getOrderAchieve())); + if(ObjectUtil.isNotEmpty(groupedOrders.get(EOrderType.RETAIL_REPURCHASE.getValue()))) { + for (SaOrder saOrder : groupedOrders.get(EOrderType.RETAIL_REPURCHASE.getValue())) { + summary.setRetailRepurchaseAmount(summary.getRetailRepurchaseAmount().add(saOrder.getOrderAmount())); + summary.setRetailRepurchasePv(summary.getRetailRepurchasePv().add(saOrder.getOrderAchieve())); - summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); - summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } } - for (SaOrder saOrder : groupedOrders.get(44)) { - summary.setRetailDiscountAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); - summary.setDividendPv(summary.getDividendPv().add(saOrder.getOrderAchieve())); + if(ObjectUtil.isNotEmpty(groupedOrders.get(EOrderType.RETAIL_CONSUME.getValue()))){ + for (SaOrder saOrder : groupedOrders.get(EOrderType.RETAIL_CONSUME.getValue())) { + summary.setRetailDiscountAmount(summary.getRetailDiscountAmount().add(saOrder.getOrderAmount())); + summary.setDividendPv(summary.getDividendPv().add(saOrder.getOrderAchieve())); - summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); - summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + summary.setTotalAmount(summary.getTotalAmount().add(saOrder.getOrderAmount())); + summary.setTotalPv(summary.getTotalPv().add(saOrder.getOrderAmount())); + } } summary.setDividendPv(summary.getTotalPv().multiply(new BigDecimal("0.015"))); baseMapper.insert(summary); From edb598878e4d5dc8a562f2f7713f2e3fd83d3148 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Wed, 24 Sep 2025 17:55:12 +0800 Subject: [PATCH 247/362] =?UTF-8?q?##=20Opt=20-=20=E5=A5=96=E9=87=91?= =?UTF-8?q?=E6=9D=A5=E6=BA=90=20=E5=A2=9E=E5=8A=A0=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=94=B6=E7=9B=8A=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberBonusStageMapper.java | 12 ++ .../impl/CuMemberBonusServiceImpl.java | 10 ++ .../bonus/bonus/CuMemberBonusDetailMapper.xml | 20 +++ .../bonus/bonus/CuMemberBonusStageMapper.xml | 126 ++++++++++++++++++ 4 files changed, 168 insertions(+) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java index cffb0062..a3e1dec7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java @@ -1,7 +1,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.bonus.bonus.param.BonusParam; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.member.ext.CuMemberBonusDetailExt; +import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -21,4 +24,13 @@ public interface CuMemberBonusStageMapper extends BaseMapper */ void batchInsertCuMemberBonusStage(@Param("cuMemberBonusStageList") List cuMemberBonusStageList); + + + + /** + * 根据查询条件查询固定的奖金明细(阶段收益) + * + * @param bonusParam 查询条件 + */ + List queryMemberBonusStageByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 8f3edff8..1d45ed1a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -62,6 +62,8 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusDetailList = cuMemberBonusStageMapper.queryMemberBonusStageByBonusItemsFoServer(bonusParam); + dataTable = getDataTable(cuMemberBonusDetailList); + cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> { + MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusDetail, MemberBonusDetailSerVO.class); + memberBonusDetailSerVoS.add(memberBonusDetailVO); + }); } else { // 其他收益 区域分红、月度分红平均、月度分红加权 List cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItemsForServer(bonusParam); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml index 7dc5b3e3..a7f89558 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml @@ -326,6 +326,26 @@ and cd.pk_bonus_items = #{bonusParam.pkBonusItems} + union all + select + cb.pk_member,cs.pk_order,cb.period,cb.pk_country,cs.pk_bonus_items,cs.income_status,cs.CAL_ACHIEVE,cs.pretax_income,cs.income_tax,cs.real_income, + cs.remark,cs.income_ratio,cs.income_dial_ratio,cs.order_dial_ratio + from cu_member_bonus cb + inner join CU_MEMBER_BONUS_STAGE cs + on cb.pk_id = cs.pk_bonus + where 1=1 + + and cs.pk_bonus = #{bonusParam.pkBonus} + + + and cs.pk_range = #{bonusParam.pkGrade} + + + and cb.period = #{bonusParam.period} + + + and cd.pk_bonus_items = #{bonusParam.pkBonusItems} + ) x where 1=1 diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 42f3c685..34f3bbdd 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -33,4 +33,130 @@ SELECT 1 FROM dual + From bacbb6116880290928dcd0c8de53a28566ebb3df Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 24 Sep 2025 18:00:36 +0800 Subject: [PATCH 248/362] =?UTF-8?q?##=20=E4=B8=80=E4=BA=8C=E4=B8=89?= =?UTF-8?q?=E9=98=B6=E6=AE=B5=E5=A1=AB=E5=85=85=E7=82=B9=E4=BD=8D=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=EF=BC=9B=E4=B8=80=E4=BA=8C=E9=98=B6=E6=AE=B5=E5=A5=96?= =?UTF-8?q?=E9=87=91=E8=AE=A1=E7=AE=97=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ICuMemberRetailDetailService.java | 3 +- .../impl/CuMemberRetailDetailServiceImpl.java | 41 ++- .../impl/CuMemberRetailRangeServiceImpl.java | 18 ++ .../hzs/bonus/bonus/dto/BonusStageData.java | 11 +- .../bonus/service/impl/BonusSettleHandle.java | 20 +- .../service/impl/BonusSettleRangeHandle.java | 271 ++++++++++++------ .../impl/CuMemberBonusStageServiceImpl.java | 58 +++- .../achieve/CuMemberRetailRangeMapper.xml | 20 +- .../bonus/achieve/CuMemberTreeMapper.xml | 39 +-- .../mapper/bonus/order/BonusOrderMapper.xml | 2 +- ...CuMemberPerformanceSummaryServiceImpl.java | 2 + .../core/constant/msg/BonusMsgConstants.java | 4 + .../member/achieve/CuMemberRetailRange.java | 6 + .../report/CuMemberPerformanceSummary.java | 3 +- 14 files changed, 363 insertions(+), 135 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index 5358fd25..ab48d9c5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -16,7 +16,8 @@ public interface ICuMemberRetailDetailService extends IService memberRangeExtMap, EBonusStage eBonusStage); + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + EBonusStage eBonusStage, List stageMemberList); /** * 指定会员获取对应的点位数据 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index e59bc8a9..435bcfb9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -23,8 +23,14 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, EBonusStage eBonusStage) { - List> pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + EBonusStage eBonusStage, List stageMemberList) { + List> pkMemberList; + if (CollectionUtil.isNotEmpty(stageMemberList)) { + pkMemberList = cuMemberBonusSettle.handleCutList(stageMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + } else { + pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); + } pkMemberList.forEach(tmpIdList -> { // 查询明细数据(指定阶段,未完成的) List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); @@ -41,9 +47,16 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl()); } + // 使用有序map,为了后续业务处理方便 if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 阶段一点位列表(使用有序map,为了后续业务处理方便) + // 阶段一点位列表 cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + // 阶段二点位列表 + cuMemberRetailRangeExt.getTwoDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + // 阶段三点位列表 + cuMemberRetailRangeExt.getThreeDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } } @@ -59,12 +72,26 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl()); + } + if (null == cuMemberRetailRangeExt.getTwoDetailMap()) { + cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>()); + } + if (null == cuMemberRetailRangeExt.getThreeDetailMap()) { + cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>()); + } + // 使用有序map,为了后续业务处理方便 if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 阶段一点位列表(使用有序map,为了后续业务处理方便) - if (null == cuMemberRetailRangeExt.getOneDetailMap()) { - cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); - } + // 阶段一点位列表 cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + // 阶段二点位列表 + cuMemberRetailRangeExt.getTwoDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + // 阶段三点位列表 + cuMemberRetailRangeExt.getThreeDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); } } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 87745682..91841667 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -106,6 +106,24 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl 0) { + Collection tmpDetailColl = value.getTwoDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } + } + if (null != value.getThreeDetailMap() && value.getThreeDetailMap().size() > 0) { + Collection tmpDetailColl = value.getThreeDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } + } }); List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); list.forEach(tmpList -> { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java index 36cdcbbe..eb5ff7ea 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; import java.math.BigDecimal; /** - * 阶段奖金数据 + * 阶段数据 */ @Builder @AllArgsConstructor @@ -38,4 +38,13 @@ public class BonusStageData { */ private Integer stageNum; + /** + * 二阶段点位 + */ + private CuMemberRetailDetail twoRetailDetail; + /** + * 三阶段点位 + */ + private CuMemberRetailDetail threeRetailDetail; + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index c00f9fb9..106d74a0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -83,10 +83,18 @@ public abstract class BonusSettleHandle { */ protected void stageIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusStage cuMemberBonusStage, CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember) { - String remark = String.format(BonusMsgConstants.STAGE_INCOME, saOrderExt.getOrderCode(), - sourceMember.getMemberCode() + sourceMember.getMemberName(), - targetMember.getMemberCode() + targetMember.getMemberName(), - cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + String remark; + if (null != saOrderExt) { + remark = String.format(BonusMsgConstants.STAGE_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + } else { + remark = String.format(BonusMsgConstants.STAGE_INCOME_OTHER, + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + } cuMemberBonusStage.setRemark(remark); } @@ -248,7 +256,9 @@ public abstract class BonusSettleHandle { ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_TAX, incomeTax); ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.REAL_INCOME, realIncome); // 收益占比 - ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); + if (null != orderAmount && null != exchangeRate) { + ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); + } return bdBonusDeduct; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index d25286d4..cde545bd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -275,7 +275,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); // 新零售订单(注册、复购) - List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, + Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 @@ -294,6 +295,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 初始化结算明细数据(昨天数据更新到今天数据) iCuMemberRetailRangeService.mergeMemberRetailRangeDetailByYesterday(rangeDetailTableName, yesterdayRangeDetailTableName); + // 升阶段点位列表 + List stageList = new ArrayList<>(); + if (orderList.size() > 0) { // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); @@ -306,7 +310,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, null); // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -331,11 +335,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 直推收益 -- 来源订单金额,直推拿金额的10% this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); - - // TODO 阶段收益 -- 来源订单金额 - this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, - memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE); - + // 一阶段收益 -- 来源订单金额 + stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName)); // TODO 领导级差收益 -- 来源PV // TODO 领导平差收益 -- 来源PV @@ -344,13 +346,32 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, saOrderExt, bonusConfigDTO, period, cuMemberBonusMap); - // TODO 阶段收益 -- 来源订单业绩 - + // 一阶段收益 -- 来源订单累计业绩 + stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName)); } } - // TODO 统一处理第二阶段还是 fillRetailDetail 方法进行处理 + // TODO 处理升二阶段点位 + if (CollectionUtil.isNotEmpty(stageList)) { + List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询血缘会员明细数据(二阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, stageMemberList); + // 二阶段收益 + stageList = this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.TWO, stageList); + } + + // TODO 处理升三阶段点位 + if (CollectionUtil.isNotEmpty(stageList)) { + List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询血缘会员明细数据(三段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, stageMemberList); + // 二阶段收益 + this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.THREE, stageList); + } if (cuMemberBonusPushList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); @@ -930,26 +951,44 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 计算阶段收益 -- 精品专区 + * 计算一阶段收益 -- 精品专区、商城专区 */ - private void calculateStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, - BonusConfigDTO bonusConfigDTO, Integer period, - Map memberRangeExtMap, SaOrderExt saOrderExt, - Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage) { - // 订单金额除50取整,为新増点位数量 - int newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); - if (newPointInt == 0) { - // 当前精品专区订单不足生成点位 - return; - } - + private List calculateStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName) { + List returnRetailDetailList = new ArrayList<>(); // 订单会员 CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + if (null == sourceMember) { + log.error("阶段收益处理失败,订单会员不存在. orderCode: {}, pkMember: {}", saOrderExt.getOrderCode(), saOrderExt.getPkMember()); + return returnRetailDetailList; + } + + int newPointInt; + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区按订单金额计算 + // 订单金额除50取整,为新増点位数量 + newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + } else { + // 商城专区按累计业绩处理 + BigDecimal repPvBalance = sourceMember.getRepPvBalance().add(saOrderExt.getOrderAchieve()); + newPointInt = repPvBalance.divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + sourceMember.setRepPvBalance(repPvBalance.subtract(RetailConstants.POINT_VAL.multiply(new BigDecimal(newPointInt)))); + } + if (newPointInt == 0) { + // 当前订单不足生成点位 + return returnRetailDetailList; + } + // 会员一阶段子点位列表 LinkedHashMap detailList = sourceMember.getOneDetailMap(); if (null == detailList) { detailList = new LinkedHashMap<>(); sourceMember.setOneDetailMap(detailList); + sourceMember.setTwoDetailMap(new LinkedHashMap<>()); + sourceMember.setThreeDetailMap(new LinkedHashMap<>()); } // 当前会员子点位总数 int pointCount = sourceMember.getPointCount(); @@ -968,76 +1007,136 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); - // 阶段奖金处理列表 - List bonusStageDataList = new ArrayList<>(); - // 推荐人 - Long pkParent = sourceMember.getPkParent(); - while (true) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); - if (null == targetMember) { - // 没有推荐人了,则直接结束 - break; - } - pkParent = targetMember.getPkParent(); + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, + sourceMember, newRetailDetail, returnRetailDetailList); + } + return returnRetailDetailList; + } - // 推荐人一阶段子点位列表 - LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); - if (CollectionUtil.isEmpty(parentDetailList)) { - // 推荐人没有未完成点位,继续往上找 - continue; - } - - // 推荐人第一层点位处理 - boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第一层找到并填充点位,就开始下一个点位的处理 - break; - } - - // 推荐人第二层点位处理 - forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第二层找到并填充点位,就开始下一个点位的处理 - break; - } - - // 推荐人第三层点位处理 - forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第三层找到并填充点位,就开始下一个点位的处理 - break; - } + /** + * 计算二、三阶段收益 + */ + private List calculateStageIncomeTwoThree(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage, + List stageList) { + List returnRetailDetailList = new ArrayList<>(); + for (CuMemberRetailDetail memberRetailDetail : stageList) { + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(memberRetailDetail.getPkMember()); + if (null == sourceMember) { + log.error("阶段收益处理失败,{}会员不存在. pkMember: {}", eBonusStage.getLabel(), memberRetailDetail.getPkMember()); + return returnRetailDetailList; } - if (CollectionUtil.isNotEmpty(bonusStageDataList)) { - // 有需要生成奖金的数据 - for (BonusStageData bonusStageData : bonusStageDataList) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(bonusStageData.getTargetPkMember()); - // 会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), - targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, null, settleDate, rangeTableName, rangeDetailTableName, eBonusStage, + sourceMember, memberRetailDetail, returnRetailDetailList); + } + return returnRetailDetailList; + } - // 阶段奖金 - int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.STAGE_INCOME.getValue()); - // 阶段收益明细 - CuMemberBonusStage cuMemberBonusStage = iCuMemberBonusStageService.getCuMemberBonusStage(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); - cuMemberBonusStage.setPretaxIncome(bonusStageData.getBonusIncome()); - cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); - cuMemberBonusStage.setStage(bonusStageData.getStage()); - cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); - stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { - cuMemberBonus.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonus.getStoreIncome(), cuMemberBonusStage.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusStage); - } - cuMemberBonusStageList.add(cuMemberBonusStage); - } + /** + * 处理阶段收益(一、二、三阶段) + */ + private void handleStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage, + CuMemberRetailRangeExt sourceMember, CuMemberRetailDetail newRetailDetail, + List returnRetailDetailList) { + // 阶段奖金处理列表 + List bonusStageDataList = new ArrayList<>(); + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + pkParent = targetMember.getPkParent(); + + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = null; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getThreeDetailMap(); + } + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; } + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } + } + + if (CollectionUtil.isNotEmpty(bonusStageDataList)) { + // 有需要生成奖金的数据 + for (BonusStageData bonusStageData : bonusStageDataList) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(bonusStageData.getTargetPkMember()); + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? (saOrderExt != null ? saOrderExt.getPkRate() : 0) : targetMember.getPkRate()); + // 阶段奖金 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.STAGE_INCOME.getValue()); + // 阶段收益明细 + CuMemberBonusStage cuMemberBonusStage = iCuMemberBonusStageService.getCuMemberBonusStage(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusStage.setPretaxIncome(bonusStageData.getBonusIncome()); + cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); + cuMemberBonusStage.setStage(bonusStageData.getStage()); + cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt != null ? saOrderExt.getOrderAmount() : null, saOrderExt != null ? saOrderExt.getInExchangeRate() : null); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { + cuMemberBonus.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonus.getStoreIncome(), cuMemberBonusStage.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusStage); + } + cuMemberBonusStageList.add(cuMemberBonusStage); + + // 升阶段数据 + if (EBonusStage.ONE.getValue() == bonusStageData.getStage()) { + // 一阶段需要处理升阶段 + CuMemberRetailDetail twoRetailDetail = bonusStageData.getTwoRetailDetail(); + targetMember.getTwoDetailMap().put(twoRetailDetail.getChildNode(), twoRetailDetail); + returnRetailDetailList.add(twoRetailDetail); + } else if (EBonusStage.TWO.getValue() == bonusStageData.getStage()) { + // 二阶段需要处理升阶段 + CuMemberRetailDetail threeRetailDetail = bonusStageData.getThreeRetailDetail(); + targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); + returnRetailDetailList.add(threeRetailDetail); + } else if (EBonusStage.THREE.getValue() == bonusStageData.getStage()) { + // TODO 三阶段需要赠送点位 + + } + } } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index a5d4d8de..ca20e7fd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -284,27 +284,55 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl getRetailDetailMap(CuMemberRetailRangeExt memberRetail, EBonusStage eBonusStage) { + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + return memberRetail.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + return memberRetail.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + return memberRetail.getThreeDetailMap(); + } + return new LinkedHashMap<>(); + } + } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index d6667d93..6762c774 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -51,6 +51,7 @@ + @@ -92,7 +93,9 @@ rep_consume_new_amount = 0, rep_consume_new_pv = 0, rep_team_new_amount = 0, - rep_team_new_pv = 0 + rep_team_new_pv = 0, + point_count = 0, + rep_pv_balance = 0 @@ -103,7 +106,8 @@ consume_amount, month_consume_amount, team_consume_pv, team_month_pv, team_consume_amount, team_month_amount, - recommend_num, team_num, big_team_pv, small_team_pv + recommend_num, team_num, big_team_pv, small_team_pv, + point_count, rep_pv_balance from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -115,7 +119,8 @@ a.team_consume_pv = b.team_consume_pv, a.team_consume_amount = b.team_consume_amount, a.recommend_num = b.recommend_num, a.team_num = b.team_num, - a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv + a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, + a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance ,a.month_consume_pv = b.month_consume_pv ,a.month_consume_amount = b.month_consume_amount @@ -322,7 +327,8 @@ #{item.regConsumeNewAmount} reg_consume_new_amount, #{item.regConsumeNewPv} reg_consume_new_pv, #{item.regTeamNewAmount} reg_team_new_amount, #{item.regTeamNewPv} reg_team_new_pv, #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, - #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv + #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv, + #{item.pointCount} point_count, #{item.repPvBalance} rep_pv_balance from dual ) b @@ -337,7 +343,8 @@ a.reg_consume_new_amount = b.reg_consume_new_amount, a.reg_consume_new_pv = b.reg_consume_new_pv, a.reg_team_new_amount = b.reg_team_new_amount, a.reg_team_new_pv = b.reg_team_new_pv, a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, - a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv + a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv, + a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance @@ -647,6 +654,7 @@ rep_team_new_amount, rep_team_new_pv, point_count, + rep_pv_balance, bw.awards_value, bw.awards_name from ( @@ -701,6 +709,8 @@ rep_consume_new_pv, rep_team_new_amount, rep_team_new_pv, + point_count, + rep_pv_balance, bw.awards_value, bw.awards_name from ${tableName} a diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index dd57f034..5a304b4c 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -298,43 +298,43 @@ stage NUMBER(1) default 1 not null, stage_status NUMBER(1) default 1 not null, stage_date DATE, - point_11 NUMBER(8), point_member_11 NUMBER(20), - point_12 NUMBER(8), + point_11 NUMBER(8), point_member_12 NUMBER(20), - point_21 NUMBER(8), + point_12 NUMBER(8), point_member_21 NUMBER(20), - point_22 NUMBER(8), + point_21 NUMBER(8), point_member_22 NUMBER(20), - point_23 NUMBER(8), + point_22 NUMBER(8), point_member_23 NUMBER(20), - point_24 NUMBER(8), + point_23 NUMBER(8), point_member_24 NUMBER(20), - point_31 NUMBER(8), + point_24 NUMBER(8), point_member_31 NUMBER(20), - point_32 NUMBER(8), + point_31 NUMBER(8), point_member_32 NUMBER(20), - point_33 NUMBER(8), + point_32 NUMBER(8), point_member_33 NUMBER(20), - point_34 NUMBER(8), + point_33 NUMBER(8), point_member_34 NUMBER(20), - point_35 NUMBER(8), + point_34 NUMBER(8), point_member_35 NUMBER(20), - point_36 NUMBER(8), + point_35 NUMBER(8), point_member_36 NUMBER(20), - point_37 NUMBER(8), + point_36 NUMBER(8), point_member_37 NUMBER(20), - point_38 NUMBER(8), + point_37 NUMBER(8), point_member_38 NUMBER(20), + point_38 NUMBER(8), point_type NUMBER(1) default 0 not null, point_gift NUMBER(1) default 0 not null, creation_time DATE, - point_first NUMBER(8), point_member_first NUMBER(20), - point_second NUMBER(8), + point_first NUMBER(8), point_member_second NUMBER(20), - point_third NUMBER(8), - point_member_third NUMBER(20) + point_second NUMBER(8), + point_member_third NUMBER(20), + point_third NUMBER(8) ) @@ -572,7 +572,8 @@ rep_consume_new_pv number(17,6) default 0 not null, rep_team_new_amount number(17,6) default 0 not null, rep_team_new_pv number(17,6) default 0 not null, - point_count number(8) default 0 not null + point_count number(8) default 0 not null, + rep_pv_balance number(17,6) default 0 not null ) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 7d93e0e3..1a2fc7a0 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -80,7 +80,7 @@ where so.del_flag = 0 and so.order_status = 1 - and so.order_code=#{orderCode} + and so.order_code = #{orderCode} and so.order_type in diff --git a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java index b41f97e5..b7695955 100644 --- a/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java +++ b/bd-business/bd-business-report/src/main/java/com/hzs/report/order/service/impl/CuMemberPerformanceSummaryServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.report.order.service.impl; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.report.CuMemberPerformanceSummary; @@ -78,6 +79,7 @@ public class CuMemberPerformanceSummaryServiceImpl extends ServiceImpl Date: Wed, 24 Sep 2025 19:05:58 +0800 Subject: [PATCH 249/362] =?UTF-8?q?##=20=E6=AF=8F=E6=97=A5=E7=82=B9?= =?UTF-8?q?=E4=BD=8D=E6=80=BB=E6=95=B0=E5=A4=84=E7=90=86=EF=BC=9B=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E4=B8=89=E9=98=B6=E6=AE=B5=E5=A5=96=E9=87=91=E5=8F=91?= =?UTF-8?q?=E6=94=BE=E8=AE=B0=E5=BD=95=E5=AD=97=E6=AE=B5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 1 + .../hzs/bonus/constant/BonusConstants.java | 16 ++ .../achieve/CuMemberRetailDetailMapper.xml | 1 - .../achieve/CuMemberRetailRangeMapper.xml | 20 +- .../bonus/achieve/CuMemberTreeMapper.xml | 5 +- .../member/achieve/CuMemberRetailDetail.java | 192 +++++++++--------- 6 files changed, 134 insertions(+), 101 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index cde545bd..af4d9618 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1011,6 +1011,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); } + sourceMember.setPointCount(sourceMember.getPointCount() + newPointInt); return returnRetailDetailList; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index e0ea54b8..021b5515 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -20,6 +20,22 @@ public class BonusConstants { * 二阶段奖金 -- 满14,发220 */ public static final BigDecimal TWO_BONUS = new BigDecimal("220"); + /** + * 三阶段一层奖金 -- 第一层满2,发160 + */ + public static final BigDecimal THREE_BONUS_1 = new BigDecimal("160"); + /** + * 三阶段二层奖金 -- 第二层满4,发320 + */ + public static final BigDecimal THREE_BONUS_2 = new BigDecimal("320"); + /** + * 三阶段三层前7点奖金 -- 发130 + */ + public static final BigDecimal THREE_BONUS_3 = new BigDecimal("130"); + /** + * 三阶段三层前最后一点奖金 -- 发155 + */ + public static final BigDecimal THREE_BONUS_38 = new BigDecimal("155"); public static final String POINT_11 = "11"; public static final String POINT_12 = "12"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index b1efab5b..e635dc97 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -11,7 +11,6 @@ #{items} and cmrd.stage = #{stage} - and cmrd.stage_status = 1 order by cmrd.pk_member, cmrd.child_node diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 6762c774..f8dca51b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -175,7 +175,10 @@ x.point_second, x.point_member_second, x.point_third, - x.point_member_third + x.point_member_third, + x.third_bonus_1, + x.third_bonus_2, + x.third_bonus_3 from ${yesterdayDetailTableName} x left join cu_member cm on cm.pk_id = x.pk_member @@ -224,7 +227,10 @@ point_second, point_member_second, point_third, - point_member_third) + point_member_third, + third_bonus_1, + third_bonus_2, + third_bonus_3) values (b.pk_member, b.child_node, b.pk_parent, @@ -267,7 +273,10 @@ b.point_second, b.point_member_second, b.point_third, - b.point_member_third) + b.point_member_third, + b.third_bonus_1, + b.third_bonus_2, + b.third_bonus_3) when matched then update set a.pk_parent = b.pk_parent, @@ -310,7 +319,10 @@ a.point_second = b.point_second, a.point_member_second = b.point_member_second, a.point_third = b.point_third, - a.point_member_third = b.point_member_third + a.point_member_third = b.point_member_third, + a.third_bonus_1 = b.third_bonus_1, + a.third_bonus_2 = b.third_bonus_2, + a.third_bonus_3 = b.third_bonus_3 diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 5a304b4c..28dd067a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -334,7 +334,10 @@ point_member_second NUMBER(20), point_second NUMBER(8), point_member_third NUMBER(20), - point_third NUMBER(8) + point_third NUMBER(8), + third_bonus_1 NUMBER(8), + third_bonus_2 NUMBER(8), + third_bonus_3 NUMBER(8) ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index ceaf9aa9..dee3dd8f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -57,173 +57,160 @@ public class CuMemberRetailDetail { @TableField("STAGE_DATE") private Date stageDate; + + /** + * 点位1-1会员ID + */ + @TableField("POINT_MEMBER_11") + private Long pointMember11; /** * 点位1-1会员子节点 */ @TableField("POINT_11") private Integer point11; + /** + * 点位1-2会员ID + */ + @TableField("POINT_MEMBER_12") + private Long pointMember12; /** * 点位1-2会员子节点 */ @TableField("POINT_12") private Integer point12; + /** + * 点位2-1会员ID + */ + @TableField("POINT_MEMBER_21") + private Long pointMember21; /** * 点位2-1会员子节点 */ @TableField("POINT_21") private Integer point21; + /** + * 点位2-2会员ID + */ + @TableField("POINT_MEMBER_22") + private Long pointMember22; /** * 点位2-2会员子节点 */ @TableField("POINT_22") private Integer point22; + /** + * 点位2-3会员ID + */ + @TableField("POINT_MEMBER_23") + private Long pointMember23; /** * 点位2-3会员子节点 */ @TableField("POINT_23") private Integer point23; + /** + * 点位2-4会员ID + */ + @TableField("POINT_MEMBER_24") + private Long pointMember24; /** * 点位2-4会员子节点 */ @TableField("POINT_24") private Integer point24; + /** + * 点位3-1会员ID + */ + @TableField("POINT_MEMBER_31") + private Long pointMember31; /** * 点位3-1会员子节点 */ @TableField("POINT_31") private Integer point31; + /** + * 点位3-2会员ID + */ + @TableField("POINT_MEMBER_32") + private Long pointMember32; /** * 点位3-2会员子节点 */ @TableField("POINT_32") private Integer point32; + /** + * 点位3-3会员ID + */ + @TableField("POINT_MEMBER_33") + private Long pointMember33; /** * 点位3-3会员子节点 */ @TableField("POINT_33") private Integer point33; + /** + * 点位3-4会员ID + */ + @TableField("POINT_MEMBER_34") + private Long pointMember34; /** * 点位3-4会员子节点 */ @TableField("POINT_34") private Integer point34; + /** + * 点位3-5会员ID + */ + @TableField("POINT_MEMBER_35") + private Long pointMember35; /** * 点位3-5会员子节点 */ @TableField("POINT_35") private Integer point35; + /** + * 点位3-6会员ID + */ + @TableField("POINT_MEMBER_36") + private Long pointMember36; /** * 点位3-6会员子节点 */ @TableField("POINT_36") private Integer point36; + /** + * 点位3-7会员ID + */ + @TableField("POINT_MEMBER_37") + private Long pointMember37; /** * 点位3-7会员子节点 */ @TableField("POINT_37") private Integer point37; - /** - * 点位3-8会员子节点 - */ - @TableField("POINT_38") - private Integer point38; - - /** - * 点位1-1会员ID - */ - @TableField("POINT_MEMBER_11") - private Long pointMember11; - - /** - * 点位1-2会员ID - */ - @TableField("POINT_MEMBER_12") - private Long pointMember12; - - /** - * 点位2-1会员ID - */ - @TableField("POINT_MEMBER_21") - private Long pointMember21; - - /** - * 点位2-2会员ID - */ - @TableField("POINT_MEMBER_22") - private Long pointMember22; - - /** - * 点位2-3会员ID - */ - @TableField("POINT_MEMBER_23") - private Long pointMember23; - - /** - * 点位2-4会员ID - */ - @TableField("POINT_MEMBER_24") - private Long pointMember24; - - /** - * 点位3-1会员ID - */ - @TableField("POINT_MEMBER_31") - private Long pointMember31; - - /** - * 点位3-2会员ID - */ - @TableField("POINT_MEMBER_32") - private Long pointMember32; - - /** - * 点位3-3会员ID - */ - @TableField("POINT_MEMBER_33") - private Long pointMember33; - - /** - * 点位3-4会员ID - */ - @TableField("POINT_MEMBER_34") - private Long pointMember34; - - /** - * 点位3-5会员ID - */ - @TableField("POINT_MEMBER_35") - private Long pointMember35; - - /** - * 点位3-6会员ID - */ - @TableField("POINT_MEMBER_36") - private Long pointMember36; - - /** - * 点位3-7会员ID - */ - @TableField("POINT_MEMBER_37") - private Long pointMember37; - /** * 点位3-8会员ID */ @TableField("POINT_MEMBER_38") private Long pointMember38; + /** + * 点位3-8会员子节点 + */ + @TableField("POINT_38") + private Integer point38; /** * 点位类型(0=普通,1=赠送点位) @@ -244,6 +231,11 @@ public class CuMemberRetailDetail { @TableField("CREATION_TIME") private Date creationTime; + /** + * 第一层会员ID + */ + @TableField("POINT_MEMBER_FIRST") + private Long pointMemberFirst; /** * 第一层会员子节点 */ @@ -251,11 +243,10 @@ public class CuMemberRetailDetail { private Integer pointFirst; /** - * 第一层会员ID + * 第二层会员ID */ - @TableField("POINT_MEMBER_FIRST") - private Long pointMemberFirst; - + @TableField("POINT_MEMBER_SECOND") + private Long pointMemberSecond; /** * 第二层会员子节点 */ @@ -263,11 +254,10 @@ public class CuMemberRetailDetail { private Integer pointSecond; /** - * 第二层会员ID + * 第三层会员ID */ - @TableField("POINT_MEMBER_SECOND") - private Long pointMemberSecond; - + @TableField("POINT_MEMBER_THIRD") + private Long pointMemberThird; /** * 第三层会员子节点 */ @@ -275,10 +265,22 @@ public class CuMemberRetailDetail { private Integer pointThird; /** - * 第三层会员ID + * 三阶段1层奖金次数 */ - @TableField("POINT_MEMBER_THIRD") - private Long pointMemberThird; + @TableField("THIRD_BONUS_1") + private Integer thirdBonus1; + + /** + * 三阶段2层奖金次数 + */ + @TableField("THIRD_BONUS_2") + private Integer thirdBonus2; + + /** + * 三阶段3层奖金次数 + */ + @TableField("THIRD_BONUS_3") + private Integer thirdBonus3; /** * 更新标记(不为null则需要入库) From 637aca701dd01116950eb79a77d4a9d25881c13d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 24 Sep 2025 19:05:58 +0800 Subject: [PATCH 250/362] =?UTF-8?q?##=20=E6=AF=8F=E6=97=A5=E7=82=B9?= =?UTF-8?q?=E4=BD=8D=E6=80=BB=E6=95=B0=E5=A4=84=E7=90=86=EF=BC=9B=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E4=B8=89=E9=98=B6=E6=AE=B5=E5=A5=96=E9=87=91=E5=8F=91?= =?UTF-8?q?=E6=94=BE=E8=AE=B0=E5=BD=95=E5=AD=97=E6=AE=B5=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 1 + .../hzs/bonus/constant/BonusConstants.java | 16 ++ .../achieve/CuMemberRetailDetailMapper.xml | 1 - .../achieve/CuMemberRetailRangeMapper.xml | 20 +- .../bonus/achieve/CuMemberTreeMapper.xml | 5 +- .../member/achieve/CuMemberRetailDetail.java | 192 +++++++++--------- 6 files changed, 134 insertions(+), 101 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index cde545bd..af4d9618 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1011,6 +1011,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); } + sourceMember.setPointCount(sourceMember.getPointCount() + newPointInt); return returnRetailDetailList; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index e0ea54b8..021b5515 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -20,6 +20,22 @@ public class BonusConstants { * 二阶段奖金 -- 满14,发220 */ public static final BigDecimal TWO_BONUS = new BigDecimal("220"); + /** + * 三阶段一层奖金 -- 第一层满2,发160 + */ + public static final BigDecimal THREE_BONUS_1 = new BigDecimal("160"); + /** + * 三阶段二层奖金 -- 第二层满4,发320 + */ + public static final BigDecimal THREE_BONUS_2 = new BigDecimal("320"); + /** + * 三阶段三层前7点奖金 -- 发130 + */ + public static final BigDecimal THREE_BONUS_3 = new BigDecimal("130"); + /** + * 三阶段三层前最后一点奖金 -- 发155 + */ + public static final BigDecimal THREE_BONUS_38 = new BigDecimal("155"); public static final String POINT_11 = "11"; public static final String POINT_12 = "12"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index b1efab5b..e635dc97 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -11,7 +11,6 @@ #{items} and cmrd.stage = #{stage} - and cmrd.stage_status = 1 order by cmrd.pk_member, cmrd.child_node diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 6762c774..f8dca51b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -175,7 +175,10 @@ x.point_second, x.point_member_second, x.point_third, - x.point_member_third + x.point_member_third, + x.third_bonus_1, + x.third_bonus_2, + x.third_bonus_3 from ${yesterdayDetailTableName} x left join cu_member cm on cm.pk_id = x.pk_member @@ -224,7 +227,10 @@ point_second, point_member_second, point_third, - point_member_third) + point_member_third, + third_bonus_1, + third_bonus_2, + third_bonus_3) values (b.pk_member, b.child_node, b.pk_parent, @@ -267,7 +273,10 @@ b.point_second, b.point_member_second, b.point_third, - b.point_member_third) + b.point_member_third, + b.third_bonus_1, + b.third_bonus_2, + b.third_bonus_3) when matched then update set a.pk_parent = b.pk_parent, @@ -310,7 +319,10 @@ a.point_second = b.point_second, a.point_member_second = b.point_member_second, a.point_third = b.point_third, - a.point_member_third = b.point_member_third + a.point_member_third = b.point_member_third, + a.third_bonus_1 = b.third_bonus_1, + a.third_bonus_2 = b.third_bonus_2, + a.third_bonus_3 = b.third_bonus_3 diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 5a304b4c..28dd067a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -334,7 +334,10 @@ point_member_second NUMBER(20), point_second NUMBER(8), point_member_third NUMBER(20), - point_third NUMBER(8) + point_third NUMBER(8), + third_bonus_1 NUMBER(8), + third_bonus_2 NUMBER(8), + third_bonus_3 NUMBER(8) ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java index ceaf9aa9..dee3dd8f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailDetail.java @@ -57,173 +57,160 @@ public class CuMemberRetailDetail { @TableField("STAGE_DATE") private Date stageDate; + + /** + * 点位1-1会员ID + */ + @TableField("POINT_MEMBER_11") + private Long pointMember11; /** * 点位1-1会员子节点 */ @TableField("POINT_11") private Integer point11; + /** + * 点位1-2会员ID + */ + @TableField("POINT_MEMBER_12") + private Long pointMember12; /** * 点位1-2会员子节点 */ @TableField("POINT_12") private Integer point12; + /** + * 点位2-1会员ID + */ + @TableField("POINT_MEMBER_21") + private Long pointMember21; /** * 点位2-1会员子节点 */ @TableField("POINT_21") private Integer point21; + /** + * 点位2-2会员ID + */ + @TableField("POINT_MEMBER_22") + private Long pointMember22; /** * 点位2-2会员子节点 */ @TableField("POINT_22") private Integer point22; + /** + * 点位2-3会员ID + */ + @TableField("POINT_MEMBER_23") + private Long pointMember23; /** * 点位2-3会员子节点 */ @TableField("POINT_23") private Integer point23; + /** + * 点位2-4会员ID + */ + @TableField("POINT_MEMBER_24") + private Long pointMember24; /** * 点位2-4会员子节点 */ @TableField("POINT_24") private Integer point24; + /** + * 点位3-1会员ID + */ + @TableField("POINT_MEMBER_31") + private Long pointMember31; /** * 点位3-1会员子节点 */ @TableField("POINT_31") private Integer point31; + /** + * 点位3-2会员ID + */ + @TableField("POINT_MEMBER_32") + private Long pointMember32; /** * 点位3-2会员子节点 */ @TableField("POINT_32") private Integer point32; + /** + * 点位3-3会员ID + */ + @TableField("POINT_MEMBER_33") + private Long pointMember33; /** * 点位3-3会员子节点 */ @TableField("POINT_33") private Integer point33; + /** + * 点位3-4会员ID + */ + @TableField("POINT_MEMBER_34") + private Long pointMember34; /** * 点位3-4会员子节点 */ @TableField("POINT_34") private Integer point34; + /** + * 点位3-5会员ID + */ + @TableField("POINT_MEMBER_35") + private Long pointMember35; /** * 点位3-5会员子节点 */ @TableField("POINT_35") private Integer point35; + /** + * 点位3-6会员ID + */ + @TableField("POINT_MEMBER_36") + private Long pointMember36; /** * 点位3-6会员子节点 */ @TableField("POINT_36") private Integer point36; + /** + * 点位3-7会员ID + */ + @TableField("POINT_MEMBER_37") + private Long pointMember37; /** * 点位3-7会员子节点 */ @TableField("POINT_37") private Integer point37; - /** - * 点位3-8会员子节点 - */ - @TableField("POINT_38") - private Integer point38; - - /** - * 点位1-1会员ID - */ - @TableField("POINT_MEMBER_11") - private Long pointMember11; - - /** - * 点位1-2会员ID - */ - @TableField("POINT_MEMBER_12") - private Long pointMember12; - - /** - * 点位2-1会员ID - */ - @TableField("POINT_MEMBER_21") - private Long pointMember21; - - /** - * 点位2-2会员ID - */ - @TableField("POINT_MEMBER_22") - private Long pointMember22; - - /** - * 点位2-3会员ID - */ - @TableField("POINT_MEMBER_23") - private Long pointMember23; - - /** - * 点位2-4会员ID - */ - @TableField("POINT_MEMBER_24") - private Long pointMember24; - - /** - * 点位3-1会员ID - */ - @TableField("POINT_MEMBER_31") - private Long pointMember31; - - /** - * 点位3-2会员ID - */ - @TableField("POINT_MEMBER_32") - private Long pointMember32; - - /** - * 点位3-3会员ID - */ - @TableField("POINT_MEMBER_33") - private Long pointMember33; - - /** - * 点位3-4会员ID - */ - @TableField("POINT_MEMBER_34") - private Long pointMember34; - - /** - * 点位3-5会员ID - */ - @TableField("POINT_MEMBER_35") - private Long pointMember35; - - /** - * 点位3-6会员ID - */ - @TableField("POINT_MEMBER_36") - private Long pointMember36; - - /** - * 点位3-7会员ID - */ - @TableField("POINT_MEMBER_37") - private Long pointMember37; - /** * 点位3-8会员ID */ @TableField("POINT_MEMBER_38") private Long pointMember38; + /** + * 点位3-8会员子节点 + */ + @TableField("POINT_38") + private Integer point38; /** * 点位类型(0=普通,1=赠送点位) @@ -244,6 +231,11 @@ public class CuMemberRetailDetail { @TableField("CREATION_TIME") private Date creationTime; + /** + * 第一层会员ID + */ + @TableField("POINT_MEMBER_FIRST") + private Long pointMemberFirst; /** * 第一层会员子节点 */ @@ -251,11 +243,10 @@ public class CuMemberRetailDetail { private Integer pointFirst; /** - * 第一层会员ID + * 第二层会员ID */ - @TableField("POINT_MEMBER_FIRST") - private Long pointMemberFirst; - + @TableField("POINT_MEMBER_SECOND") + private Long pointMemberSecond; /** * 第二层会员子节点 */ @@ -263,11 +254,10 @@ public class CuMemberRetailDetail { private Integer pointSecond; /** - * 第二层会员ID + * 第三层会员ID */ - @TableField("POINT_MEMBER_SECOND") - private Long pointMemberSecond; - + @TableField("POINT_MEMBER_THIRD") + private Long pointMemberThird; /** * 第三层会员子节点 */ @@ -275,10 +265,22 @@ public class CuMemberRetailDetail { private Integer pointThird; /** - * 第三层会员ID + * 三阶段1层奖金次数 */ - @TableField("POINT_MEMBER_THIRD") - private Long pointMemberThird; + @TableField("THIRD_BONUS_1") + private Integer thirdBonus1; + + /** + * 三阶段2层奖金次数 + */ + @TableField("THIRD_BONUS_2") + private Integer thirdBonus2; + + /** + * 三阶段3层奖金次数 + */ + @TableField("THIRD_BONUS_3") + private Integer thirdBonus3; /** * 更新标记(不为null则需要入库) From 9495d34a6257d10945bc5244f28f75f5ea7de937 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 09:43:56 +0800 Subject: [PATCH 251/362] =?UTF-8?q?##=20=E5=85=BC=E5=AE=B9=E4=B8=89?= =?UTF-8?q?=E9=98=B6=E6=AE=B5=E9=83=A8=E5=88=86=E7=82=B9=E4=BD=8D=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=E4=BB=A5=E5=8F=8A=E6=94=B6=E7=9B=8A=E5=A4=84=E7=90=86?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E4=B8=BA=E7=A9=BA=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ICuMemberBonusStageService.java | 2 +- .../impl/CuMemberBonusStageServiceImpl.java | 165 +++++++++--------- .../achieve/CuMemberRetailDetailMapper.xml | 1 + 3 files changed, 89 insertions(+), 79 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 3cc8468c..73ed092d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -40,7 +40,7 @@ public interface ICuMemberBonusStageService extends IService /** * 填充指定点位 */ - boolean fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index ca20e7fd..89551eda 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -18,6 +18,7 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; import com.hzs.common.domain.sale.ext.SaOrderExt; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,6 +30,7 @@ import java.util.*; /** * 会员奖金-阶段收益明细表 服务实现类 */ +@Slf4j @Service public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { @@ -71,7 +73,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { + public void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, sourceRetailDetail.getPkMember()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, sourceRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0); - switch (point) { - case BonusConstants.POINT_31: - case BonusConstants.POINT_32: - case BonusConstants.POINT_33: - case BonusConstants.POINT_34: - case BonusConstants.POINT_35: - case BonusConstants.POINT_36: - case BonusConstants.POINT_37: - case BonusConstants.POINT_38: - // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 - boolean isFinish = true; - for (String suffix : BonusConstants.FIELD_LIST) { - if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { - isFinish = false; - break; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue() + || EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + switch (point) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 + boolean isFinish = true; + for (String suffix : BonusConstants.FIELD_LIST) { + if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + isFinish = false; + break; + } } - } - if (isFinish) { - targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - targetRetailDetail.setStageDate(settleDate); - if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 一阶段,全满发放阶段奖 - // 返回奖金收益处理数据 - BonusStageData bonusStageData = BonusStageData.builder() - .bonusIncome(BonusConstants.ONE_BONUS) - .targetPkMember(targetRetailDetail.getPkMember()) - .targetChildNode(targetRetailDetail.getChildNode()) - .stage(eBonusStage.getValue()) - .stageNum(14) - .build(); - // 生成二阶段点位 - bonusStageData.setTwoRetailDetail(CuMemberRetailDetail.builder() - .pkMember(targetRetailDetail.getPkMember()) - .childNode(targetRetailDetail.getChildNode()) - .pkParent(targetRetailDetail.getPkParent()) - .stage(EBonusStage.TWO.getValue()) - .stageStatus(EBonusStageStatus.NO.getValue()) - .pointType(targetRetailDetail.getPointType()) - .pointGift(targetRetailDetail.getPointGift()) - .creationTime(settleDate) - .updateBool(0) - .build()); - bonusStageDataList.add(bonusStageData); - } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { - // 二阶段,全满发放阶段奖 - // 返回奖金收益处理数据 - BonusStageData bonusStageData = BonusStageData.builder() - .bonusIncome(BonusConstants.TWO_BONUS) - .targetPkMember(targetRetailDetail.getPkMember()) - .targetChildNode(targetRetailDetail.getChildNode()) - .stage(eBonusStage.getValue()) - .stageNum(14) - .build(); - bonusStageData.setThreeRetailDetail(CuMemberRetailDetail.builder() - .pkMember(targetRetailDetail.getPkMember()) - .childNode(targetRetailDetail.getChildNode()) - .pkParent(targetRetailDetail.getPkParent()) - .stage(EBonusStage.THREE.getValue()) - .stageStatus(EBonusStageStatus.NO.getValue()) - .pointType(targetRetailDetail.getPointType()) - .pointGift(targetRetailDetail.getPointGift()) - .creationTime(settleDate) - .updateBool(0) - .build()); - bonusStageDataList.add(bonusStageData); - } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { - // TODO 三阶段发放特殊处理 - // TODO 三阶段填充满,判断是否需要赠送点位 + if (isFinish) { + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 一阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.ONE_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + // 生成二阶段点位 + bonusStageData.setTwoRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.TWO.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } else { + // 二阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.TWO_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + bonusStageData.setThreeRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.THREE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } + return; + } + break; + } + } else { + // TODO 三阶段发放特殊处理 + // TODO 三阶段填充满,判断是否需要赠送点位 + switch (point) { + case BonusConstants.POINT_11: + case BonusConstants.POINT_12: - } - return true; - } - break; + break; + } } - return false; } @Override diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index e635dc97..b1efab5b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -11,6 +11,7 @@ #{items} and cmrd.stage = #{stage} + and cmrd.stage_status = 1 order by cmrd.pk_member, cmrd.child_node From 5d19bb24c5e581409e7f9115686fbb066c32acf6 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 09:48:40 +0800 Subject: [PATCH 252/362] =?UTF-8?q?##=20=E9=98=B6=E6=AE=B5=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E6=B7=BB=E5=8A=A0=E6=9D=A5=E6=BA=90=E4=BC=9A=E5=91=98?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/bonus/service/impl/BonusSettleRangeHandle.java | 1 + .../mapper/bonus/bonus/CuMemberBonusStageMapper.xml | 4 ++-- .../hzs/common/domain/member/bonus/CuMemberBonusStage.java | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index af4d9618..5d23b740 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1114,6 +1114,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); cuMemberBonusStage.setStage(bonusStageData.getStage()); cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + cuMemberBonusStage.setPkSourceMember(sourceMember.getPkMember()); stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt != null ? saOrderExt.getOrderAmount() : null, saOrderExt != null ? saOrderExt.getInExchangeRate() : null); if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 34f3bbdd..4bcea10d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -22,13 +22,13 @@ cal_type, cal_achieve, cal_value, pretax_income, income_tax, real_income, remark, income_ratio, income_dial_ratio, order_dial_ratio, - pk_creator, child_node, stage, stage_num) + pk_creator, child_node, stage, stage_num, pk_source_member) values ( #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, - #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}) + #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}, #{item.pkSourceMember}) SELECT 1 FROM dual diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java index 746a38e0..d67b6fe5 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java @@ -133,5 +133,11 @@ public class CuMemberBonusStage extends BaseEntity { @TableField("STAGE_NUM") private Integer stageNum; + /** + * 来源会员ID + */ + @TableField("PK_SOURCE_MEMBER") + private Long pkSourceMember; + } From f50645d5ab8af6fd44aa3b7a2a3843cca85547f2 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 09:43:56 +0800 Subject: [PATCH 253/362] =?UTF-8?q?##=20=E5=85=BC=E5=AE=B9=E4=B8=89?= =?UTF-8?q?=E9=98=B6=E6=AE=B5=E9=83=A8=E5=88=86=E7=82=B9=E4=BD=8D=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=E4=BB=A5=E5=8F=8A=E6=94=B6=E7=9B=8A=E5=A4=84=E7=90=86?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E4=B8=BA=E7=A9=BA=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/ICuMemberBonusStageService.java | 2 +- .../impl/CuMemberBonusStageServiceImpl.java | 165 +++++++++--------- .../achieve/CuMemberRetailDetailMapper.xml | 1 + 3 files changed, 89 insertions(+), 79 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java index 3cc8468c..73ed092d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -40,7 +40,7 @@ public interface ICuMemberBonusStageService extends IService /** * 填充指定点位 */ - boolean fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index ca20e7fd..89551eda 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -18,6 +18,7 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusStage; import com.hzs.common.domain.sale.ext.SaOrderExt; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,6 +30,7 @@ import java.util.*; /** * 会员奖金-阶段收益明细表 服务实现类 */ +@Slf4j @Service public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { @@ -71,7 +73,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl bonusStageDataList) { + public void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, sourceRetailDetail.getPkMember()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, sourceRetailDetail.getChildNode()); ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0); - switch (point) { - case BonusConstants.POINT_31: - case BonusConstants.POINT_32: - case BonusConstants.POINT_33: - case BonusConstants.POINT_34: - case BonusConstants.POINT_35: - case BonusConstants.POINT_36: - case BonusConstants.POINT_37: - case BonusConstants.POINT_38: - // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 - boolean isFinish = true; - for (String suffix : BonusConstants.FIELD_LIST) { - if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { - isFinish = false; - break; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue() + || EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + switch (point) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 + boolean isFinish = true; + for (String suffix : BonusConstants.FIELD_LIST) { + if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + isFinish = false; + break; + } } - } - if (isFinish) { - targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); - targetRetailDetail.setStageDate(settleDate); - if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 一阶段,全满发放阶段奖 - // 返回奖金收益处理数据 - BonusStageData bonusStageData = BonusStageData.builder() - .bonusIncome(BonusConstants.ONE_BONUS) - .targetPkMember(targetRetailDetail.getPkMember()) - .targetChildNode(targetRetailDetail.getChildNode()) - .stage(eBonusStage.getValue()) - .stageNum(14) - .build(); - // 生成二阶段点位 - bonusStageData.setTwoRetailDetail(CuMemberRetailDetail.builder() - .pkMember(targetRetailDetail.getPkMember()) - .childNode(targetRetailDetail.getChildNode()) - .pkParent(targetRetailDetail.getPkParent()) - .stage(EBonusStage.TWO.getValue()) - .stageStatus(EBonusStageStatus.NO.getValue()) - .pointType(targetRetailDetail.getPointType()) - .pointGift(targetRetailDetail.getPointGift()) - .creationTime(settleDate) - .updateBool(0) - .build()); - bonusStageDataList.add(bonusStageData); - } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { - // 二阶段,全满发放阶段奖 - // 返回奖金收益处理数据 - BonusStageData bonusStageData = BonusStageData.builder() - .bonusIncome(BonusConstants.TWO_BONUS) - .targetPkMember(targetRetailDetail.getPkMember()) - .targetChildNode(targetRetailDetail.getChildNode()) - .stage(eBonusStage.getValue()) - .stageNum(14) - .build(); - bonusStageData.setThreeRetailDetail(CuMemberRetailDetail.builder() - .pkMember(targetRetailDetail.getPkMember()) - .childNode(targetRetailDetail.getChildNode()) - .pkParent(targetRetailDetail.getPkParent()) - .stage(EBonusStage.THREE.getValue()) - .stageStatus(EBonusStageStatus.NO.getValue()) - .pointType(targetRetailDetail.getPointType()) - .pointGift(targetRetailDetail.getPointGift()) - .creationTime(settleDate) - .updateBool(0) - .build()); - bonusStageDataList.add(bonusStageData); - } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { - // TODO 三阶段发放特殊处理 - // TODO 三阶段填充满,判断是否需要赠送点位 + if (isFinish) { + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 一阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.ONE_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + // 生成二阶段点位 + bonusStageData.setTwoRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.TWO.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } else { + // 二阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.TWO_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + bonusStageData.setThreeRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.THREE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } + return; + } + break; + } + } else { + // TODO 三阶段发放特殊处理 + // TODO 三阶段填充满,判断是否需要赠送点位 + switch (point) { + case BonusConstants.POINT_11: + case BonusConstants.POINT_12: - } - return true; - } - break; + break; + } } - return false; } @Override diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index e635dc97..b1efab5b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -11,6 +11,7 @@ #{items} and cmrd.stage = #{stage} + and cmrd.stage_status = 1 order by cmrd.pk_member, cmrd.child_node From 91fac644d346a4ba8edfd238fde430604d1920ee Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 09:48:40 +0800 Subject: [PATCH 254/362] =?UTF-8?q?##=20=E9=98=B6=E6=AE=B5=E6=94=B6?= =?UTF-8?q?=E7=9B=8A=E6=B7=BB=E5=8A=A0=E6=9D=A5=E6=BA=90=E4=BC=9A=E5=91=98?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/bonus/service/impl/BonusSettleRangeHandle.java | 1 + .../mapper/bonus/bonus/CuMemberBonusStageMapper.xml | 4 ++-- .../hzs/common/domain/member/bonus/CuMemberBonusStage.java | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index af4d9618..5d23b740 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1114,6 +1114,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); cuMemberBonusStage.setStage(bonusStageData.getStage()); cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + cuMemberBonusStage.setPkSourceMember(sourceMember.getPkMember()); stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt != null ? saOrderExt.getOrderAmount() : null, saOrderExt != null ? saOrderExt.getInExchangeRate() : null); if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 34f3bbdd..4bcea10d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -22,13 +22,13 @@ cal_type, cal_achieve, cal_value, pretax_income, income_tax, real_income, remark, income_ratio, income_dial_ratio, order_dial_ratio, - pk_creator, child_node, stage, stage_num) + pk_creator, child_node, stage, stage_num, pk_source_member) values ( #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, - #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}) + #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}, #{item.pkSourceMember}) SELECT 1 FROM dual diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java index 746a38e0..d67b6fe5 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonusStage.java @@ -133,5 +133,11 @@ public class CuMemberBonusStage extends BaseEntity { @TableField("STAGE_NUM") private Integer stageNum; + /** + * 来源会员ID + */ + @TableField("PK_SOURCE_MEMBER") + private Long pkSourceMember; + } From 6325679655b3bf3c0125ce5d82662654022ee0d5 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 25 Sep 2025 10:34:43 +0800 Subject: [PATCH 255/362] =?UTF-8?q?##=20Opt=20-=20=E5=A5=96=E9=87=91?= =?UTF-8?q?=E6=9D=A5=E6=BA=90=E8=B0=83=E6=95=B4=E6=9D=A5=E6=BA=90ID?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91&=E5=A5=96=E9=87=91=E6=98=8E?= =?UTF-8?q?=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiCuMemberBonusController.java | 9 +- .../service/impl/BonusGrantServiceImpl.java | 8 +- .../bonus/service/impl/BonusSettleHandle.java | 74 +++---- .../service/impl/BonusSettleRangeHandle.java | 4 +- .../impl/CuMemberBonusServiceImpl.java | 194 ++++++++-------- .../hzs/bonus/bonus/vo/CuMemberBonusVO.java | 86 +------- .../bonus/bonus/CuMemberBonusDetailMapper.xml | 52 +++-- .../bonus/bonus/CuMemberBonusMapper.xml | 104 ++------- .../bonus/bonus/CuMemberBonusStageMapper.xml | 16 +- .../domain/member/bonus/CuMemberBonus.java | 208 +----------------- 10 files changed, 225 insertions(+), 530 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java index 93552aa3..dc5a6d20 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java @@ -50,10 +50,11 @@ public class ApiCuMemberBonusController extends BaseController { MemberBonusVO memberBonusVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusVO.class, "settleDate"); memberBonusVO.setServiceSpend(BigDecimal.ZERO); memberBonusVO.setSettleDate(DateUtils.currentDate()); - BigDecimal serviceSpend = ComputeUtil.computeSubtract( - ComputeUtil.computeAddNum(cuMemberBonus.getRetailRangeIncome(), cuMemberBonus.getRetailSameLevelIncome(), cuMemberBonus.getRetailAreaIncome(), cuMemberBonus.getRepurRangeIncome()), - cuMemberBonus.getRetailRealSubtotal() - ); +// BigDecimal serviceSpend = ComputeUtil.computeSubtract( +// ComputeUtil.computeAddNum(cuMemberBonus.getRetailRangeIncome(), cuMemberBonus.getRetailSameLevelIncome(), cuMemberBonus.getRetailAreaIncome(), cuMemberBonus.getRepurRangeIncome()), +// cuMemberBonus.getRetailRealSubtotal() +// ); + BigDecimal serviceSpend = BigDecimal.ZERO; memberBonusVO.setBackPoints(serviceSpend); memberBonusVOList.add(memberBonusVO); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java index 5f3dae11..c8a4d4a2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java @@ -179,9 +179,9 @@ public class BonusGrantServiceImpl implements IBonusGrantService { // 奖金币(首购+复购+云代+海粉+嗨粉+店铺) packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate); // 重销币(商城重消+平台服务费) - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); // 复购券 - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); }); List seqList = iCuMemberTradeService.batchQueryCuMemberTradeSeq(cuMemberTradeList.size()); // 新增流水明细,记录奖金明细的发放状态、消费明细 @@ -236,9 +236,9 @@ public class BonusGrantServiceImpl implements IBonusGrantService { // 奖金币(首购+复购+云代+海粉+嗨粉+店铺) packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate); // 重销币(商城重消+平台服务费) - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); // 复购券 - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); }); List seqList = iCuMemberTradeService.batchQueryCuMemberTradeSeq(cuMemberTradeList.size()); // 新增流水明细,记录奖金明细的发放状态、消费明细 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 106d74a0..9873611b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -163,43 +163,43 @@ public abstract class BonusSettleHandle { .pkRate(pkRate) .incomeStatus(incomeStatus) .directIncome(BigDecimal.ZERO) - .expandIncome(BigDecimal.ZERO) - .expandNoCapping(BigDecimal.ZERO) - .expandCapping(BigDecimal.ZERO) - .coachIncome(BigDecimal.ZERO) - .shareIncome(BigDecimal.ZERO) - .serviceIncome(BigDecimal.ZERO) - .backPoints(BigDecimal.ZERO) - .serviceSpend(BigDecimal.ZERO) - .purRealSubtotal(BigDecimal.ZERO) - .repurPushIncome(BigDecimal.ZERO) - .repurRangeIncome(BigDecimal.ZERO) - .repurExpandIncome(BigDecimal.ZERO) - .repurRealSubtotal(BigDecimal.ZERO) - .cloudDirectIncome(BigDecimal.ZERO) - .cloudPurIncome(BigDecimal.ZERO) - .cloudRepurIncome(BigDecimal.ZERO) - .cloudRealSubtotal(BigDecimal.ZERO) - .repurCoupon(BigDecimal.ZERO) - .repurCouponShare(BigDecimal.ZERO) - .repurCouponSubtotal(BigDecimal.ZERO) +// .expandIncome(BigDecimal.ZERO) +// .expandNoCapping(BigDecimal.ZERO) +// .expandCapping(BigDecimal.ZERO) +// .coachIncome(BigDecimal.ZERO) +// .shareIncome(BigDecimal.ZERO) +// .serviceIncome(BigDecimal.ZERO) +// .backPoints(BigDecimal.ZERO) +// .serviceSpend(BigDecimal.ZERO) +// .purRealSubtotal(BigDecimal.ZERO) +// .repurPushIncome(BigDecimal.ZERO) +// .repurRangeIncome(BigDecimal.ZERO) +// .repurExpandIncome(BigDecimal.ZERO) +// .repurRealSubtotal(BigDecimal.ZERO) +// .cloudDirectIncome(BigDecimal.ZERO) +// .cloudPurIncome(BigDecimal.ZERO) +// .cloudRepurIncome(BigDecimal.ZERO) +// .cloudRealSubtotal(BigDecimal.ZERO) +// .repurCoupon(BigDecimal.ZERO) +// .repurCouponShare(BigDecimal.ZERO) +// .repurCouponSubtotal(BigDecimal.ZERO) .globalPoints(BigDecimal.ZERO) - .carAwardPoints(BigDecimal.ZERO) - .hiFunIncome(BigDecimal.ZERO) - .haiFunIncome(BigDecimal.ZERO) +// .carAwardPoints(BigDecimal.ZERO) +// .hiFunIncome(BigDecimal.ZERO) +// .haiFunIncome(BigDecimal.ZERO) .storeIncome(BigDecimal.ZERO) - .makerDirectIncome(BigDecimal.ZERO) - .makerShareIncome(BigDecimal.ZERO) - .makerRealSubtotal(BigDecimal.ZERO) +// .makerDirectIncome(BigDecimal.ZERO) +// .makerShareIncome(BigDecimal.ZERO) +// .makerRealSubtotal(BigDecimal.ZERO) .realIncomeTotal(BigDecimal.ZERO) - .retailRangeIncome(BigDecimal.ZERO) - .retailSameLevelIncome(BigDecimal.ZERO) - .retailAreaIncome(BigDecimal.ZERO) - .retailBenefitRangeIncome(BigDecimal.ZERO) - .retailMonthRepurchaseIncome(BigDecimal.ZERO) - .retailBenefitAvgIncome(BigDecimal.ZERO) - .retailBenefitIncome(BigDecimal.ZERO) - .retailRealSubtotal(BigDecimal.ZERO) +// .retailRangeIncome(BigDecimal.ZERO) +// .retailSameLevelIncome(BigDecimal.ZERO) +// .retailAreaIncome(BigDecimal.ZERO) +// .retailBenefitRangeIncome(BigDecimal.ZERO) +// .retailMonthRepurchaseIncome(BigDecimal.ZERO) +// .retailBenefitAvgIncome(BigDecimal.ZERO) +// .retailBenefitIncome(BigDecimal.ZERO) +// .retailRealSubtotal(BigDecimal.ZERO) .build(); cuMemberBonus.setPkCreator(MagicNumberConstants.PK_ADMIN); cuMemberBonus.setPkCountry(pkCountry); @@ -223,8 +223,8 @@ public abstract class BonusSettleHandle { backRatio = bdBonusDeduct.getBackRatio(); platformRatio = bdBonusDeduct.getPlatformRatio(); } - cuMemberBonus.setBackPoints(ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), ComputeUtil.computeBonusMultiply(pretaxIncome, backRatio))); - cuMemberBonus.setServiceSpend(ComputeUtil.computeAdd(cuMemberBonus.getServiceSpend(), ComputeUtil.computeBonusMultiply(pretaxIncome, platformRatio))); +// cuMemberBonus.setBackPoints(ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), ComputeUtil.computeBonusMultiply(pretaxIncome, backRatio))); +// cuMemberBonus.setServiceSpend(ComputeUtil.computeAdd(cuMemberBonus.getServiceSpend(), ComputeUtil.computeBonusMultiply(pretaxIncome, platformRatio))); } /** @@ -233,7 +233,7 @@ public abstract class BonusSettleHandle { protected void setRetailTotal(BdBonusDeduct bdBonusDeduct, CuMemberBonus cuMemberBonus, Object bonusDetail) { setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail); BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME); - cuMemberBonus.setRetailRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRetailRealSubtotal(), realIncome)); +// cuMemberBonus.setRetailRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRetailRealSubtotal(), realIncome)); cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 5d23b740..b15967f9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -742,7 +742,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); +// cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); } memberBonusRangeList.add(cuMemberBonusRange); @@ -762,7 +762,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { oriRetailRangeRemark(saOrderExt, oriMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, oriMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); if (EBonusIncomeStatus.NORMAL.getValue() == oriMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); +// cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); setRetailTotal(bdBonusDeduct, cuMemberBonus, oriMemberBonusRange); } memberBonusRangeList.add(oriMemberBonusRange); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 1d45ed1a..7d7d1259 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -113,36 +113,36 @@ public class CuMemberBonusServiceImpl extends ServiceImpl select - nvl(sum(cb.direct_income),0) direct_income, - nvl(sum(cb.expand_income),0) expand_income, - nvl(sum(cb.expand_no_capping),0) expand_no_capping, - nvl(sum(cb.expand_capping),0) expand_capping, - nvl(sum(cb.coach_income),0) coach_income, - nvl(sum(cb.share_income),0) share_income, - nvl(sum(cb.service_income),0) service_income, - nvl(sum(cb.back_points),0) back_points, - nvl(sum(cb.service_spend),0) service_spend, - nvl(sum(cb.pur_real_subtotal),0) pur_real_subtotal, - nvl(sum(cb.repur_push_income),0) repur_push_income, - nvl(sum(cb.repur_expand_income),0) repur_expand_income, - nvl(sum(cb.repur_real_subtotal),0) repur_real_subtotal, - nvl(sum(cb.repur_coupon),0) repur_coupon, - nvl(sum(cb.repur_coupon_share),0) repur_coupon_share, - nvl(sum(cb.repur_coupon_subtotal),0) repur_coupon_subtotal, - nvl(sum(cb.store_income),0) store_income, - nvl(sum(cb.global_points),0) global_points, - nvl(sum(cb.car_award_points),0) car_award_points, - bc.out_exchange_rate, - nvl(sum(cb.repur_range_income),0) repur_range_income, - nvl(sum(cb.retail_range_income),0) retail_range_income, - nvl(sum(cb.retail_same_level_income),0) retail_same_level_income, - nvl(sum(cb.retail_area_income),0) retail_area_income, - nvl(sum(cb.retail_benefit_range_income),0) retail_benefit_range_income, - nvl(sum(cb.retail_month_repurchase_income),0) retail_month_repurchase_income, - nvl(sum(cb.retail_benefit_avg_income),0) retail_benefit_avg_income, - nvl(sum(cb.retail_benefit_income),0) retail_benefit_income, - nvl(sum(cb.retail_real_subtotal),0) retail_real_subtotal, - nvl(sum(cb.real_income_total),0) real_income_total + nvl( sum( cb.direct_income ), 0 ) direct_income, + nvl( sum( cb.store_income ), 0 ) store_income, + nvl( sum( cb.global_points ), 0 ) global_points, + bc.out_exchange_rate from cu_member_bonus cb inner join cu_member cm on cb.pk_member = cm.pk_id diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 4bcea10d..f8a23ec0 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -36,18 +36,19 @@ - select b.period,cp.settle_date,so.order_code,so.order_type,bt.short_name source_country_name, - cu.member_code source_member_code,cu.member_name - source_member_name,so.pk_rate,bc.out_exchange_rate,so.order_amount, - so.order_achieve,b.pk_country,b.pk_bonus_items,b.pretax_income,b.income_tax,b.real_income,b.income_status, - tar.member_code,tar.member_name, - bg.pk_transaction pk_settle_grade,ba.pk_transaction - pk_awards,bv.vertex_name,ct.team_name, - b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,bct.short_name settle_country + select + b.period, + cp.settle_date, + so.order_code, + so.order_type, + bt.short_name source_country_name, + cu.member_code source_member_code, + cu.member_name source_member_name, + so.pk_rate, + bc.out_exchange_rate, + so.order_amount, + so.order_achieve, + b.pk_country, + b.pk_bonus_items, + b.pretax_income, + b.income_tax, + b.real_income, + b.income_status, + tar.member_code, + tar.member_name, + bg.pk_transaction pk_settle_grade, + ba.pk_transaction pk_awards, + bv.vertex_name, + ct.team_name, + b.remark, + b.income_ratio, + b.income_dial_ratio, + b.order_dial_ratio, + bct.short_name settle_country from ( select * from ( select + cb.pk_member PK_SOURCE_MEMBER, cb.pk_member,cd.pk_order,cb.period,cb.pk_country,cd.pk_bonus_items,cd.income_status,cd.CAL_ACHIEVE,cd.pretax_income,cd.income_tax,cd.real_income, cd.remark,cd.income_ratio,cd.income_dial_ratio,cd.order_dial_ratio from cu_member_bonus cb @@ -266,6 +288,7 @@ union all select + cb.pk_member PK_SOURCE_MEMBER, cb.pk_member,cp.pk_order,cb.period,cb.pk_country,cp.pk_bonus_items,cp.income_status,cp.CAL_ACHIEVE,cp.pretax_income,cp.income_tax,cp.real_income, cp.remark,cp.income_ratio,cp.income_dial_ratio,cp.order_dial_ratio from cu_member_bonus cb @@ -280,6 +303,7 @@ union all select + cb.pk_member PK_SOURCE_MEMBER, cb.pk_member,ce.pk_order,cb.period,cb.pk_country,ce.pk_bonus_items,ce.income_status,ce.CAL_ACHIEVE,ce.pretax_income,ce.income_tax,ce.real_income, ce.remark,ce.income_ratio,ce.income_dial_ratio,ce.order_dial_ratio from cu_member_bonus cb @@ -294,6 +318,7 @@ union all select + cb.pk_member PK_SOURCE_MEMBER, cb.pk_member,cc.pk_order,cb.period,cb.pk_country,cc.pk_bonus_items,cc.income_status,cc.CAL_ACHIEVE,cc.pretax_income,cc.income_tax,cc.real_income, cc.remark,cc.income_ratio,cc.income_dial_ratio,cc.order_dial_ratio from cu_member_bonus cb @@ -308,6 +333,7 @@ union all select + cb.pk_member PK_SOURCE_MEMBER, cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income, cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio from cu_member_bonus cb @@ -328,6 +354,7 @@ union all select + cs.PK_SOURCE_MEMBER, cb.pk_member,cs.pk_order,cb.period,cb.pk_country,cs.pk_bonus_items,cs.income_status,cs.CAL_ACHIEVE,cs.pretax_income,cs.income_tax,cs.real_income, cs.remark,cs.income_ratio,cs.income_dial_ratio,cs.order_dial_ratio from cu_member_bonus cb @@ -373,10 +400,8 @@ ) b left join sa_order so on so.pk_id = b.pk_order - left join cu_member tar - on b.pk_member = tar.pk_id - left join cu_member cu - on so.pk_member = cu.pk_id + LEFT JOIN cu_member tar ON b.PK_SOURCE_MEMBER = tar.pk_id + LEFT JOIN cu_member cu ON b.PK_SOURCE_MEMBER = cu.pk_id left join cu_member_settle_period cp on b.period = cp.pk_id left join bd_vertex bv @@ -389,8 +414,7 @@ on bg.pk_id=tar.pk_settle_grade left join bd_awards ba on ba.pk_id=tar.pk_awards - left join bd_country bt - on bt.pk_id=so.pk_country + LEFT JOIN bd_country bt ON bt.pk_id = cu.pk_country left join bd_country bct on bct.pk_id=tar.pk_settle_country diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml index 3061edcd..e0df1b68 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml @@ -16,33 +16,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -53,22 +27,10 @@ - - - - - - - - - - - - @@ -319,21 +281,23 @@ select - nvl(sum(cb.direct_income),0) direct_income, - nvl(sum(cb.expand_income),0) expand_income, - nvl(sum(cb.expand_no_capping),0) expand_no_capping, - nvl(sum(cb.expand_capping),0) expand_capping, - nvl(sum(cb.coach_income),0) coach_income, - nvl(sum(cb.share_income),0) share_income, - nvl(sum(cb.service_income),0) service_income, - nvl(sum(cb.back_points),0) back_points, - nvl(sum(cb.service_spend),0) service_spend, - nvl(sum(cb.pur_real_subtotal),0) pur_real_subtotal, - nvl(sum(cb.repur_push_income),0) repur_push_income, - nvl(sum(cb.repur_expand_income),0) repur_expand_income, - nvl(sum(cb.repur_real_subtotal),0) repur_real_subtotal, - nvl(sum(cb.repur_coupon),0) repur_coupon, - nvl(sum(cb.repur_coupon_share),0) repur_coupon_share, - nvl(sum(cb.repur_coupon_subtotal),0) repur_coupon_subtotal, - nvl(sum(cb.store_income),0) store_income, - nvl(sum(cb.global_points),0) global_points, - nvl(sum(cb.car_award_points),0) car_award_points, - bc.out_exchange_rate, - nvl(sum(cb.repur_range_income),0) repur_range_income, - nvl(sum(cb.retail_range_income),0) retail_range_income, - nvl(sum(cb.retail_same_level_income),0) retail_same_level_income, - nvl(sum(cb.retail_area_income),0) retail_area_income, - nvl(sum(cb.retail_benefit_range_income),0) retail_benefit_range_income, - nvl(sum(cb.retail_month_repurchase_income),0) retail_month_repurchase_income, - nvl(sum(cb.retail_benefit_avg_income),0) retail_benefit_avg_income, - nvl(sum(cb.retail_benefit_income),0) retail_benefit_income, - nvl(sum(cb.retail_real_subtotal),0) retail_real_subtotal, - nvl(sum(cb.real_income_total),0) real_income_total + nvl( sum( cb.direct_income ), 0 ) direct_income, + nvl( sum( cb.store_income ), 0 ) store_income, + nvl( sum( cb.global_points ), 0 ) global_points, + bc.out_exchange_rate from cu_member_bonus cb inner join cu_member cm on cb.pk_member = cm.pk_id diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml index 4bcea10d..f8a23ec0 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -36,18 +36,19 @@ select cb.period,cp.settle_date, - nvl(min(bc.out_exchange_rate),1) out_exchange_rate,sum(cb.direct_income) direct_income, - sum(cb.expand_income) expand_income, sum(cb.expand_no_capping) expand_no_capping, - sum(cb.expand_capping) expand_capping,sum(cb.coach_income) coach_income, - sum(cb.share_income) share_income, sum(cb.service_spend) service_spend, - sum(cb.service_income) service_income, sum(cb.back_points) back_points, - sum(cb.pur_real_subtotal) pur_real_subtotal, - sum(cb.repur_push_income) repur_push_income, - sum(cb.repur_expand_income) repur_expand_income, sum(cb.repur_real_subtotal) repur_real_subtotal, - sum(cb.repur_coupon) repur_coupon, sum(repur_coupon_share) repur_coupon_share, - sum(cb.repur_coupon_subtotal) repur_coupon_subtotal, - sum(cb.global_points) global_points, sum(cb.car_award_points) car_award_points, - sum(cb.repur_range_income) repur_range_income, - sum(cb.retail_range_income) retail_range_income, - sum(cb.retail_same_level_income) retail_same_level_income, - sum(cb.retail_area_income) retail_area_income, - sum(cb.retail_benefit_range_income) retail_benefit_range_income, - sum(cb.retail_month_repurchase_income) retail_month_repurchase_income, - sum(cb.retail_benefit_avg_income) retail_benefit_avg_income, - sum(cb.retail_benefit_income) retail_benefit_income, - sum(cb.retail_real_subtotal) retail_real_subtotal, + nvl(min(bc.out_exchange_rate),1) out_exchange_rate, + sum(cb.direct_income) direct_income, + sum(cb.global_points) global_points, + sum(cb.STORE_INCOME) STORE_INCOME, sum(cb.real_income_total) real_income_total from cu_member_bonus cb inner join cu_member_settle_period cp From d2a4c012c74a37c49475dc204799780d6b6d1b48 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 11:13:28 +0800 Subject: [PATCH 258/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BC=9A=E5=91=98=E5=90=8D=E7=A7=B0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 6 + .../service/ICumemberRetailDetailService.java | 3 + .../ICumemberRetailDetailServiceImpl.java | 47 +++-- .../manage/MemberStructureController.java | 30 +++ .../vo/CuMemberThreeFrameworkVO.java | 182 ++++++++++++++++++ .../member/CuMemberRetailDetailMapper.xml | 43 +++++ .../common/core/enums/EOperationBusiness.java | 3 +- .../common/core/enums/EOperationModule.java | 3 +- 8 files changed, 298 insertions(+), 19 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 86852ae1..7bfbec2b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -3,6 +3,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -31,4 +32,9 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailList(@Param("settleTableName") String settleTableName, + @Param("memberCode") String memberCode, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index ac6bc6ff..25cc2df0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service; import cn.hutool.core.lang.tree.Tree; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import java.util.List; @@ -18,4 +19,6 @@ public interface ICumemberRetailDetailService { CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); + + List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index fa3486b0..801f80e4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -10,6 +10,7 @@ import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -63,24 +64,24 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPointMember11(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPointMember12(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPointMember21(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPointMember22(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPointMember23(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPointMember24(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPoint21(),cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPoint22(),cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPoint23(),cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPoint24(),cuMemberRetailDetail.getPointMember24(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPointMember31(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPointMember32(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPointMember33(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPointMember34(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPointMember35(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPointMember36(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPointMember37(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPointMember38(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPoint31(),cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPoint32(),cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPoint33(),cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPoint34(),cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPoint35(),cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPoint36(),cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPoint37(),cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPoint38(),cuMemberRetailDetail.getPointMember38(), memberMap)); // 构造树结构 return TreeUtil.build(nodeList, EMemberChildNodeType.ROOT.getParentId(), (node, tree) -> { @@ -103,7 +104,19 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl makeNode(String id, String parentId, String label, + @Override + public List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { + List cuMemberRetailDetailList = baseMapper.getCuMemberRetailDetailList(settleTableName, memberCode, stage, stageStatus); + if (cuMemberRetailDetailList == null || cuMemberRetailDetailList.isEmpty()) { + return null; + }else { + // 构建map + cuMemberRetailDetailList.forEach(CuMemberThreeFrameworkVO::buildMemberMaps); + } + return cuMemberRetailDetailList; + } + + private Map makeNode(String id, String parentId, String label,Integer pointMember, Long memberId, Map memberMap) { Map map = new HashMap<>(); map.put("id", id); @@ -114,7 +127,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } + /** + * 三阶段列表数据 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/three-framework-list") + public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + // 查询当前会员所有子点位信息 + List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); + return AjaxResult.success(cuMemberThreeFrameworkVOS); + } /** * 查询子节点 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java new file mode 100644 index 00000000..9db2c6de --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -0,0 +1,182 @@ +package com.hzs.member.structure.controller.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +import java.util.HashMap; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberThreeFrameworkVO { + + private static final long serialVersionUID = 1L; + + /** + * 阶段状态(0=已完成,1=未完成) + */ + private Integer stageStatus; + + /** + * 阶段完成时间 + */ + private Date stageDate; + + + /** + * 点位1-1会员ID + */ + private Long pointMember11; + /** + * 点位1-1会员子节点 + */ + private String point11; + + /** + * 点位1-2会员ID + */ + private Long pointMember12; + /** + * 点位1-2会员子节点 + */ + private String point12; + + /** + * 点位2-1会员ID + */ + private Long pointMember21; + /** + * 点位2-1会员子节点 + */ + private String point21; + + /** + * 点位2-2会员ID + */ + private Long pointMember22; + /** + * 点位2-2会员子节点 + */ + private String point22; + + /** + * 点位2-3会员ID + */ + private Long pointMember23; + /** + * 点位2-3会员子节点 + */ + private String point23; + + /** + * 点位2-4会员ID + */ + private Long pointMember24; + /** + * 点位2-4会员子节点 + */ + private String point24; + + /** + * 点位3-1会员ID + */ + private Long pointMember31; + /** + * 点位3-1会员子节点 + */ + private String point31; + + /** + * 点位3-2会员ID + */ + private Long pointMember32; + /** + * 点位3-2会员子节点 + */ + private String point32; + + /** + * 点位3-3会员ID + */ + private Long pointMember33; + /** + * 点位3-3会员子节点 + */ + private String point33; + + /** + * 点位3-4会员ID + */ + private Long pointMember34; + /** + * 点位3-4会员子节点 + */ + private String point34; + + /** + * 点位3-5会员ID + */ + private Long pointMember35; + /** + * 点位3-5会员子节点 + */ + private String point35; + + /** + * 点位3-6会员ID + */ + private Long pointMember36; + /** + * 点位3-6会员子节点 + */ + private String point36; + + /** + * 点位3-7会员ID + */ + private Long pointMember37; + /** + * 点位3-7会员子节点 + */ + private String point37; + + /** + * 点位3-8会员ID + */ + private Long pointMember38; + /** + * 点位3-8会员子节点 + */ + private String point38; + + @TableField(exist = false) + HashMap memberMaps = new HashMap<>(14); + + public void buildMemberMaps() { + memberMaps.clear(); + + putIntoMap(point11, pointMember11); + putIntoMap(point12, pointMember12); + putIntoMap(point21, pointMember21); + putIntoMap(point22, pointMember22); + putIntoMap(point23, pointMember23); + putIntoMap(point24, pointMember24); + putIntoMap(point31, pointMember31); + putIntoMap(point32, pointMember32); + putIntoMap(point33, pointMember33); + putIntoMap(point34, pointMember34); + putIntoMap(point35, pointMember35); + putIntoMap(point36, pointMember36); + putIntoMap(point37, pointMember37); + putIntoMap(point38, pointMember38); + } + private void putIntoMap(String key, Long value) { + memberMaps.put(key != null ? key : "", value); + } + + +} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 47caad8f..c3e7441d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,4 +62,47 @@ and cud.STAGE_STATUS = #{stageStatus} + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index f9f3e67b..2ea8ab27 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -403,7 +403,8 @@ public enum EOperationBusiness { MEMBER_RISK_CONTROL("K值风控设置"), MEMBER_RETAIL_STAT("收益区域数据"), MEMBER_RETAIL_CHILDNODE("会员子节点查询"), - MEMBER_RETAIL_TREE("三阶段结构") + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index e4cd274c..8bac1e44 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -402,7 +402,8 @@ public enum EOperationModule { MEMBER_RISK_CONTROL("K值风控设置"), ORDER_SYNC("同步失败订单"), MEMBER_RETAIL_CHILDNODE("会员子节点查询"), - MEMBER_RETAIL_TREE("三阶段结构") + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; /** From 8a73e57cc7ff3d829164deff17514ef6a320cf05 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 11:13:28 +0800 Subject: [PATCH 259/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BC=9A=E5=91=98=E5=90=8D=E7=A7=B0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 6 + .../service/ICumemberRetailDetailService.java | 3 + .../ICumemberRetailDetailServiceImpl.java | 47 +++-- .../manage/MemberStructureController.java | 30 +++ .../vo/CuMemberThreeFrameworkVO.java | 182 ++++++++++++++++++ .../member/CuMemberRetailDetailMapper.xml | 43 +++++ .../common/core/enums/EOperationBusiness.java | 3 +- .../common/core/enums/EOperationModule.java | 3 +- 8 files changed, 298 insertions(+), 19 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 86852ae1..7bfbec2b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -3,6 +3,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -31,4 +32,9 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailList(@Param("settleTableName") String settleTableName, + @Param("memberCode") String memberCode, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index ac6bc6ff..25cc2df0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service; import cn.hutool.core.lang.tree.Tree; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import java.util.List; @@ -18,4 +19,6 @@ public interface ICumemberRetailDetailService { CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); + + List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index fa3486b0..801f80e4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -10,6 +10,7 @@ import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -63,24 +64,24 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPointMember11(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPointMember12(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPointMember21(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPointMember22(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPointMember23(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPointMember24(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPoint21(),cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPoint22(),cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPoint23(),cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPoint24(),cuMemberRetailDetail.getPointMember24(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPointMember31(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPointMember32(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPointMember33(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPointMember34(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPointMember35(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPointMember36(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPointMember37(), memberMap)); - nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPointMember38(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPoint31(),cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPoint32(),cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPoint33(),cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPoint34(),cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPoint35(),cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPoint36(),cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPoint37(),cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPoint38(),cuMemberRetailDetail.getPointMember38(), memberMap)); // 构造树结构 return TreeUtil.build(nodeList, EMemberChildNodeType.ROOT.getParentId(), (node, tree) -> { @@ -103,7 +104,19 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl makeNode(String id, String parentId, String label, + @Override + public List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { + List cuMemberRetailDetailList = baseMapper.getCuMemberRetailDetailList(settleTableName, memberCode, stage, stageStatus); + if (cuMemberRetailDetailList == null || cuMemberRetailDetailList.isEmpty()) { + return null; + }else { + // 构建map + cuMemberRetailDetailList.forEach(CuMemberThreeFrameworkVO::buildMemberMaps); + } + return cuMemberRetailDetailList; + } + + private Map makeNode(String id, String parentId, String label,Integer pointMember, Long memberId, Map memberMap) { Map map = new HashMap<>(); map.put("id", id); @@ -114,7 +127,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); return AjaxResult.success(cuMemberRetailTree); } + /** + * 三阶段列表数据 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/three-framework-list") + public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + // 查询当前会员所有子点位信息 + List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); + return AjaxResult.success(cuMemberThreeFrameworkVOS); + } /** * 查询子节点 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java new file mode 100644 index 00000000..9db2c6de --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -0,0 +1,182 @@ +package com.hzs.member.structure.controller.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +import java.util.HashMap; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberThreeFrameworkVO { + + private static final long serialVersionUID = 1L; + + /** + * 阶段状态(0=已完成,1=未完成) + */ + private Integer stageStatus; + + /** + * 阶段完成时间 + */ + private Date stageDate; + + + /** + * 点位1-1会员ID + */ + private Long pointMember11; + /** + * 点位1-1会员子节点 + */ + private String point11; + + /** + * 点位1-2会员ID + */ + private Long pointMember12; + /** + * 点位1-2会员子节点 + */ + private String point12; + + /** + * 点位2-1会员ID + */ + private Long pointMember21; + /** + * 点位2-1会员子节点 + */ + private String point21; + + /** + * 点位2-2会员ID + */ + private Long pointMember22; + /** + * 点位2-2会员子节点 + */ + private String point22; + + /** + * 点位2-3会员ID + */ + private Long pointMember23; + /** + * 点位2-3会员子节点 + */ + private String point23; + + /** + * 点位2-4会员ID + */ + private Long pointMember24; + /** + * 点位2-4会员子节点 + */ + private String point24; + + /** + * 点位3-1会员ID + */ + private Long pointMember31; + /** + * 点位3-1会员子节点 + */ + private String point31; + + /** + * 点位3-2会员ID + */ + private Long pointMember32; + /** + * 点位3-2会员子节点 + */ + private String point32; + + /** + * 点位3-3会员ID + */ + private Long pointMember33; + /** + * 点位3-3会员子节点 + */ + private String point33; + + /** + * 点位3-4会员ID + */ + private Long pointMember34; + /** + * 点位3-4会员子节点 + */ + private String point34; + + /** + * 点位3-5会员ID + */ + private Long pointMember35; + /** + * 点位3-5会员子节点 + */ + private String point35; + + /** + * 点位3-6会员ID + */ + private Long pointMember36; + /** + * 点位3-6会员子节点 + */ + private String point36; + + /** + * 点位3-7会员ID + */ + private Long pointMember37; + /** + * 点位3-7会员子节点 + */ + private String point37; + + /** + * 点位3-8会员ID + */ + private Long pointMember38; + /** + * 点位3-8会员子节点 + */ + private String point38; + + @TableField(exist = false) + HashMap memberMaps = new HashMap<>(14); + + public void buildMemberMaps() { + memberMaps.clear(); + + putIntoMap(point11, pointMember11); + putIntoMap(point12, pointMember12); + putIntoMap(point21, pointMember21); + putIntoMap(point22, pointMember22); + putIntoMap(point23, pointMember23); + putIntoMap(point24, pointMember24); + putIntoMap(point31, pointMember31); + putIntoMap(point32, pointMember32); + putIntoMap(point33, pointMember33); + putIntoMap(point34, pointMember34); + putIntoMap(point35, pointMember35); + putIntoMap(point36, pointMember36); + putIntoMap(point37, pointMember37); + putIntoMap(point38, pointMember38); + } + private void putIntoMap(String key, Long value) { + memberMaps.put(key != null ? key : "", value); + } + + +} diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 47caad8f..c3e7441d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,4 +62,47 @@ and cud.STAGE_STATUS = #{stageStatus} + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index f9f3e67b..2ea8ab27 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -403,7 +403,8 @@ public enum EOperationBusiness { MEMBER_RISK_CONTROL("K值风控设置"), MEMBER_RETAIL_STAT("收益区域数据"), MEMBER_RETAIL_CHILDNODE("会员子节点查询"), - MEMBER_RETAIL_TREE("三阶段结构") + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index e4cd274c..8bac1e44 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -402,7 +402,8 @@ public enum EOperationModule { MEMBER_RISK_CONTROL("K值风控设置"), ORDER_SYNC("同步失败订单"), MEMBER_RETAIL_CHILDNODE("会员子节点查询"), - MEMBER_RETAIL_TREE("三阶段结构") + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; /** From 2735fc9ca1e171c09da6630e6a1604d8437722a2 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 11:26:08 +0800 Subject: [PATCH 260/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BC=9A=E5=91=98=E5=90=8D=E7=A7=B0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF(=E6=A0=B9?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=B7=BB=E5=8A=A0=E5=AD=90=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E4=BF=A1=E6=81=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/ICumemberRetailDetailServiceImpl.java | 2 +- .../structure/controller/manage/MemberStructureController.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 801f80e4..afd62bb6 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -64,7 +64,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getChildNode(),cuMemberRetailDetail.getPkMember(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index c71f8c87..6619206a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -268,9 +268,10 @@ public class MemberStructureController extends BaseController { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } + startPage(); // 查询当前会员所有子点位信息 List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); - return AjaxResult.success(cuMemberThreeFrameworkVOS); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); } /** From 90ed8f5c7ce082f332647a57ebc3327bdc8faccc Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 11:31:07 +0800 Subject: [PATCH 261/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A5=96=E9=87=91=E7=94=9F=E6=88=90=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 8 +- .../impl/CuMemberBonusStageServiceImpl.java | 86 ++++++++++++++++++- .../hzs/bonus/constant/BonusConstants.java | 3 + .../achieve/CuMemberRetailRangeMapper.xml | 14 ++- 4 files changed, 101 insertions(+), 10 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index b15967f9..6ceef0f0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -366,9 +366,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // TODO 处理升三阶段点位 if (CollectionUtil.isNotEmpty(stageList)) { List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); - // 查询血缘会员明细数据(三段) + // 查询血缘会员明细数据(三阶段) iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, stageMemberList); - // 二阶段收益 + // 三阶段收益 this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.THREE, stageList); } @@ -1028,7 +1028,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 订单会员 CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(memberRetailDetail.getPkMember()); if (null == sourceMember) { - log.error("阶段收益处理失败,{}会员不存在. pkMember: {}", eBonusStage.getLabel(), memberRetailDetail.getPkMember()); + log.error("阶段收益处理失败,{} 会员不存在. pkMember: {}", eBonusStage.getLabel(), memberRetailDetail.getPkMember()); return returnRetailDetailList; } @@ -1135,7 +1135,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); returnRetailDetailList.add(threeRetailDetail); } else if (EBonusStage.THREE.getValue() == bonusStageData.getStage()) { - // TODO 三阶段需要赠送点位 + // TODO 三阶段填充满,判断是否需要赠送点位 } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 89551eda..3b644c17 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -339,12 +339,94 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); + // 第三层字段 + public static final List THREE_FIELD_LIST = Arrays.asList(POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); // 会员ID字段 public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index f8dca51b..5d1ef93d 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -385,7 +385,10 @@ #{item.creationTime, jdbcType=TIMESTAMP} creation_time, #{item.pointFirst, jdbcType=NUMERIC} point_first, #{item.pointMemberFirst, jdbcType=NUMERIC} point_member_first, #{item.pointSecond, jdbcType=NUMERIC} point_second, #{item.pointMemberSecond, jdbcType=NUMERIC} point_member_second, - #{item.pointThird, jdbcType=NUMERIC} point_third, #{item.pointMemberThird, jdbcType=NUMERIC} point_member_third + #{item.pointThird, jdbcType=NUMERIC} point_third, #{item.pointMemberThird, jdbcType=NUMERIC} point_member_third, + #{item.thirdBonus1, jdbcType=NUMERIC} third_bonus_1, + #{item.thirdBonus2, jdbcType=NUMERIC} third_bonus_2, + #{item.thirdBonus3, jdbcType=NUMERIC} third_bonus_2 from dual ) b @@ -411,7 +414,8 @@ creation_time, point_first, point_member_first, point_second, point_member_second, - point_third, point_member_third) + point_third, point_member_third, + third_bonus_1, third_bonus_2, third_bonus_3) values (b.pk_member, b.child_node, b.pk_parent, b.stage, b.stage_status, b.stage_date, b.point_11, b.point_12, @@ -432,7 +436,8 @@ b.creation_time, b.point_first, b.point_member_first, b.point_second, b.point_member_second, - b.point_third, b.point_member_third) + b.point_third, b.point_member_third, + b.third_bonus_1, b.third_bonus_2, b.third_bonus_3) when matched then update set a.stage = b.stage, a.stage_status = b.stage_status, a.stage_date = b.stage_date, @@ -454,7 +459,8 @@ a.creation_time = b.creation_time, a.point_first = b.point_first, a.point_member_first = b.point_member_first, a.point_second = b.point_second, a.point_member_second = b.point_member_second, - a.point_third = b.point_third, a.point_member_third = b.point_member_third + a.point_third = b.point_third, a.point_member_third = b.point_member_third, + a.third_bonus_1 = b.third_bonus_1, a.third_bonus_2 = b.third_bonus_2, a.third_bonus_3 = b.third_bonus_3 From b18b984b5a1340f2cfa8441f371602e826a39593 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 13:35:21 +0800 Subject: [PATCH 262/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A5=96=E9=87=91=E7=94=9F=E6=88=90=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/service/impl/BonusSettleHandle.java | 68 +++--- .../service/impl/BonusSettleRangeHandle.java | 3 + .../impl/CuMemberBonusStageServiceImpl.java | 17 +- .../achieve/CuMemberRetailRangeMapper.xml | 2 +- .../bonus/achieve/CuMemberTreeMapper.xml | 6 +- .../domain/member/bonus/CuMemberBonus.java | 208 +++++++++++++++++- 6 files changed, 259 insertions(+), 45 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 9873611b..53cb8cda 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -163,43 +163,43 @@ public abstract class BonusSettleHandle { .pkRate(pkRate) .incomeStatus(incomeStatus) .directIncome(BigDecimal.ZERO) -// .expandIncome(BigDecimal.ZERO) -// .expandNoCapping(BigDecimal.ZERO) -// .expandCapping(BigDecimal.ZERO) -// .coachIncome(BigDecimal.ZERO) -// .shareIncome(BigDecimal.ZERO) -// .serviceIncome(BigDecimal.ZERO) -// .backPoints(BigDecimal.ZERO) -// .serviceSpend(BigDecimal.ZERO) -// .purRealSubtotal(BigDecimal.ZERO) -// .repurPushIncome(BigDecimal.ZERO) -// .repurRangeIncome(BigDecimal.ZERO) -// .repurExpandIncome(BigDecimal.ZERO) -// .repurRealSubtotal(BigDecimal.ZERO) -// .cloudDirectIncome(BigDecimal.ZERO) -// .cloudPurIncome(BigDecimal.ZERO) -// .cloudRepurIncome(BigDecimal.ZERO) -// .cloudRealSubtotal(BigDecimal.ZERO) -// .repurCoupon(BigDecimal.ZERO) -// .repurCouponShare(BigDecimal.ZERO) -// .repurCouponSubtotal(BigDecimal.ZERO) + .expandIncome(BigDecimal.ZERO) + .expandNoCapping(BigDecimal.ZERO) + .expandCapping(BigDecimal.ZERO) + .coachIncome(BigDecimal.ZERO) + .shareIncome(BigDecimal.ZERO) + .serviceIncome(BigDecimal.ZERO) + .backPoints(BigDecimal.ZERO) + .serviceSpend(BigDecimal.ZERO) + .purRealSubtotal(BigDecimal.ZERO) + .repurPushIncome(BigDecimal.ZERO) + .repurRangeIncome(BigDecimal.ZERO) + .repurExpandIncome(BigDecimal.ZERO) + .repurRealSubtotal(BigDecimal.ZERO) + .cloudDirectIncome(BigDecimal.ZERO) + .cloudPurIncome(BigDecimal.ZERO) + .cloudRepurIncome(BigDecimal.ZERO) + .cloudRealSubtotal(BigDecimal.ZERO) + .repurCoupon(BigDecimal.ZERO) + .repurCouponShare(BigDecimal.ZERO) + .repurCouponSubtotal(BigDecimal.ZERO) .globalPoints(BigDecimal.ZERO) -// .carAwardPoints(BigDecimal.ZERO) -// .hiFunIncome(BigDecimal.ZERO) -// .haiFunIncome(BigDecimal.ZERO) + .carAwardPoints(BigDecimal.ZERO) + .hiFunIncome(BigDecimal.ZERO) + .haiFunIncome(BigDecimal.ZERO) .storeIncome(BigDecimal.ZERO) -// .makerDirectIncome(BigDecimal.ZERO) -// .makerShareIncome(BigDecimal.ZERO) -// .makerRealSubtotal(BigDecimal.ZERO) + .makerDirectIncome(BigDecimal.ZERO) + .makerShareIncome(BigDecimal.ZERO) + .makerRealSubtotal(BigDecimal.ZERO) .realIncomeTotal(BigDecimal.ZERO) -// .retailRangeIncome(BigDecimal.ZERO) -// .retailSameLevelIncome(BigDecimal.ZERO) -// .retailAreaIncome(BigDecimal.ZERO) -// .retailBenefitRangeIncome(BigDecimal.ZERO) -// .retailMonthRepurchaseIncome(BigDecimal.ZERO) -// .retailBenefitAvgIncome(BigDecimal.ZERO) -// .retailBenefitIncome(BigDecimal.ZERO) -// .retailRealSubtotal(BigDecimal.ZERO) + .retailRangeIncome(BigDecimal.ZERO) + .retailSameLevelIncome(BigDecimal.ZERO) + .retailAreaIncome(BigDecimal.ZERO) + .retailBenefitRangeIncome(BigDecimal.ZERO) + .retailMonthRepurchaseIncome(BigDecimal.ZERO) + .retailBenefitAvgIncome(BigDecimal.ZERO) + .retailBenefitIncome(BigDecimal.ZERO) + .retailRealSubtotal(BigDecimal.ZERO) .build(); cuMemberBonus.setPkCreator(MagicNumberConstants.PK_ADMIN); cuMemberBonus.setPkCountry(pkCountry); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 6ceef0f0..fb35053c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1003,6 +1003,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .pointType(EBonusStageType.NORMAL.getValue()) .pointGift(0) .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) .updateBool(0) .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 3b644c17..92aa1f31 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -278,6 +278,9 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl ) b diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 28dd067a..ecced1a8 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -335,9 +335,9 @@ point_second NUMBER(8), point_member_third NUMBER(20), point_third NUMBER(8), - third_bonus_1 NUMBER(8), - third_bonus_2 NUMBER(8), - third_bonus_3 NUMBER(8) + third_bonus_1 NUMBER(8) default 0 not null, + third_bonus_2 NUMBER(8) default 0 not null, + third_bonus_3 NUMBER(8) default 0 not null ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java index a9c1f892..3e8d8ded 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/bonus/CuMemberBonus.java @@ -56,10 +56,124 @@ public class CuMemberBonus extends BaseEntity { private BigDecimal directIncome; /** - * 阶段收益-众康 + * 拓展收益 */ - @TableField("STORE_INCOME") - private BigDecimal storeIncome; + @TableField("EXPAND_INCOME") + private BigDecimal expandIncome; + + /** + * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶) + */ + @TableField("EXPAND_NO_CAPPING") + private BigDecimal expandNoCapping; + + /** + * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益) + */ + @TableField("EXPAND_CAPPING") + private BigDecimal expandCapping; + + /** + * 培育津贴 + */ + @TableField("COACH_INCOME") + private BigDecimal coachIncome; + + /** + * 分红收益 + */ + @TableField("SHARE_INCOME") + private BigDecimal shareIncome; + + /** + * 报单收益 + */ + @TableField("SERVICE_INCOME") + private BigDecimal serviceIncome; + + /** + * 商城重消 + */ + @TableField("BACK_POINTS") + private BigDecimal backPoints; + + /** + * 平台服务费 + */ + @TableField("SERVICE_SPEND") + private BigDecimal serviceSpend; + + /** + * 首购实发小计 + */ + @TableField("PUR_REAL_SUBTOTAL") + private BigDecimal purRealSubtotal; + + /** + * 复购推荐收益 修改为互助收益 cu_member_bonus_push + */ + @TableField("REPUR_PUSH_INCOME") + private BigDecimal repurPushIncome; + + /** + * 复购级差收益 + */ + @TableField("REPUR_RANGE_INCOME") + private BigDecimal repurRangeIncome; + + /** + * 复购拓展收益 + */ + @TableField("REPUR_EXPAND_INCOME") + private BigDecimal repurExpandIncome; + + /** + * 复购实发小计 + */ + @TableField("REPUR_REAL_SUBTOTAL") + private BigDecimal repurRealSubtotal; + + /** + * 云代直推收益 修改为幸运收益 cu_member_bonus_coach + */ + @TableField("CLOUD_DIRECT_INCOME") + private BigDecimal cloudDirectIncome; + + /** + * 云代首购收益 修改为极差收益 cu_member_bonus_range + */ + @TableField("CLOUD_PUR_INCOME") + private BigDecimal cloudPurIncome; + + /** + * 云代复购收益 修改为平级收益 cu_member_bonus_range + */ + @TableField("CLOUD_REPUR_INCOME") + private BigDecimal cloudRepurIncome; + + /** + * 云代实发小计 修改为 极差小计 + */ + @TableField("CLOUD_REAL_SUBTOTAL") + private BigDecimal cloudRealSubtotal; + + /** + * 复购券 + */ + @TableField("REPUR_COUPON") + private BigDecimal repurCoupon; + + /** + * 复购券均分收益 + */ + @TableField("REPUR_COUPON_SHARE") + private BigDecimal repurCouponShare; + + /** + * 复购券小计 + */ + @TableField("REPUR_COUPON_SUBTOTAL") + private BigDecimal repurCouponSubtotal; /** * 复购见点收益-众康 @@ -67,7 +181,95 @@ public class CuMemberBonus extends BaseEntity { @TableField("GLOBAL_POINTS") private BigDecimal globalPoints; + /** + * 车奖积分 + */ + @TableField("CAR_AWARD_POINTS") + private BigDecimal carAwardPoints; + /** + * 阶段收益-众康 + */ + @TableField("STORE_INCOME") + private BigDecimal storeIncome; + + /** + * 嗨粉推荐收益 + */ + @TableField("HI_FUN_INCOME") + private BigDecimal hiFunIncome; + + /** + * 海粉推荐收益 + */ + @TableField("HAI_FUN_INCOME") + private BigDecimal haiFunIncome; + + /** + * 创客空间直推收益 + */ + @TableField("MAKER_DIRECT_INCOME") + private BigDecimal makerDirectIncome; + + /** + * 创客共享收益 + */ + @TableField("MAKER_SHARE_INCOME") + private BigDecimal makerShareIncome; + + /** + * 创客空间收益小计 + */ + @TableField("MAKER_REAL_SUBTOTAL") + private BigDecimal makerRealSubtotal; + + /** + * 新零售直推收益 + */ + @TableField("RETAIL_RANGE_INCOME") + private BigDecimal retailRangeIncome; + + /** + * 新零售平级收益 + */ + @TableField("RETAIL_SAME_LEVEL_INCOME") + private BigDecimal retailSameLevelIncome; + + /** + * 新零售区域分红 + */ + @TableField("RETAIL_AREA_INCOME") + private BigDecimal retailAreaIncome; + + /** + * 新零售福利级差收益 + */ + @TableField("RETAIL_BENEFIT_RANGE_INCOME") + private BigDecimal retailBenefitRangeIncome; + + /** + * 新零售复购级差收益 + */ + @TableField("RETAIL_MONTH_REPURCHASE_INCOME") + private BigDecimal retailMonthRepurchaseIncome; + + /** + * 福利分红平均收益 + */ + @TableField("RETAIL_BENEFIT_AVG_INCOME") + private BigDecimal retailBenefitAvgIncome; + + /** + * 福利分红加权收益 + */ + @TableField("RETAIL_BENEFIT_INCOME") + private BigDecimal retailBenefitIncome; + + /** + * 新零售收益小计 + */ + @TableField("RETAIL_REAL_SUBTOTAL") + private BigDecimal retailRealSubtotal; /** * 实发收益总计 From 061c951d6aed7fd93f98c964138fcdf838558d0d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 14:04:34 +0800 Subject: [PATCH 263/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A5=96=E9=87=91=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettleHandle.java | 6 +++--- .../bonus/service/impl/CuMemberBonusStageServiceImpl.java | 3 --- .../mapper/bonus/achieve/CuMemberRetailRangeMapper.xml | 7 +++---- 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 53cb8cda..106d74a0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -223,8 +223,8 @@ public abstract class BonusSettleHandle { backRatio = bdBonusDeduct.getBackRatio(); platformRatio = bdBonusDeduct.getPlatformRatio(); } -// cuMemberBonus.setBackPoints(ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), ComputeUtil.computeBonusMultiply(pretaxIncome, backRatio))); -// cuMemberBonus.setServiceSpend(ComputeUtil.computeAdd(cuMemberBonus.getServiceSpend(), ComputeUtil.computeBonusMultiply(pretaxIncome, platformRatio))); + cuMemberBonus.setBackPoints(ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), ComputeUtil.computeBonusMultiply(pretaxIncome, backRatio))); + cuMemberBonus.setServiceSpend(ComputeUtil.computeAdd(cuMemberBonus.getServiceSpend(), ComputeUtil.computeBonusMultiply(pretaxIncome, platformRatio))); } /** @@ -233,7 +233,7 @@ public abstract class BonusSettleHandle { protected void setRetailTotal(BdBonusDeduct bdBonusDeduct, CuMemberBonus cuMemberBonus, Object bonusDetail) { setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail); BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME); -// cuMemberBonus.setRetailRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRetailRealSubtotal(), realIncome)); + cuMemberBonus.setRetailRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRetailRealSubtotal(), realIncome)); cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 92aa1f31..5497cd05 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -278,9 +278,6 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl ) b - on (a.pk_member = b.pk_member and a.child_node = b.child_node) + on (a.pk_member = b.pk_member and a.child_node = b.child_node and a.stage = b.stage) when not matched then insert (pk_member, child_node, pk_parent, stage, stage_status, stage_date, @@ -440,7 +439,7 @@ b.third_bonus_1, b.third_bonus_2, b.third_bonus_3) when matched then update set - a.stage = b.stage, a.stage_status = b.stage_status, a.stage_date = b.stage_date, + a.stage_status = b.stage_status, a.stage_date = b.stage_date, a.point_11 = b.point_11, a.point_12 = b.point_12, a.point_21 = b.point_21, a.point_22 = b.point_22, a.point_23 = b.point_23, a.point_24 = b.point_24, From a6532f8a8fbc5c29cf4dffd290c0fb913b624905 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 25 Sep 2025 10:51:17 +0800 Subject: [PATCH 264/362] =?UTF-8?q?##=20Opt=20-=20=E5=A5=96=E9=87=91?= =?UTF-8?q?=E6=B1=87=E6=80=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/bonus/bonus/vo/BonusTotalVO.java | 283 +----------------- .../bonus/bonus/CuMemberBonusMapper.xml | 25 +- 2 files changed, 14 insertions(+), 294 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java index f53789a6..3a066cbf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java @@ -38,293 +38,28 @@ public class BonusTotalVO implements Serializable { */ private Integer pkCountry; - /** - * 新零售直推收益 + * 注册直推收益-众康 */ @Excel(name = "直推收益", scale = 2) - private BigDecimal retailRangeIncome; + private BigDecimal directIncome; /** - * 新零售平级收益 + * 阶段收益-众康 */ - @Excel(name = "平级收益", scale = 2) - private BigDecimal retailSameLevelIncome; + @Excel(name = "阶段收益", scale = 2) + private BigDecimal storeIncome; /** - * 新零售区域分红 + * 复购见点收益-众康 */ - @Excel(name = "区域分红", scale = 2) - private BigDecimal retailAreaIncome; - - /** - * 新零售福利级差收益 - */ - @Excel(name = "月度福利级差收益", scale = 2) - private BigDecimal retailBenefitRangeIncome; - - /** - * 新零售复购级差收益 - */ - @Excel(name = "月度复购级差收益", scale = 2) - private BigDecimal retailMonthRepurchaseIncome; - - /** - * 培育津贴 - */ - @Excel(name = "培育津贴", scale = 2) - private BigDecimal coachIncome; - - /** - * 福利分红平均收益 - */ - @Excel(name = "福利分红平均收益", scale = 2) - private BigDecimal retailBenefitAvgIncome; - - /** - * 福利分红加权收益 - */ - @Excel(name = "福利分红加权收益", scale = 2) - private BigDecimal retailBenefitIncome; - - /** - * 复购级差收益 - */ - @Excel(name = "复购级差收益", scale = 2) - private BigDecimal repurRangeIncome; - - /** - * 重消收益 - */ - @Excel(name = "重消收益", scale = 2) - private BigDecimal backPoints; + @Excel(name = "见点收益", scale = 2) + private BigDecimal globalPoints; /** * 实发收益总计 */ @Excel(name = "实发收益总计", scale = 2) - private BigDecimal realIncomeTotal; - - - /** - * 直推收益 - */ - private BigDecimal directIncomeOri; - - /** - * 拓展收益 - */ - private BigDecimal expandIncomeOri; - - /** - * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶) - */ - private BigDecimal expandNoCappingOri; - - /** - * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益) - */ - private BigDecimal expandCappingOri; - - /** - * 辅导收益 - */ - private BigDecimal coachIncomeOri; - - /** - * 分红收益 - */ - private BigDecimal shareIncomeOri; - - /** - * 报单收益 - */ - private BigDecimal serviceIncomeOri; - - - /** - * 云代直推收益 - */ - private BigDecimal cloudDirectIncomeOri; - - /** - * 云代首购收益 - */ - private BigDecimal cloudPurIncomeOri; - - /** - * 云代复购收益 - */ - private BigDecimal cloudRepurIncomeOri; - - private BigDecimal repurPushIncomeOri; - - /** - * 复购拓展收益 - */ - private BigDecimal repurExpandIncomeOri; - - /** - * 复购券 - */ - private BigDecimal repurCouponOri; - - /** - * 复购券均分收益 - */ - private BigDecimal repurCouponShareOri; - - /** - * 平台服务费 - */ - private BigDecimal serviceSpendOri; - - /** - * 环球积分 - */ - private BigDecimal globalPointsOri; - - /** - * 车奖积分 - */ - private BigDecimal carAwardPointsOri; - - /** - * 店铺收益 - */ - private BigDecimal storeIncomeOri; - - /** - * 嗨粉推荐收益 - */ - private BigDecimal hiFunIncomeOri; - - /** - * 首购实发小计 - */ - private BigDecimal purRealSubtotalOri; - - /** - * 云代实发小计 - */ - private BigDecimal cloudRealSubtotalOri; - - /** - * 复购实发小计 - */ - private BigDecimal repurRealSubtotalOri; - - /** - * 复购券小计 - */ - private BigDecimal repurCouponSubtotalOri; - - /** - * 直推收益 - */ - private BigDecimal directIncome; - - /** - * 拓展收益 - */ - private BigDecimal expandIncome; - - /** - * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶) - */ - private BigDecimal expandNoCapping; - - /** - * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益) - */ - private BigDecimal expandCapping; - - - /** - * 分红收益 - */ - private BigDecimal shareIncome; - - /** - * 报单收益 - */ - private BigDecimal serviceIncome; - - /** - * 云代直推收益 - */ - private BigDecimal cloudDirectIncome; - - /** - * 云代首购收益 - */ - private BigDecimal cloudPurIncome; - - /** - * 云代复购收益 - */ - private BigDecimal cloudRepurIncome; - - private BigDecimal repurPushIncome; - - /** - * 复购拓展收益 - */ - private BigDecimal repurExpandIncome; - - /** - * 复购券 - */ - private BigDecimal repurCoupon; - - /** - * 复购券均分收益 - */ - private BigDecimal repurCouponShare; - - /** - * 平台服务费 - */ - private BigDecimal serviceSpend; - - /** - * 环球积分 - */ - private BigDecimal globalPoints; - - /** - * 车奖积分 - */ - private BigDecimal carAwardPoints; - - /** - * 店铺收益 - */ - private BigDecimal storeIncome; - - /** - * 嗨粉推荐收益 - */ - private BigDecimal hiFunIncome; - - /** - * 首购实发小计 - */ - private BigDecimal purRealSubtotal; - - /** - * 云代实发小计 - */ - private BigDecimal cloudRealSubtotal; - - /** - * 复购实发小计 - */ - private BigDecimal repurRealSubtotal; - - /** - * 复购券小计 - */ - private BigDecimal repurCouponSubtotal; + private BigDecimal realIncomeTotalOri; } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml index e0df1b68..6eb23f1a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml @@ -375,6 +375,7 @@ nvl( sum( cb.direct_income ), 0 ) direct_income, nvl( sum( cb.store_income ), 0 ) store_income, nvl( sum( cb.global_points ), 0 ) global_points, + sum(cb.real_income_total) real_income_total, bc.out_exchange_rate from cu_member_bonus cb inner join cu_member cm @@ -446,26 +447,10 @@ - + From 737f118daf2932cc13844f9338ce81d3e2c661f9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 18:07:36 +0800 Subject: [PATCH 275/362] =?UTF-8?q?##=20=E4=BA=8C=E4=B8=89=E9=98=B6?= =?UTF-8?q?=E6=AE=B5=E6=95=B0=E6=8D=AE=E8=A1=A5=E5=85=A8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 5 +- .../service/ICuMemberRetailDetailService.java | 13 +- .../impl/CuMemberRetailDetailServiceImpl.java | 17 +- .../hzs/bonus/bonus/dto/BonusStageData.java | 5 + .../service/impl/BonusSettleRangeHandle.java | 183 +++++++++++++----- .../impl/CuMemberBonusStageServiceImpl.java | 22 ++- .../hzs/bonus/constant/BonusConstants.java | 9 + .../achieve/CuMemberRetailDetailMapper.xml | 10 +- .../achieve/CuMemberRetailRangeMapper.xml | 21 +- .../bonus/achieve/CuMemberTreeMapper.xml | 4 +- .../member/achieve/CuMemberRetailRange.java | 11 ++ 11 files changed, 221 insertions(+), 79 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java index aa6dcff6..3758a05c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -12,10 +12,11 @@ import java.util.List; public interface CuMemberRetailDetailMapper extends BaseMapper { /** - * 查询明细数据(指定阶段,未完成的) + * 查询明细数据(指定阶段,指定状态) */ List listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName, @Param("tmpIdList") List tmpIdList, - @Param("stage") Integer stage); + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index ab48d9c5..81d13adc 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -2,6 +2,7 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; @@ -17,12 +18,18 @@ public interface ICuMemberRetailDetailService extends IService memberRangeExtMap, - EBonusStage eBonusStage, List stageMemberList); + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList); /** * 指定会员获取对应的点位数据 */ - void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage); + void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); + + /** + * 会员直推对应的点位数据 + */ + void listChildRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 435bcfb9..5602c43d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -6,6 +6,7 @@ import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import org.springframework.beans.factory.annotation.Autowired; @@ -24,7 +25,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, - EBonusStage eBonusStage, List stageMemberList) { + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList) { List> pkMemberList; if (CollectionUtil.isNotEmpty(stageMemberList)) { pkMemberList = cuMemberBonusSettle.handleCutList(stageMemberList, MagicNumberConstants.BATCH_QUERY_NUM); @@ -33,7 +34,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl { // 查询明细数据(指定阶段,未完成的) - List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null); if (CollectionUtil.isNotEmpty(tmpList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { @@ -64,10 +65,10 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage) { + public void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { // 查询明细数据(指定阶段,未完成的) - List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue()); + List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); if (CollectionUtil.isNotEmpty(tmpDetailList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { @@ -97,4 +98,10 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { + + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java index eb5ff7ea..edf551a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -38,6 +38,11 @@ public class BonusStageData { */ private Integer stageNum; + /** + * 三阶段走完,需要添加的待激活点位数 + */ + private Integer pointGift; + /** * 二阶段点位 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index fb35053c..2f9104bd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -7,6 +7,7 @@ import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; +import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; @@ -310,7 +311,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, null); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, EBonusStageStatus.NO, null); // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -353,21 +354,25 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // TODO 处理升二阶段点位 + // 处理升二阶段点位 if (CollectionUtil.isNotEmpty(stageList)) { List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); // 查询血缘会员明细数据(二阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, stageMemberList); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, EBonusStageStatus.NO, findMemberList); // 二阶段收益 stageList = this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.TWO, stageList); } - // TODO 处理升三阶段点位 + // 处理升三阶段点位 if (CollectionUtil.isNotEmpty(stageList)) { List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); // 查询血缘会员明细数据(三阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, stageMemberList); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, EBonusStageStatus.NO, findMemberList); // 三阶段收益 this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.THREE, stageList); @@ -965,12 +970,21 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return returnRetailDetailList; } + // 订单生成新点位数量 int newPointInt; if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 精品专区按订单金额计算 + BigDecimal orderAmount = saOrderExt.getOrderAmount(); // 订单金额除50取整,为新増点位数量 - newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + newPointInt = orderAmount.divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + if (orderAmount.compareTo(BonusConstants.GIFT_TWO_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 2) { + // 首次订单金额大于等于2万,每个点位完成三阶段赠送2个点位 + sourceMember.setGiftPoint(2); + } else if (orderAmount.compareTo(BonusConstants.GIFT_ONE_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 1) { + // 首次订单金额大于等于1万,每个点位完成三阶段赠送1个点位 + sourceMember.setGiftPoint(1); + } } else { // 商城专区按累计业绩处理 BigDecimal repPvBalance = sourceMember.getRepPvBalance().add(saOrderExt.getOrderAchieve()); @@ -981,6 +995,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 当前订单不足生成点位 return returnRetailDetailList; } + // 赠送点位 + int pointGift = sourceMember.getGiftPoint(); // 会员一阶段子点位列表 LinkedHashMap detailList = sourceMember.getOneDetailMap(); @@ -1001,7 +1017,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .stage(EBonusStage.ONE.getValue()) .stageStatus(EBonusStageStatus.NO.getValue()) .pointType(EBonusStageType.NORMAL.getValue()) - .pointGift(0) + .pointGift(pointGift) .creationTime(settleDate) .thirdBonus1(0) .thirdBonus2(0) @@ -1014,6 +1030,39 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); } + // 待激活点位 + int waitPointCount = sourceMember.getWaitPointCount(); + if (waitPointCount != 0) { + for (int i = 1; i <= newPointInt; i++) { + if (waitPointCount > 0) { + // 购买一个点位,激活一个待激活点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.GIFT.getValue()) + .pointGift(0) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build(); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, + sourceMember, newRetailDetail, returnRetailDetailList); + + waitPointCount = waitPointCount - 1; + } else { + break; + } + } + sourceMember.setWaitPointCount(waitPointCount); + } sourceMember.setPointCount(sourceMember.getPointCount() + newPointInt); return returnRetailDetailList; } @@ -1053,53 +1102,60 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List returnRetailDetailList) { // 阶段奖金处理列表 List bonusStageDataList = new ArrayList<>(); - // 推荐人 - Long pkParent = sourceMember.getPkParent(); - while (true) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); - if (null == targetMember) { - // 没有推荐人了,则直接结束 - break; - } - pkParent = targetMember.getPkParent(); - // 推荐人一阶段子点位列表 - LinkedHashMap parentDetailList = null; - if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getOneDetailMap(); - } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getTwoDetailMap(); - } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getThreeDetailMap(); - } - if (CollectionUtil.isEmpty(parentDetailList)) { - // 推荐人没有未完成点位,继续往上找 - continue; - } + if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()) { + // 普通点位处理 + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + pkParent = targetMember.getPkParent(); - // 推荐人第一层点位处理 - boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第一层找到并填充点位,就开始下一个点位的处理 - break; - } + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = null; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getThreeDetailMap(); + } + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; + } - // 推荐人第二层点位处理 - forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第二层找到并填充点位,就开始下一个点位的处理 - break; - } + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } - // 推荐人第三层点位处理 - forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第三层找到并填充点位,就开始下一个点位的处理 - break; + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } } + } else { + // TODO 赠送点位处理,赠送点位给自己直推会员轮流布点 + } if (CollectionUtil.isNotEmpty(bonusStageDataList)) { @@ -1138,11 +1194,36 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); returnRetailDetailList.add(threeRetailDetail); } else if (EBonusStage.THREE.getValue() == bonusStageData.getStage()) { - // TODO 三阶段填充满,判断是否需要赠送点位 - + // 三阶段填充满,判断是否需要赠送点位 + if (bonusStageData.getPointGift() != 0) { + // 需要添加赠送的待激活点位 + targetMember.setWaitPointCount(targetMember.getWaitPointCount() + bonusStageData.getPointGift()); + } } } } } + /** + * 查找血缘上所有会员 + */ + private List findParent(Map memberRangeExtMap, List pkMemberList) { + List resultList = new ArrayList<>(); + for (Long pkMember : pkMemberList) { + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(pkMember); + resultList.add(sourceMember.getPkMember()); + + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + resultList.add(targetMember.getPkMember()); + pkParent = targetMember.getPkParent(); + } + } + return resultList; + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index d7fbc670..9fd14cd7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -361,6 +361,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } @@ -535,8 +539,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } @@ -628,8 +632,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index c8a55bf4..cb393e6f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -12,6 +12,15 @@ import java.util.Map; public class BonusConstants { + /** + * 赠送2个点位订单金额 + */ + public static final BigDecimal GIFT_TWO_AMOUNT = new BigDecimal("20000"); + /** + * 赠送1个点位订单金额 + */ + public static final BigDecimal GIFT_ONE_AMOUNT = new BigDecimal("10000"); + /** * 一阶段奖金 -- 满14,发35 */ diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index b1efab5b..5cb90a9a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -10,9 +10,13 @@ #{items} - and cmrd.stage = #{stage} - and cmrd.stage_status = 1 - order by cmrd.pk_member, cmrd.child_node + + and cmrd.stage = #{stage} + + + and cmrd.stage_status = #{stageStatus} + + order by cmrd.pk_member, cmrd.child_node, cmrd.stage diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 80f02a9a..eb220f7b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -51,7 +51,9 @@ + + @@ -95,7 +97,9 @@ rep_team_new_amount = 0, rep_team_new_pv = 0, point_count = 0, - rep_pv_balance = 0 + wait_point_count = 0, + rep_pv_balance = 0, + gift_point = 0 @@ -107,7 +111,8 @@ team_consume_pv, team_month_pv, team_consume_amount, team_month_amount, recommend_num, team_num, big_team_pv, small_team_pv, - point_count, rep_pv_balance + point_count, wait_point_count, rep_pv_balance, + gift_point from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -120,7 +125,9 @@ a.team_consume_amount = b.team_consume_amount, a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, - a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, + a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point ,a.month_consume_pv = b.month_consume_pv ,a.month_consume_amount = b.month_consume_amount @@ -339,7 +346,8 @@ #{item.regTeamNewAmount} reg_team_new_amount, #{item.regTeamNewPv} reg_team_new_pv, #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv, - #{item.pointCount} point_count, #{item.repPvBalance} rep_pv_balance + #{item.pointCount} point_count, #{item.waitPointCount} wait_point_count, #{item.repPvBalance} rep_pv_balance, + #{item.giftPoint} gift_point from dual ) b @@ -355,7 +363,8 @@ a.reg_team_new_amount = b.reg_team_new_amount, a.reg_team_new_pv = b.reg_team_new_pv, a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv, - a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point @@ -671,7 +680,9 @@ rep_team_new_amount, rep_team_new_pv, point_count, + wait_point_count, rep_pv_balance, + gift_point, bw.awards_value, bw.awards_name from ( diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index ecced1a8..e61a1a6c 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -576,7 +576,9 @@ rep_team_new_amount number(17,6) default 0 not null, rep_team_new_pv number(17,6) default 0 not null, point_count number(8) default 0 not null, - rep_pv_balance number(17,6) default 0 not null + wait_point_count number(8) default 0 not null, + rep_pv_balance number(17,6) default 0 not null, + gift_point number(2) default 1 not null ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index f5f6ea4a..6b996bf6 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -194,6 +194,11 @@ public class CuMemberRetailRange extends BaseEntity { */ @TableField("point_count") private Integer pointCount; + /** + * 待激活子点位数 + */ + @TableField("WAIT_POINT_COUNT") + private Integer waitPointCount; /** * 复购业绩余额 @@ -201,4 +206,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("REP_PV_BALANCE") private BigDecimal repPvBalance; + /** + * 赠送几个点位 + */ + @TableField("GIFT_POINT") + private Integer giftPoint; + } From 34903b0b003d61cea4bb03dd6adcb9b6245d5565 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 14:31:03 +0800 Subject: [PATCH 276/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E5=A5=96=E9=87=91=E5=8F=91=E6=94=BE=E7=82=B9=E4=BD=8D=E6=95=B0?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 5497cd05..d7fbc670 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -427,7 +427,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl Date: Thu, 25 Sep 2025 15:44:07 +0800 Subject: [PATCH 277/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 11 +- .../service/ICumemberRetailDetailService.java | 4 + .../ICumemberRetailDetailServiceImpl.java | 15 +-- .../api/ApiMemberStructureController.java | 52 +++++++ .../manage/MemberStructureController.java | 15 +++ .../controller/vo/CuMemberPointDetailVO.java | 29 ++++ .../vo/CuMemberThreeFrameworkVO.java | 127 +++++++----------- .../member/CuMemberRetailDetailMapper.xml | 119 +++++++++++----- 8 files changed, 255 insertions(+), 117 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 7bfbec2b..a4fa110f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -3,6 +3,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.apache.ibatis.annotations.Param; @@ -33,8 +34,10 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailList(@Param("settleTableName") String settleTableName, - @Param("memberCode") String memberCode, - @Param("stage") Integer stage, - @Param("stageStatus") Integer stageStatus); + CuMemberPointDetailVO getPointDetail(@Param("pointMemberCode") Long pointMemberCode); + + List getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName, + @Param("memberCode") String memberCode, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 25cc2df0..c67c74aa 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service; import cn.hutool.core.lang.tree.Tree; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import java.util.List; @@ -21,4 +22,7 @@ public interface ICumemberRetailDetailService { List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); + + CuMemberPointDetailVO getPointDetail(Long pointMemberCode); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index afd62bb6..075e75c0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -10,6 +10,7 @@ import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -106,14 +107,12 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { - List cuMemberRetailDetailList = baseMapper.getCuMemberRetailDetailList(settleTableName, memberCode, stage, stageStatus); - if (cuMemberRetailDetailList == null || cuMemberRetailDetailList.isEmpty()) { - return null; - }else { - // 构建map - cuMemberRetailDetailList.forEach(CuMemberThreeFrameworkVO::buildMemberMaps); - } - return cuMemberRetailDetailList; + return baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + } + + @Override + public CuMemberPointDetailVO getPointDetail(Long pointMemberCode) { + return baseMapper.getPointDetail(pointMemberCode); } private Map makeNode(String id, String parentId, String label,Integer pointMember, diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index fa356dbf..06f097b3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -9,11 +9,15 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -46,6 +50,9 @@ public class ApiMemberStructureController extends BaseController { @Autowired ICumemberRetailDetailService iCumemberRetailDetailService; + @Autowired + ICuMemberService iCuMemberService; + @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) @GetMapping("/three-framework") public AjaxResult Framework(Integer stage,String childNode,Integer stageStatus) { @@ -116,6 +123,51 @@ public class ApiMemberStructureController extends BaseController { return AjaxResult.success(childCodeList); } + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/three-framework-list") + public AjaxResult threeFrameworkList(Integer stage,Integer stageStatus) { + if (stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + startPage(); + // 查询当前会员所有子点位信息 + CuMember member = iCuMemberService.getMember(userId); + List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,member.getMemberCode(),stage,stageStatus); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + } + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/pointDetail") + public AjaxResult pointDetail(Long pointMemberCode) { + if (pointMemberCode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + if (cuMemberPointDetailVO == null) { + return null; + } + return AjaxResult.success(cuMemberPointDetailVO); + } // @Autowired // private ITransactionCommonService iTransactionCommonService; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 6619206a..447f730c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -33,6 +33,7 @@ import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import com.hzs.system.config.IGradeServiceApi; @@ -274,6 +275,20 @@ public class MemberStructureController extends BaseController { return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); } + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/pointDetail") + public AjaxResult pointDetail(Long pointMemberCode) { + if (pointMemberCode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + if (cuMemberPointDetailVO == null) { + return null; + } + return AjaxResult.success(cuMemberPointDetailVO); + } + /** * 查询子节点 * @param memberSettlePeriodId diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java new file mode 100644 index 00000000..fbc5864b --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java @@ -0,0 +1,29 @@ +package com.hzs.member.structure.controller.vo; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +public class CuMemberPointDetailVO { + /** + * 会员编号 + */ + private String memberCode; + /** + * 会员姓名 + */ + private String memberName; + /** + * 荣誉奖衔 + */ + private String awardsName; + /** + * 隶属体系 + */ + private String vertexName; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java index 9db2c6de..660fed11 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -1,182 +1,159 @@ package com.hzs.member.structure.controller.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.util.Date; -import java.util.HashMap; +import java.io.Serializable; @Data @AllArgsConstructor @NoArgsConstructor -public class CuMemberThreeFrameworkVO { +@JsonInclude(JsonInclude.Include.ALWAYS) +public class CuMemberThreeFrameworkVO implements Serializable { private static final long serialVersionUID = 1L; - /** * 阶段状态(0=已完成,1=未完成) */ private Integer stageStatus; /** - * 阶段完成时间 + * 阶段 */ - private Date stageDate; + private Integer stage; + /** + * 子点位 + */ + private Integer childNode; /** * 点位1-1会员ID */ - private Long pointMember11; + private String pointMemberName11; /** - * 点位1-1会员子节点 + * 点位1-1会员ID */ - private String point11; + private String pointMemberCode11; /** * 点位1-2会员ID */ - private Long pointMember12; + private String pointMemberName12; /** - * 点位1-2会员子节点 + * 点位1-1会员ID */ - private String point12; + private String pointMemberCode12; /** * 点位2-1会员ID */ - private Long pointMember21; + private String pointMemberName21; /** - * 点位2-1会员子节点 + * 点位1-1会员ID */ - private String point21; + private String pointMemberCode21; /** * 点位2-2会员ID */ - private Long pointMember22; + private String pointMemberName22; /** - * 点位2-2会员子节点 + * 点位1-1会员ID */ - private String point22; + private String pointMemberCode22; /** * 点位2-3会员ID */ - private Long pointMember23; + private String pointMemberName23; /** - * 点位2-3会员子节点 + * 点位1-1会员ID */ - private String point23; + private String pointMemberCode23; /** * 点位2-4会员ID */ - private Long pointMember24; + private String pointMemberName24; /** - * 点位2-4会员子节点 + * 点位1-1会员ID */ - private String point24; + private String pointMemberCode24; /** * 点位3-1会员ID */ - private Long pointMember31; + private String pointMemberName31; /** - * 点位3-1会员子节点 + * 点位1-1会员ID */ - private String point31; + private String pointMemberCode31; /** * 点位3-2会员ID */ - private Long pointMember32; + private String pointMemberName32; /** - * 点位3-2会员子节点 + * 点位1-1会员ID */ - private String point32; + private String pointMemberCode32; /** * 点位3-3会员ID */ - private Long pointMember33; + private String pointMemberName33; /** - * 点位3-3会员子节点 + * 点位1-1会员ID */ - private String point33; + private String pointMemberCode33; /** * 点位3-4会员ID */ - private Long pointMember34; + private String pointMemberName34; /** - * 点位3-4会员子节点 + * 点位1-1会员ID */ - private String point34; + private String pointMemberCode34; /** * 点位3-5会员ID */ - private Long pointMember35; + private String pointMemberName35; /** - * 点位3-5会员子节点 + * 点位1-1会员ID */ - private String point35; + private String pointMemberCode35; /** * 点位3-6会员ID */ - private Long pointMember36; + private String pointMemberName36; /** - * 点位3-6会员子节点 + * 点位1-1会员ID */ - private String point36; + private String pointMemberCode36; /** * 点位3-7会员ID */ - private Long pointMember37; + private String pointMemberName37; /** - * 点位3-7会员子节点 + * 点位1-1会员ID */ - private String point37; + private String pointMemberCode37; /** * 点位3-8会员ID */ - private Long pointMember38; + private String pointMemberName38; /** - * 点位3-8会员子节点 + * 点位1-1会员ID */ - private String point38; - - @TableField(exist = false) - HashMap memberMaps = new HashMap<>(14); - - public void buildMemberMaps() { - memberMaps.clear(); - - putIntoMap(point11, pointMember11); - putIntoMap(point12, pointMember12); - putIntoMap(point21, pointMember21); - putIntoMap(point22, pointMember22); - putIntoMap(point23, pointMember23); - putIntoMap(point24, pointMember24); - putIntoMap(point31, pointMember31); - putIntoMap(point32, pointMember32); - putIntoMap(point33, pointMember33); - putIntoMap(point34, pointMember34); - putIntoMap(point35, pointMember35); - putIntoMap(point36, pointMember36); - putIntoMap(point37, pointMember37); - putIntoMap(point38, pointMember38); - } - private void putIntoMap(String key, Long value) { - memberMaps.put(key != null ? key : "", value); - } + private String pointMemberCode38; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index c3e7441d..3f542e8d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,41 +62,98 @@ and cud.STAGE_STATUS = #{stageStatus} - + From 02ff3cd355467419dc21bdf1a70b58cf972564c5 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 25 Sep 2025 18:07:36 +0800 Subject: [PATCH 278/362] =?UTF-8?q?##=20=E4=BA=8C=E4=B8=89=E9=98=B6?= =?UTF-8?q?=E6=AE=B5=E6=95=B0=E6=8D=AE=E8=A1=A5=E5=85=A8=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 5 +- .../service/ICuMemberRetailDetailService.java | 13 +- .../impl/CuMemberRetailDetailServiceImpl.java | 17 +- .../hzs/bonus/bonus/dto/BonusStageData.java | 5 + .../service/impl/BonusSettleRangeHandle.java | 183 +++++++++++++----- .../impl/CuMemberBonusStageServiceImpl.java | 22 ++- .../hzs/bonus/constant/BonusConstants.java | 9 + .../achieve/CuMemberRetailDetailMapper.xml | 10 +- .../achieve/CuMemberRetailRangeMapper.xml | 21 +- .../bonus/achieve/CuMemberTreeMapper.xml | 4 +- .../member/achieve/CuMemberRetailRange.java | 11 ++ 11 files changed, 221 insertions(+), 79 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java index aa6dcff6..3758a05c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -12,10 +12,11 @@ import java.util.List; public interface CuMemberRetailDetailMapper extends BaseMapper { /** - * 查询明细数据(指定阶段,未完成的) + * 查询明细数据(指定阶段,指定状态) */ List listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName, @Param("tmpIdList") List tmpIdList, - @Param("stage") Integer stage); + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index ab48d9c5..81d13adc 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -2,6 +2,7 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; @@ -17,12 +18,18 @@ public interface ICuMemberRetailDetailService extends IService memberRangeExtMap, - EBonusStage eBonusStage, List stageMemberList); + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList); /** * 指定会员获取对应的点位数据 */ - void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage); + void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); + + /** + * 会员直推对应的点位数据 + */ + void listChildRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 435bcfb9..5602c43d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -6,6 +6,7 @@ import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import org.springframework.beans.factory.annotation.Autowired; @@ -24,7 +25,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, - EBonusStage eBonusStage, List stageMemberList) { + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList) { List> pkMemberList; if (CollectionUtil.isNotEmpty(stageMemberList)) { pkMemberList = cuMemberBonusSettle.handleCutList(stageMemberList, MagicNumberConstants.BATCH_QUERY_NUM); @@ -33,7 +34,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl { // 查询明细数据(指定阶段,未完成的) - List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue()); + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null); if (CollectionUtil.isNotEmpty(tmpList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { @@ -64,10 +65,10 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage) { + public void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { // 查询明细数据(指定阶段,未完成的) - List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue()); + List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); if (CollectionUtil.isNotEmpty(tmpDetailList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { @@ -97,4 +98,10 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { + + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java index eb5ff7ea..edf551a3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -38,6 +38,11 @@ public class BonusStageData { */ private Integer stageNum; + /** + * 三阶段走完,需要添加的待激活点位数 + */ + private Integer pointGift; + /** * 二阶段点位 */ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index fb35053c..2f9104bd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -7,6 +7,7 @@ import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.dto.BonusStageData; import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; +import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.bonus.order.service.IBonusOrderService; import com.hzs.common.core.constant.MagicNumberConstants; @@ -310,7 +311,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, null); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, EBonusStageStatus.NO, null); // 奖衔 Map retailAwardsMap = new HashMap<>(); @@ -353,21 +354,25 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // TODO 处理升二阶段点位 + // 处理升二阶段点位 if (CollectionUtil.isNotEmpty(stageList)) { List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); // 查询血缘会员明细数据(二阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, stageMemberList); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, EBonusStageStatus.NO, findMemberList); // 二阶段收益 stageList = this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.TWO, stageList); } - // TODO 处理升三阶段点位 + // 处理升三阶段点位 if (CollectionUtil.isNotEmpty(stageList)) { List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); // 查询血缘会员明细数据(三阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, stageMemberList); + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, EBonusStageStatus.NO, findMemberList); // 三阶段收益 this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.THREE, stageList); @@ -965,12 +970,21 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return returnRetailDetailList; } + // 订单生成新点位数量 int newPointInt; if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { // 精品专区按订单金额计算 + BigDecimal orderAmount = saOrderExt.getOrderAmount(); // 订单金额除50取整,为新増点位数量 - newPointInt = saOrderExt.getOrderAmount().divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + newPointInt = orderAmount.divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + if (orderAmount.compareTo(BonusConstants.GIFT_TWO_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 2) { + // 首次订单金额大于等于2万,每个点位完成三阶段赠送2个点位 + sourceMember.setGiftPoint(2); + } else if (orderAmount.compareTo(BonusConstants.GIFT_ONE_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 1) { + // 首次订单金额大于等于1万,每个点位完成三阶段赠送1个点位 + sourceMember.setGiftPoint(1); + } } else { // 商城专区按累计业绩处理 BigDecimal repPvBalance = sourceMember.getRepPvBalance().add(saOrderExt.getOrderAchieve()); @@ -981,6 +995,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 当前订单不足生成点位 return returnRetailDetailList; } + // 赠送点位 + int pointGift = sourceMember.getGiftPoint(); // 会员一阶段子点位列表 LinkedHashMap detailList = sourceMember.getOneDetailMap(); @@ -1001,7 +1017,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .stage(EBonusStage.ONE.getValue()) .stageStatus(EBonusStageStatus.NO.getValue()) .pointType(EBonusStageType.NORMAL.getValue()) - .pointGift(0) + .pointGift(pointGift) .creationTime(settleDate) .thirdBonus1(0) .thirdBonus2(0) @@ -1014,6 +1030,39 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); } + // 待激活点位 + int waitPointCount = sourceMember.getWaitPointCount(); + if (waitPointCount != 0) { + for (int i = 1; i <= newPointInt; i++) { + if (waitPointCount > 0) { + // 购买一个点位,激活一个待激活点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.GIFT.getValue()) + .pointGift(0) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build(); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, + sourceMember, newRetailDetail, returnRetailDetailList); + + waitPointCount = waitPointCount - 1; + } else { + break; + } + } + sourceMember.setWaitPointCount(waitPointCount); + } sourceMember.setPointCount(sourceMember.getPointCount() + newPointInt); return returnRetailDetailList; } @@ -1053,53 +1102,60 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List returnRetailDetailList) { // 阶段奖金处理列表 List bonusStageDataList = new ArrayList<>(); - // 推荐人 - Long pkParent = sourceMember.getPkParent(); - while (true) { - CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); - if (null == targetMember) { - // 没有推荐人了,则直接结束 - break; - } - pkParent = targetMember.getPkParent(); - // 推荐人一阶段子点位列表 - LinkedHashMap parentDetailList = null; - if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getOneDetailMap(); - } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getTwoDetailMap(); - } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { - parentDetailList = targetMember.getThreeDetailMap(); - } - if (CollectionUtil.isEmpty(parentDetailList)) { - // 推荐人没有未完成点位,继续往上找 - continue; - } + if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()) { + // 普通点位处理 + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + pkParent = targetMember.getPkParent(); - // 推荐人第一层点位处理 - boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第一层找到并填充点位,就开始下一个点位的处理 - break; - } + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = null; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getThreeDetailMap(); + } + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; + } - // 推荐人第二层点位处理 - forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第二层找到并填充点位,就开始下一个点位的处理 - break; - } + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } - // 推荐人第三层点位处理 - forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第三层找到并填充点位,就开始下一个点位的处理 - break; + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } } + } else { + // TODO 赠送点位处理,赠送点位给自己直推会员轮流布点 + } if (CollectionUtil.isNotEmpty(bonusStageDataList)) { @@ -1138,11 +1194,36 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); returnRetailDetailList.add(threeRetailDetail); } else if (EBonusStage.THREE.getValue() == bonusStageData.getStage()) { - // TODO 三阶段填充满,判断是否需要赠送点位 - + // 三阶段填充满,判断是否需要赠送点位 + if (bonusStageData.getPointGift() != 0) { + // 需要添加赠送的待激活点位 + targetMember.setWaitPointCount(targetMember.getWaitPointCount() + bonusStageData.getPointGift()); + } } } } } + /** + * 查找血缘上所有会员 + */ + private List findParent(Map memberRangeExtMap, List pkMemberList) { + List resultList = new ArrayList<>(); + for (Long pkMember : pkMemberList) { + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(pkMember); + resultList.add(sourceMember.getPkMember()); + + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + resultList.add(targetMember.getPkMember()); + pkParent = targetMember.getPkParent(); + } + } + return resultList; + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index d7fbc670..9fd14cd7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -361,6 +361,7 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } @@ -535,8 +539,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } @@ -628,8 +632,8 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl { memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); }); - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, queryMemberList, EBonusStage.ONE); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index c8a55bf4..cb393e6f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -12,6 +12,15 @@ import java.util.Map; public class BonusConstants { + /** + * 赠送2个点位订单金额 + */ + public static final BigDecimal GIFT_TWO_AMOUNT = new BigDecimal("20000"); + /** + * 赠送1个点位订单金额 + */ + public static final BigDecimal GIFT_ONE_AMOUNT = new BigDecimal("10000"); + /** * 一阶段奖金 -- 满14,发35 */ diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml index b1efab5b..5cb90a9a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -10,9 +10,13 @@ #{items} - and cmrd.stage = #{stage} - and cmrd.stage_status = 1 - order by cmrd.pk_member, cmrd.child_node + + and cmrd.stage = #{stage} + + + and cmrd.stage_status = #{stageStatus} + + order by cmrd.pk_member, cmrd.child_node, cmrd.stage diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 80f02a9a..eb220f7b 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -51,7 +51,9 @@ + + @@ -95,7 +97,9 @@ rep_team_new_amount = 0, rep_team_new_pv = 0, point_count = 0, - rep_pv_balance = 0 + wait_point_count = 0, + rep_pv_balance = 0, + gift_point = 0 @@ -107,7 +111,8 @@ team_consume_pv, team_month_pv, team_consume_amount, team_month_amount, recommend_num, team_num, big_team_pv, small_team_pv, - point_count, rep_pv_balance + point_count, wait_point_count, rep_pv_balance, + gift_point from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -120,7 +125,9 @@ a.team_consume_amount = b.team_consume_amount, a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, - a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, + a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point ,a.month_consume_pv = b.month_consume_pv ,a.month_consume_amount = b.month_consume_amount @@ -339,7 +346,8 @@ #{item.regTeamNewAmount} reg_team_new_amount, #{item.regTeamNewPv} reg_team_new_pv, #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv, - #{item.pointCount} point_count, #{item.repPvBalance} rep_pv_balance + #{item.pointCount} point_count, #{item.waitPointCount} wait_point_count, #{item.repPvBalance} rep_pv_balance, + #{item.giftPoint} gift_point from dual ) b @@ -355,7 +363,8 @@ a.reg_team_new_amount = b.reg_team_new_amount, a.reg_team_new_pv = b.reg_team_new_pv, a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv, - a.point_count = b.point_count, a.rep_pv_balance = b.rep_pv_balance + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point @@ -671,7 +680,9 @@ rep_team_new_amount, rep_team_new_pv, point_count, + wait_point_count, rep_pv_balance, + gift_point, bw.awards_value, bw.awards_name from ( diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index ecced1a8..e61a1a6c 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -576,7 +576,9 @@ rep_team_new_amount number(17,6) default 0 not null, rep_team_new_pv number(17,6) default 0 not null, point_count number(8) default 0 not null, - rep_pv_balance number(17,6) default 0 not null + wait_point_count number(8) default 0 not null, + rep_pv_balance number(17,6) default 0 not null, + gift_point number(2) default 1 not null ) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index f5f6ea4a..6b996bf6 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -194,6 +194,11 @@ public class CuMemberRetailRange extends BaseEntity { */ @TableField("point_count") private Integer pointCount; + /** + * 待激活子点位数 + */ + @TableField("WAIT_POINT_COUNT") + private Integer waitPointCount; /** * 复购业绩余额 @@ -201,4 +206,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("REP_PV_BALANCE") private BigDecimal repPvBalance; + /** + * 赠送几个点位 + */ + @TableField("GIFT_POINT") + private Integer giftPoint; + } From 7568951e5a5d9c155ed0fcbb5b1f181de97cad56 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 26 Sep 2025 09:06:50 +0800 Subject: [PATCH 279/362] =?UTF-8?q?##=20Opt=20-=20=E5=B0=8F=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E9=9D=9E=E7=A9=BA=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 6345dc09..34a5304a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -189,6 +189,9 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; + if(ObjectUtil.isEmpty(specialArea)){ + specialArea = -1; + } if(ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea){ specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); } From 6a148708034f02a5b8abbc5ad7695af22fc48412 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 26 Sep 2025 09:06:50 +0800 Subject: [PATCH 280/362] =?UTF-8?q?##=20Opt=20-=20=E5=B0=8F=E8=B4=AD?= =?UTF-8?q?=E7=89=A9=E8=BD=A6=E9=9D=9E=E7=A9=BA=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index 6345dc09..34a5304a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -189,6 +189,9 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; + if(ObjectUtil.isEmpty(specialArea)){ + specialArea = -1; + } if(ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea){ specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); } From 18e62e2d6ba97685266511a18b9393568a644bae Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 09:39:54 +0800 Subject: [PATCH 281/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberController.java | 48 +++ .../controller/manage/CuMemberController.java | 45 +++ .../mapper/CuMemberRetailDetailMapper.java | 7 +- .../base/mapper/CuMemberRetailMapper.java | 26 ++ .../base/service/ICuMemberRetailService.java | 23 ++ .../service/ICumemberRetailDetailService.java | 2 +- .../impl/CuMemberRetailServiceImpl.java | 38 ++ .../ICumemberRetailDetailServiceImpl.java | 20 +- .../com/hzs/member/base/vo/memberPointVO.java | 39 ++ .../api/ApiMemberStructureController.java | 24 +- .../manage/MemberStructureController.java | 16 +- .../controller/vo/CuMemberPointDetailVO.java | 8 + .../vo/CuMemberThreeFrameworkVO.java | 190 +++++++--- .../member/base/CuMemberRetailMapper.xml | 105 ++++++ .../member/CuMemberRetailDetailMapper.xml | 106 +----- .../hzs/common/core/enums/EBonusStage.java | 12 + .../common/core/enums/EBonusStageStatus.java | 12 + .../common/core/enums/EBonusStageType.java | 11 + .../common/core/enums/EOperationBusiness.java | 2 + .../common/core/enums/EOperationModule.java | 6 + .../domain/member/base/CuMemberRetail.java | 339 ++++++++++++++++++ .../src/test/java/com/CodeGenerator.java | 2 +- 22 files changed, 934 insertions(+), 147 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java create mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index e566f0be..a81356c8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -2,9 +2,11 @@ package com.hzs.member.base.controller.api; import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; @@ -18,13 +20,17 @@ import com.hzs.common.core.utils.uuid.IdUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberChangeLog; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.param.ForgetPasswordParam; import com.hzs.member.base.param.MemberDataParam; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.IMemberInfoService; import com.hzs.common.core.utils.UploadFileUtil; @@ -39,6 +45,8 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.TimeUnit; @@ -56,6 +64,11 @@ public class ApiMemberController extends BaseController { private ICuMemberService iCuMemberService; @Autowired private IApiAliSmsService iApiAliSmsService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; + @Autowired private RedisService redisService; @@ -427,4 +440,39 @@ public class ApiMemberController extends BaseController { .uuid(uuid) .build()); } + /** + * + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint() { + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + log.info("会员结算表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + List list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId); + if (CollectionUtil.isEmpty(list)) { + return null; + } + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + startPage(); + return AjaxResult.success(getDataTable(list)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index 58063571..dc3881f7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -9,6 +9,7 @@ import com.hzs.common.core.annotation.ColumnAuthority; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.EnumsPrefixConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.VertexConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -19,16 +20,20 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRetail; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.dto.LoginMember; import com.hzs.member.base.dto.MemberBusinessTemplate; import com.hzs.member.base.param.*; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.vo.*; import com.hzs.member.login.service.IMemberLoginService; @@ -42,6 +47,7 @@ import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IMenuColumnServiceApi; import com.hzs.system.sys.IUserServiceApi; import com.hzs.system.sys.dto.UserAuthorityDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -53,6 +59,7 @@ import java.nio.charset.StandardCharsets; import java.util.*; import java.util.stream.Collectors; +@Slf4j @RequestMapping("/manager/member") @RestController public class CuMemberController extends BaseController { @@ -65,6 +72,10 @@ public class CuMemberController extends BaseController { private MemberTokenService memberTokenService; @Autowired private IMemberLoginService iMemberLoginService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @DubboReference IUserServiceApi iUserServiceApi; @@ -778,4 +789,38 @@ public class CuMemberController extends BaseController { return AjaxResult.success("", Base64Encoder.encode(tmpPwd.getBytes(StandardCharsets.UTF_8))); } + /** + * + * @param memberCode + * @param memberSettlePeriodId + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId) { + if (memberCode == null || memberSettlePeriodId == null) { + log.error("参数错误{}{}",memberCode, memberSettlePeriodId); + return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + log.info("会员结算表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前会员结算表不存在",settleTableName); + } + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode); + if (CollectionUtil.isEmpty(list)) { + return null; + } + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + startPage(); + return AjaxResult.success(getDataTable(list)); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index a4fa110f..724a4730 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -34,10 +34,15 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode, @Param("stage") Integer stage, @Param("stageStatus") Integer stageStatus); + + + CuMemberPointDetailVO getPointDetailByUserId(@Param("userId") Long userId, + @Param("stage") Integer stage, + @Param("point") Integer point, + @Param("settleTableName") String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java new file mode 100644 index 00000000..453672e1 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java @@ -0,0 +1,26 @@ +package com.hzs.member.base.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.vo.memberPointVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * Mapper 接口 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface CuMemberRetailMapper extends BaseMapper { + + Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); + + List getMemberPointByMemberCode(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode); + + List getMemberPointByUserId(@Param("settleTableName") String settleTableName, @Param("userId") Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java new file mode 100644 index 00000000..510dc8d1 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java @@ -0,0 +1,23 @@ +package com.hzs.member.base.service; + + +import com.hzs.member.base.vo.memberPointVO; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface ICuMemberRetailService{ + + Integer getFindCuMemberRetailDetail(String settleTableName); + + List getMemberPointByMemberCode(String settleTableName, String memberCode); + + List getMemberPointByUserId(String settleTableName, Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index c67c74aa..94be8633 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -23,6 +23,6 @@ public interface ICumemberRetailDetailService { List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); - CuMemberPointDetailVO getPointDetail(Long pointMemberCode); + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java new file mode 100644 index 00000000..f2c3ac9a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java @@ -0,0 +1,38 @@ +package com.hzs.member.base.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.mapper.CuMemberRetailMapper; +import com.hzs.member.base.service.ICuMemberRetailService; +import com.hzs.member.base.vo.memberPointVO; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +@Service +public class CuMemberRetailServiceImpl extends ServiceImpl implements ICuMemberRetailService { + + @Override + public Integer getFindCuMemberRetailDetail(String settleTableName) { + return baseMapper.getFindCumemberRetailDetail(settleTableName); + } + + @Override + public List getMemberPointByMemberCode(String settleTableName, String memberCode) { + return baseMapper.getMemberPointByMemberCode(settleTableName,memberCode); + } + + @Override + public List getMemberPointByUserId(String settleTableName, Long userId) { + return baseMapper.getMemberPointByUserId(settleTableName,userId); + } +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 075e75c0..0650e949 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -3,6 +3,9 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; +import com.hzs.common.core.enums.EBonusStageType; import com.hzs.common.core.enums.EMemberChildNodeType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; @@ -24,6 +27,8 @@ import java.util.stream.Stream; public class ICumemberRetailDetailServiceImpl extends ServiceImpl implements ICumemberRetailDetailService { @Autowired private ICuMemberService iCuMemberService; + @Autowired + private ICumemberRetailDetailService iCumemberRetailDetailService; @Override public List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName) { return baseMapper.getChildList(memberCode,stage,stageStatus,settleTableName); @@ -107,14 +112,23 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { - return baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + List cuMemberRetailDetailDTOList = baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + cuMemberRetailDetailDTOList.forEach(item -> { + item.setPointTypeLabel(EBonusStageType.getEBonusStageTypeByValue(item.getPointType()).getLabel()); + item.setStageLabel(EBonusStage.getEBonusStageByValue(item.getStage()).getLabel()); + item.setStageStatusLabel(EBonusStageStatus.getEBonusStageStatusLabel(item.getStageStatus()).getLabel()); + }); + return cuMemberRetailDetailDTOList; } @Override - public CuMemberPointDetailVO getPointDetail(Long pointMemberCode) { - return baseMapper.getPointDetail(pointMemberCode); + public CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName) { + CuMemberPointDetailVO pointDetailByUserId = baseMapper.getPointDetailByUserId(userId, stage, point, settleTableName); + pointDetailByUserId.setMemberName(pointDetailByUserId.getMemberName() + "-" + point); + return pointDetailByUserId; } + private Map makeNode(String id, String parentId, String label,Integer pointMember, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java new file mode 100644 index 00000000..676f4e52 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java @@ -0,0 +1,39 @@ +package com.hzs.member.base.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class memberPointVO { + /** + * 会员编号 + */ + private String memberCode; + /** + * 会员姓名 + */ + private String memberName; + /** + * 子点位总数 + */ + private Integer pointCount; + /** + * 待激活点位数 + */ + private Integer waitPointCount; + /** + * 复购业绩余额 + */ + private Long repPvBalance; + /** + * 期数 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date memberSettlePeriod; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 06f097b3..e002886d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -157,12 +157,30 @@ public class ApiMemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/pointDetail") - public AjaxResult pointDetail(Long pointMemberCode) { - if (pointMemberCode == null) { + public AjaxResult pointDetail(Integer stage,Integer point) { + if (stage == null || point == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } - CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(userId,stage,point,settleTableName); if (cuMemberPointDetailVO == null) { return null; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 447f730c..4444947e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -277,12 +277,22 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/pointDetail") - public AjaxResult pointDetail(Long pointMemberCode) { - if (pointMemberCode == null) { + public AjaxResult pointDetail(Long pkMember,Integer stage,Integer point,Long memberSettlePeriodId) { + if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } - CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,stage,point,settleTableName); if (cuMemberPointDetailVO == null) { return null; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java index fbc5864b..68982f52 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java @@ -1,10 +1,13 @@ package com.hzs.member.structure.controller.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.Date; + @Data @AllArgsConstructor @NoArgsConstructor @@ -26,4 +29,9 @@ public class CuMemberPointDetailVO { * 隶属体系 */ private String vertexName; + /** + * 点位创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java index 660fed11..fa0d217b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -1,11 +1,14 @@ package com.hzs.member.structure.controller.vo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.util.Date; @Data @AllArgsConstructor @@ -14,146 +17,237 @@ import java.io.Serializable; public class CuMemberThreeFrameworkVO implements Serializable { private static final long serialVersionUID = 1L; + + /** + * 会员ID + */ + private Long pkMember; + + /** + * 会员子节点 + */ + private Integer childNode; + + /** + * 推荐人 + */ + private Long pkParent; + + /** + * 三个阶段(1、2、3) + */ + private Integer stage; + /** + * 三阶段实际值 + */ + private String stageLabel; + /** * 阶段状态(0=已完成,1=未完成) */ private Integer stageStatus; + /** + * 阶段完成实际值 + */ + private String stageStatusLabel; /** - * 阶段 + * 阶段完成时间 */ - private Integer stage; - /** - * 子点位 - */ - private Integer childNode; + private Date stageDate; /** * 点位1-1会员ID */ - private String pointMemberName11; + private Long pointMember11; /** - * 点位1-1会员ID + * 点位1-1会员子节点 */ - private String pointMemberCode11; + private Integer point11; /** * 点位1-2会员ID */ - private String pointMemberName12; + private Long pointMember12; /** - * 点位1-1会员ID + * 点位1-2会员子节点 */ - private String pointMemberCode12; + private Integer point12; /** * 点位2-1会员ID */ - private String pointMemberName21; + private Long pointMember21; /** - * 点位1-1会员ID + * 点位2-1会员子节点 */ - private String pointMemberCode21; + private Integer point21; /** * 点位2-2会员ID */ - private String pointMemberName22; + private Long pointMember22; /** - * 点位1-1会员ID + * 点位2-2会员子节点 */ - private String pointMemberCode22; + private Integer point22; /** * 点位2-3会员ID */ - private String pointMemberName23; + private Long pointMember23; /** - * 点位1-1会员ID + * 点位2-3会员子节点 */ - private String pointMemberCode23; + private Integer point23; /** * 点位2-4会员ID */ - private String pointMemberName24; + private Long pointMember24; /** - * 点位1-1会员ID + * 点位2-4会员子节点 */ - private String pointMemberCode24; + private Integer point24; /** * 点位3-1会员ID */ - private String pointMemberName31; + private Long pointMember31; /** - * 点位1-1会员ID + * 点位3-1会员子节点 */ - private String pointMemberCode31; + private Integer point31; /** * 点位3-2会员ID */ - private String pointMemberName32; + private Long pointMember32; /** - * 点位1-1会员ID + * 点位3-2会员子节点 */ - private String pointMemberCode32; + private Integer point32; /** * 点位3-3会员ID */ - private String pointMemberName33; + private Long pointMember33; /** - * 点位1-1会员ID + * 点位3-3会员子节点 */ - private String pointMemberCode33; + private Integer point33; /** * 点位3-4会员ID */ - private String pointMemberName34; + private Long pointMember34; /** - * 点位1-1会员ID + * 点位3-4会员子节点 */ - private String pointMemberCode34; + private Integer point34; /** * 点位3-5会员ID */ - private String pointMemberName35; + private Long pointMember35; /** - * 点位1-1会员ID + * 点位3-5会员子节点 */ - private String pointMemberCode35; + private Integer point35; /** * 点位3-6会员ID */ - private String pointMemberName36; + private Long pointMember36; /** - * 点位1-1会员ID + * 点位3-6会员子节点 */ - private String pointMemberCode36; + private Integer point36; /** * 点位3-7会员ID */ - private String pointMemberName37; + private Long pointMember37; /** - * 点位1-1会员ID + * 点位3-7会员子节点 */ - private String pointMemberCode37; + private Integer point37; /** * 点位3-8会员ID */ - private String pointMemberName38; + private Long pointMember38; /** - * 点位1-1会员ID + * 点位3-8会员子节点 */ - private String pointMemberCode38; + private Integer point38; + /** + * 点位类型(0=普通,1=赠送点位) + */ + private Integer pointType; + /** + * 点位类型实际值 + */ + private String pointTypeLabel; + + /** + * 赠点数量(三阶段走完赠送几个点位) + */ + private Integer pointGift; + + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; + + /** + * 第一层会员ID + */ + private Long pointMemberFirst; + /** + * 第一层会员子节点 + */ + private Integer pointFirst; + + /** + * 第二层会员ID + */ + private Long pointMemberSecond; + /** + * 第二层会员子节点 + */ + private Integer pointSecond; + + /** + * 第三层会员ID + */ + private Long pointMemberThird; + /** + * 第三层会员子节点 + */ + private Integer pointThird; + + /** + * 三阶段1层奖金次数 + */ + private Integer thirdBonus1; + + /** + * 三阶段2层奖金次数 + */ + private Integer thirdBonus2; + + /** + * 三阶段3层奖金次数 + */ + private Integer thirdBonus3; + + /** + * 更新标记(不为null则需要入库) + */ + private Integer updateBool; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml new file mode 100644 index 00000000..20de4174 --- /dev/null +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PK_COUNTRY, + PK_MEMBER, PK_PARENT, MEMBER_CODE, MEMBER_NAME, CUSTOMER_TYPE, PHONE, PK_GRADE, PK_AWARDS, PK_SHARE_AWARDS, ENABLE_STATUS, ACCOUNT_STATUS, PAY_STATUS, PAY_TIME, CATEGORY, PURCHASE_STATUS, INCOME_STATUS, PK_TEAM_CODE, PK_CENTER_CODE, PK_VERTEX, PK_SETTLE_COUNTRY, IS_REAL_NAME, SYSTEM_TYPE, PK_RATE, NEW_CONSUME_PV, CONSUME_PV, MONTH_CONSUME_PV, NEW_CONSUME_AMOUNT, CONSUME_AMOUNT, MONTH_CONSUME_AMOUNT, TEAM_NEW_PV, TEAM_CONSUME_PV, TEAM_MONTH_PV, TEAM_NEW_AMOUNT, TEAM_CONSUME_AMOUNT, TEAM_MONTH_AMOUNT, RECOMMEND_NUM, TEAM_NUM, BIG_TEAM_PV, SMALL_TEAM_PV, REG_CONSUME_NEW_AMOUNT, REG_CONSUME_NEW_PV, REG_TEAM_NEW_AMOUNT, REG_TEAM_NEW_PV, REP_CONSUME_NEW_AMOUNT, REP_CONSUME_NEW_PV, REP_TEAM_NEW_AMOUNT, REP_TEAM_NEW_PV, POINT_COUNT, WAIT_POINT_COUNT, REP_PV_BALANCE, GIFT_ONE, GIFT_TWO + + + + + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 3f542e8d..f7897a31 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,96 +62,10 @@ and cud.STAGE_STATUS = #{stageStatus} - + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java index ae52b1a0..c502c464 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java @@ -34,4 +34,16 @@ public enum EBonusStage { */ private final String label; + public static EBonusStage getEBonusStageByValue(Integer value) { + if (null == value) { + return null; + } + for (EBonusStage eBonusStage : EBonusStage.values()) { + if (eBonusStage.getValue() == value) { + return eBonusStage; + } + } + return null; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java index 2e3d4406..08bdfed5 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java @@ -30,4 +30,16 @@ public enum EBonusStageStatus { */ private final String label; + public static EBonusStageStatus getEBonusStageStatusLabel(Integer value) { + if (null == value) { + return null; + } + for (EBonusStageStatus eBonusStageStatus : EBonusStageStatus.values()) { + if (eBonusStageStatus.getValue() == value) { + return eBonusStageStatus; + } + } + return null; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java index 9497814c..b9c86dff 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java @@ -30,4 +30,15 @@ public enum EBonusStageType { */ private final String label; + public static EBonusStageType getEBonusStageTypeByValue(Integer value) { + if (null == value) { + return null; + } + for (EBonusStageType eBonusStageType : EBonusStageType.values()) { + if (eBonusStageType.getValue() == value) { + return eBonusStageType; + } + } + return null; + } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index 2ea8ab27..df49c905 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -74,6 +74,8 @@ public enum EOperationBusiness { SHARE_DELETE("删除空点"), + MEMBER_POINT("会员子点信息"), + //////////////////// 架构管理 //////////////////// SCHEME_ONE("方案一"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 8bac1e44..85229246 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -40,6 +40,8 @@ public enum EOperationModule { BUSINESS_LICENSE("营业执照"), + MEMBER_POINT("会员子点信息"), + //////////////////// 架构管理 //////////////////// RESETTLE_FRAMEWORK("安置架构"), @@ -400,9 +402,13 @@ public enum EOperationModule { STATISTIC_ANALYSIS("统计分析"), MEMBER_RISK_CONTROL("K值风控设置"), + ORDER_SYNC("同步失败订单"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java new file mode 100644 index 00000000..cd2be83e --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java @@ -0,0 +1,339 @@ +package com.hzs.common.domain.member.base; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author bd + * @since 2025-09-25 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("CU_MEMBER_RETAIL") +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberRetail extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 推荐人ID + */ + @TableField("PK_PARENT") + private Long pkParent; + + /** + * 会员编号 + */ + @TableField("MEMBER_CODE") + private String memberCode; + + /** + * 会员姓名 + */ + @TableField("MEMBER_NAME") + private String memberName; + + /** + * 会员类型(0.正常 1.空单 2.待激活-不用 3.已注销-不用 4.嗨粉 6.会员) + */ + @TableField("CUSTOMER_TYPE") + private Integer customerType; + + /** + * 联系方式 + */ + @TableField("PHONE") + private String phone; + + /** + * 会员等级 + */ + @TableField("PK_GRADE") + private Integer pkGrade; + + /** + * 会员奖衔 + */ + @TableField("PK_AWARDS") + private Integer pkAwards; + + /** + * 分红奖衔 + */ + @TableField("PK_SHARE_AWARDS") + private Integer pkShareAwards; + + /** + * 是否支付 + */ + @TableField("ENABLE_STATUS") + private Integer enableStatus; + + /** + * 账户状态(0=正常,1=限制登录(仅登录,无操作),2=禁止登录(不能登录),3=停止收益(计算不发),4=停算奖金(不计算奖金)) + */ + @TableField("ACCOUNT_STATUS") + private Integer accountStatus; + + /** + * 支付状态 + */ + @TableField("PAY_STATUS") + private Integer payStatus; + + /** + * 支付时间 + */ + @TableField("PAY_TIME") + private Date payTime; + + /** + * 用户类型分类(0=正常(正常 空单 嗨粉) 1=待激活(撤单死点)2=已注销(退单)) + */ + @TableField("CATEGORY") + private Integer category; + + /** + * 复购免考(0=是,1=否) + */ + @TableField("PURCHASE_STATUS") + private Integer purchaseStatus; + + /** + * 收益状态 (0=正常,1=停止收益) + */ + @TableField("INCOME_STATUS") + private Integer incomeStatus; + + /** + * 团队ID + */ + @TableField("PK_TEAM_CODE") + private Long pkTeamCode; + + /** + * 报单中心ID + */ + @TableField("PK_CENTER_CODE") + private Long pkCenterCode; + + /** + * 体系ID + */ + @TableField("PK_VERTEX") + private Long pkVertex; + + /** + * 结算国 + */ + @TableField("PK_SETTLE_COUNTRY") + private Integer pkSettleCountry; + + /** + * 是否实名认证(0=是,1=否) + */ + @TableField("IS_REAL_NAME") + private Integer isRealName; + + /** + * 系统类型(2=新零售) + */ + @TableField("SYSTEM_TYPE") + private Integer systemType; + + /** + * 汇率 + */ + @TableField("PK_RATE") + private Integer pkRate; + + /** + * 本人当天新消费pv + */ + @TableField("NEW_CONSUME_PV") + private BigDecimal newConsumePv; + + /** + * 本人累计消费pv + */ + @TableField("CONSUME_PV") + private BigDecimal consumePv; + + /** + * 本人月累计消费pv + */ + @TableField("MONTH_CONSUME_PV") + private BigDecimal monthConsumePv; + + /** + * 本人当天新消费金额 + */ + @TableField("NEW_CONSUME_AMOUNT") + private BigDecimal newConsumeAmount; + + /** + * 本人累计消费金额 + */ + @TableField("CONSUME_AMOUNT") + private BigDecimal consumeAmount; + + /** + * 本人月累计消费金额 + */ + @TableField("MONTH_CONSUME_AMOUNT") + private BigDecimal monthConsumeAmount; + + /** + * 团队当天新增消费pv + */ + @TableField("TEAM_NEW_PV") + private BigDecimal teamNewPv; + + /** + * 团队累计消费pv + */ + @TableField("TEAM_CONSUME_PV") + private BigDecimal teamConsumePv; + + /** + * 团队月累计消费pv + */ + @TableField("TEAM_MONTH_PV") + private BigDecimal teamMonthPv; + + /** + * 团队新增消费金额 + */ + @TableField("TEAM_NEW_AMOUNT") + private BigDecimal teamNewAmount; + + /** + * 团队累计消费金额 + */ + @TableField("TEAM_CONSUME_AMOUNT") + private BigDecimal teamConsumeAmount; + + /** + * 团队月累计消费金额 + */ + @TableField("TEAM_MONTH_AMOUNT") + private BigDecimal teamMonthAmount; + + /** + * 推荐人数 + */ + @TableField("RECOMMEND_NUM") + private Integer recommendNum; + + /** + * 团队人数 + */ + @TableField("TEAM_NUM") + private Integer teamNum; + + @TableField("BIG_TEAM_PV") + private BigDecimal bigTeamPv; + + @TableField("SMALL_TEAM_PV") + private BigDecimal smallTeamPv; + + /** + * 本日-个人注册(精品专区)新增金额 + */ + @TableField("REG_CONSUME_NEW_AMOUNT") + private BigDecimal regConsumeNewAmount; + + /** + * 本日-个人注册(精品专区)新增业绩 + */ + @TableField("REG_CONSUME_NEW_PV") + private BigDecimal regConsumeNewPv; + + /** + * 本日-团队注册(精品专区)新增金额 + */ + @TableField("REG_TEAM_NEW_AMOUNT") + private BigDecimal regTeamNewAmount; + + /** + * 本日-团队注册(精品专区)新增业绩 + */ + @TableField("REG_TEAM_NEW_PV") + private BigDecimal regTeamNewPv; + + /** + * 本日-个人复购(商城专区)新增金额 + */ + @TableField("REP_CONSUME_NEW_AMOUNT") + private BigDecimal repConsumeNewAmount; + + /** + * 本日-个人复购(商城专区)新增业绩 + */ + @TableField("REP_CONSUME_NEW_PV") + private BigDecimal repConsumeNewPv; + + /** + * 本日-团队复购(商城专区)新增金额 + */ + @TableField("REP_TEAM_NEW_AMOUNT") + private BigDecimal repTeamNewAmount; + + /** + * 本日-团队复购(商城专区)新增业绩 + */ + @TableField("REP_TEAM_NEW_PV") + private BigDecimal repTeamNewPv; + + /** + * 子点位总数 + */ + @TableField("POINT_COUNT") + private Integer pointCount; + + /** + * 待激活子点位数 + */ + @TableField("WAIT_POINT_COUNT") + private Integer waitPointCount; + + /** + * 复购业绩余额 + */ + @TableField("REP_PV_BALANCE") + private BigDecimal repPvBalance; + + /** + * 赠送1个点位已存在标记 + */ + @TableField("GIFT_ONE") + private Integer giftOne; + + /** + * 赠送2个点位已存在标记 + */ + @TableField("GIFT_TWO") + private Integer giftTwo; + + +} diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index 5aae5688..645a8119 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"CU_MEMBER_RETAIL_DETAIL"}; + String[] tables = {"CU_MEMBER_RETAIL"}; // 生成实体是否继承统一父类 boolean superBool = true; From d367046cfdb247c2dea2c9e28045e765f7e3a7de Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 10:42:55 +0800 Subject: [PATCH 282/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/mapper/CuMemberMapper.java | 3 ++ .../mapper/CuMemberRetailDetailMapper.java | 9 +++--- .../member/base/service/ICuMemberService.java | 3 ++ .../service/ICumemberRetailDetailService.java | 2 +- .../service/impl/CuMemberServiceImpl.java | 6 ++++ .../ICumemberRetailDetailServiceImpl.java | 23 +++++++++++--- .../api/ApiMemberStructureController.java | 11 ++----- .../controller/dto/CuMemberDetailDTO.java | 30 +++++++++++++++++++ .../controller/dto/CuMemberPointDTO.java | 22 ++++++++++++++ .../manage/MemberStructureController.java | 6 ++-- .../controller/vo/CuMemberPointDetailVO.java | 2 ++ .../mapper/member/base/CuMemberMapper.xml | 13 ++++++++ .../member/CuMemberRetailDetailMapper.xml | 9 +----- 13 files changed, 111 insertions(+), 28 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberDetailDTO.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberPointDTO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index e935b14c..16bdd4df 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -13,6 +13,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import org.apache.ibatis.annotations.Param; @@ -598,4 +599,6 @@ public interface CuMemberMapper extends BaseMapper { * @return */ CuMemberExt queryFansOrder(@Param("orderCode") String orderCode); + + CuMemberDetailDTO getCuMemberDetailById(@Param("pointMember") Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 724a4730..94ab3f43 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -2,6 +2,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -41,8 +42,8 @@ public interface CuMemberRetailDetailMapper extends BaseMapper { * @return */ Integer getMemberPhoneCount(String phone); + + CuMemberDetailDTO getCuMemberDetailById(Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 94be8633..779d47c1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -24,5 +24,5 @@ public interface ICumemberRetailDetailService { List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); - CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName); + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember,Integer stage, Integer point, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index fb7913c7..9fd7c590 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -52,6 +52,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.member.share.param.ShareRegisterParam; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; @@ -3248,4 +3249,9 @@ public class CuMemberServiceImpl extends ServiceImpl i wrapper.eq(CuMember::getPhone, phone); return baseMapper.selectCount(wrapper); } + + @Override + public CuMemberDetailDTO getCuMemberDetailById(Long pointMember) { + return baseMapper.getCuMemberDetailById(pointMember); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 0650e949..854026ee 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -12,6 +12,8 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -122,10 +124,23 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index f7897a31..2611ea8d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -79,18 +79,11 @@ curd.CHILD_NODE - - From 86f7b8c033adebc8fd19a206517a007bd9e5ba67 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 11:26:08 +0800 Subject: [PATCH 286/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BC=9A=E5=91=98=E5=90=8D=E7=A7=B0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF(=E6=A0=B9?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=B7=BB=E5=8A=A0=E5=AD=90=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E4=BF=A1=E6=81=AF)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/ICumemberRetailDetailServiceImpl.java | 2 +- .../structure/controller/manage/MemberStructureController.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 801f80e4..afd62bb6 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -64,7 +64,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getChildNode(),cuMemberRetailDetail.getPkMember(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index c71f8c87..6619206a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -268,9 +268,10 @@ public class MemberStructureController extends BaseController { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } + startPage(); // 查询当前会员所有子点位信息 List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); - return AjaxResult.success(cuMemberThreeFrameworkVOS); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); } /** From 3066c799c5ffd32d59754b1acfe011066ae87b02 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 11:13:28 +0800 Subject: [PATCH 287/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E4=BC=9A=E5=91=98=E5=90=8D=E7=A7=B0=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/ICumemberRetailDetailServiceImpl.java | 2 +- .../structure/controller/manage/MemberStructureController.java | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index afd62bb6..801f80e4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -64,7 +64,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getChildNode(),cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 6619206a..c71f8c87 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -268,10 +268,9 @@ public class MemberStructureController extends BaseController { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - startPage(); // 查询当前会员所有子点位信息 List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); - return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + return AjaxResult.success(cuMemberThreeFrameworkVOS); } /** From 478013dd99959f3fbc778269ceef4bd6375b5414 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 25 Sep 2025 15:44:07 +0800 Subject: [PATCH 288/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailDetailMapper.java | 11 +- .../service/ICumemberRetailDetailService.java | 4 + .../ICumemberRetailDetailServiceImpl.java | 15 +-- .../manage/MemberStructureController.java | 15 +++ .../vo/CuMemberThreeFrameworkVO.java | 127 +++++++----------- .../member/CuMemberRetailDetailMapper.xml | 119 +++++++++++----- 6 files changed, 174 insertions(+), 117 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 7bfbec2b..a4fa110f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -3,6 +3,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.apache.ibatis.annotations.Param; @@ -33,8 +34,10 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailList(@Param("settleTableName") String settleTableName, - @Param("memberCode") String memberCode, - @Param("stage") Integer stage, - @Param("stageStatus") Integer stageStatus); + CuMemberPointDetailVO getPointDetail(@Param("pointMemberCode") Long pointMemberCode); + + List getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName, + @Param("memberCode") String memberCode, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 25cc2df0..c67c74aa 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service; import cn.hutool.core.lang.tree.Tree; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import java.util.List; @@ -21,4 +22,7 @@ public interface ICumemberRetailDetailService { List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); + + CuMemberPointDetailVO getPointDetail(Long pointMemberCode); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 801f80e4..d2aa28b5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -10,6 +10,7 @@ import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -106,14 +107,12 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { - List cuMemberRetailDetailList = baseMapper.getCuMemberRetailDetailList(settleTableName, memberCode, stage, stageStatus); - if (cuMemberRetailDetailList == null || cuMemberRetailDetailList.isEmpty()) { - return null; - }else { - // 构建map - cuMemberRetailDetailList.forEach(CuMemberThreeFrameworkVO::buildMemberMaps); - } - return cuMemberRetailDetailList; + return baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + } + + @Override + public CuMemberPointDetailVO getPointDetail(Long pointMemberCode) { + return baseMapper.getPointDetail(pointMemberCode); } private Map makeNode(String id, String parentId, String label,Integer pointMember, diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index c71f8c87..db4febc3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -33,6 +33,7 @@ import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import com.hzs.system.config.IGradeServiceApi; @@ -273,6 +274,20 @@ public class MemberStructureController extends BaseController { return AjaxResult.success(cuMemberThreeFrameworkVOS); } + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/pointDetail") + public AjaxResult pointDetail(Long pointMemberCode) { + if (pointMemberCode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + if (cuMemberPointDetailVO == null) { + return null; + } + return AjaxResult.success(cuMemberPointDetailVO); + } + /** * 查询子节点 * @param memberSettlePeriodId diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java index 9db2c6de..660fed11 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -1,182 +1,159 @@ package com.hzs.member.structure.controller.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; -import java.util.Date; -import java.util.HashMap; +import java.io.Serializable; @Data @AllArgsConstructor @NoArgsConstructor -public class CuMemberThreeFrameworkVO { +@JsonInclude(JsonInclude.Include.ALWAYS) +public class CuMemberThreeFrameworkVO implements Serializable { private static final long serialVersionUID = 1L; - /** * 阶段状态(0=已完成,1=未完成) */ private Integer stageStatus; /** - * 阶段完成时间 + * 阶段 */ - private Date stageDate; + private Integer stage; + /** + * 子点位 + */ + private Integer childNode; /** * 点位1-1会员ID */ - private Long pointMember11; + private String pointMemberName11; /** - * 点位1-1会员子节点 + * 点位1-1会员ID */ - private String point11; + private String pointMemberCode11; /** * 点位1-2会员ID */ - private Long pointMember12; + private String pointMemberName12; /** - * 点位1-2会员子节点 + * 点位1-1会员ID */ - private String point12; + private String pointMemberCode12; /** * 点位2-1会员ID */ - private Long pointMember21; + private String pointMemberName21; /** - * 点位2-1会员子节点 + * 点位1-1会员ID */ - private String point21; + private String pointMemberCode21; /** * 点位2-2会员ID */ - private Long pointMember22; + private String pointMemberName22; /** - * 点位2-2会员子节点 + * 点位1-1会员ID */ - private String point22; + private String pointMemberCode22; /** * 点位2-3会员ID */ - private Long pointMember23; + private String pointMemberName23; /** - * 点位2-3会员子节点 + * 点位1-1会员ID */ - private String point23; + private String pointMemberCode23; /** * 点位2-4会员ID */ - private Long pointMember24; + private String pointMemberName24; /** - * 点位2-4会员子节点 + * 点位1-1会员ID */ - private String point24; + private String pointMemberCode24; /** * 点位3-1会员ID */ - private Long pointMember31; + private String pointMemberName31; /** - * 点位3-1会员子节点 + * 点位1-1会员ID */ - private String point31; + private String pointMemberCode31; /** * 点位3-2会员ID */ - private Long pointMember32; + private String pointMemberName32; /** - * 点位3-2会员子节点 + * 点位1-1会员ID */ - private String point32; + private String pointMemberCode32; /** * 点位3-3会员ID */ - private Long pointMember33; + private String pointMemberName33; /** - * 点位3-3会员子节点 + * 点位1-1会员ID */ - private String point33; + private String pointMemberCode33; /** * 点位3-4会员ID */ - private Long pointMember34; + private String pointMemberName34; /** - * 点位3-4会员子节点 + * 点位1-1会员ID */ - private String point34; + private String pointMemberCode34; /** * 点位3-5会员ID */ - private Long pointMember35; + private String pointMemberName35; /** - * 点位3-5会员子节点 + * 点位1-1会员ID */ - private String point35; + private String pointMemberCode35; /** * 点位3-6会员ID */ - private Long pointMember36; + private String pointMemberName36; /** - * 点位3-6会员子节点 + * 点位1-1会员ID */ - private String point36; + private String pointMemberCode36; /** * 点位3-7会员ID */ - private Long pointMember37; + private String pointMemberName37; /** - * 点位3-7会员子节点 + * 点位1-1会员ID */ - private String point37; + private String pointMemberCode37; /** * 点位3-8会员ID */ - private Long pointMember38; + private String pointMemberName38; /** - * 点位3-8会员子节点 + * 点位1-1会员ID */ - private String point38; - - @TableField(exist = false) - HashMap memberMaps = new HashMap<>(14); - - public void buildMemberMaps() { - memberMaps.clear(); - - putIntoMap(point11, pointMember11); - putIntoMap(point12, pointMember12); - putIntoMap(point21, pointMember21); - putIntoMap(point22, pointMember22); - putIntoMap(point23, pointMember23); - putIntoMap(point24, pointMember24); - putIntoMap(point31, pointMember31); - putIntoMap(point32, pointMember32); - putIntoMap(point33, pointMember33); - putIntoMap(point34, pointMember34); - putIntoMap(point35, pointMember35); - putIntoMap(point36, pointMember36); - putIntoMap(point37, pointMember37); - putIntoMap(point38, pointMember38); - } - private void putIntoMap(String key, Long value) { - memberMaps.put(key != null ? key : "", value); - } + private String pointMemberCode38; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index c3e7441d..3f542e8d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,41 +62,98 @@ and cud.STAGE_STATUS = #{stageStatus} - + From 8ee826e7f4127e138dac47901c2521864999fc62 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 09:39:54 +0800 Subject: [PATCH 289/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberController.java | 48 +++ .../controller/manage/CuMemberController.java | 45 +++ .../mapper/CuMemberRetailDetailMapper.java | 7 +- .../base/mapper/CuMemberRetailMapper.java | 26 ++ .../base/service/ICuMemberRetailService.java | 23 ++ .../service/ICumemberRetailDetailService.java | 2 +- .../impl/CuMemberRetailServiceImpl.java | 38 ++ .../ICumemberRetailDetailServiceImpl.java | 20 +- .../com/hzs/member/base/vo/memberPointVO.java | 39 ++ .../api/ApiMemberStructureController.java | 24 +- .../manage/MemberStructureController.java | 16 +- .../controller/vo/CuMemberPointDetailVO.java | 8 + .../vo/CuMemberThreeFrameworkVO.java | 190 +++++++--- .../member/base/CuMemberRetailMapper.xml | 105 ++++++ .../member/CuMemberRetailDetailMapper.xml | 106 +----- .../hzs/common/core/enums/EBonusStage.java | 12 + .../common/core/enums/EBonusStageStatus.java | 12 + .../common/core/enums/EBonusStageType.java | 11 + .../common/core/enums/EOperationBusiness.java | 2 + .../common/core/enums/EOperationModule.java | 6 + .../domain/member/base/CuMemberRetail.java | 339 ++++++++++++++++++ .../src/test/java/com/CodeGenerator.java | 2 +- 22 files changed, 934 insertions(+), 147 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java create mode 100644 bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index e566f0be..a81356c8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -2,9 +2,11 @@ package com.hzs.member.base.controller.api; import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.annotation.RepeatSubmitSimple; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; @@ -18,13 +20,17 @@ import com.hzs.common.core.utils.uuid.IdUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberChangeLog; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.param.ForgetPasswordParam; import com.hzs.member.base.param.MemberDataParam; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.IMemberInfoService; import com.hzs.common.core.utils.UploadFileUtil; @@ -39,6 +45,8 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.TimeUnit; @@ -56,6 +64,11 @@ public class ApiMemberController extends BaseController { private ICuMemberService iCuMemberService; @Autowired private IApiAliSmsService iApiAliSmsService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; + @Autowired private RedisService redisService; @@ -427,4 +440,39 @@ public class ApiMemberController extends BaseController { .uuid(uuid) .build()); } + /** + * + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint() { + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + log.info("会员结算表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + List list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId); + if (CollectionUtil.isEmpty(list)) { + return null; + } + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + startPage(); + return AjaxResult.success(getDataTable(list)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index 58063571..dc3881f7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -9,6 +9,7 @@ import com.hzs.common.core.annotation.ColumnAuthority; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.EnumsPrefixConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.VertexConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -19,16 +20,20 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberRetail; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.dto.LoginMember; import com.hzs.member.base.dto.MemberBusinessTemplate; import com.hzs.member.base.param.*; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.vo.*; import com.hzs.member.login.service.IMemberLoginService; @@ -42,6 +47,7 @@ import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IMenuColumnServiceApi; import com.hzs.system.sys.IUserServiceApi; import com.hzs.system.sys.dto.UserAuthorityDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -53,6 +59,7 @@ import java.nio.charset.StandardCharsets; import java.util.*; import java.util.stream.Collectors; +@Slf4j @RequestMapping("/manager/member") @RestController public class CuMemberController extends BaseController { @@ -65,6 +72,10 @@ public class CuMemberController extends BaseController { private MemberTokenService memberTokenService; @Autowired private IMemberLoginService iMemberLoginService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @DubboReference IUserServiceApi iUserServiceApi; @@ -778,4 +789,38 @@ public class CuMemberController extends BaseController { return AjaxResult.success("", Base64Encoder.encode(tmpPwd.getBytes(StandardCharsets.UTF_8))); } + /** + * + * @param memberCode + * @param memberSettlePeriodId + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId) { + if (memberCode == null || memberSettlePeriodId == null) { + log.error("参数错误{}{}",memberCode, memberSettlePeriodId); + return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + log.info("会员结算表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前会员结算表不存在",settleTableName); + } + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode); + if (CollectionUtil.isEmpty(list)) { + return null; + } + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + startPage(); + return AjaxResult.success(getDataTable(list)); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index a4fa110f..724a4730 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -34,10 +34,15 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode, @Param("stage") Integer stage, @Param("stageStatus") Integer stageStatus); + + + CuMemberPointDetailVO getPointDetailByUserId(@Param("userId") Long userId, + @Param("stage") Integer stage, + @Param("point") Integer point, + @Param("settleTableName") String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java new file mode 100644 index 00000000..453672e1 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java @@ -0,0 +1,26 @@ +package com.hzs.member.base.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.vo.memberPointVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * Mapper 接口 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface CuMemberRetailMapper extends BaseMapper { + + Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); + + List getMemberPointByMemberCode(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode); + + List getMemberPointByUserId(@Param("settleTableName") String settleTableName, @Param("userId") Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java new file mode 100644 index 00000000..510dc8d1 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java @@ -0,0 +1,23 @@ +package com.hzs.member.base.service; + + +import com.hzs.member.base.vo.memberPointVO; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface ICuMemberRetailService{ + + Integer getFindCuMemberRetailDetail(String settleTableName); + + List getMemberPointByMemberCode(String settleTableName, String memberCode); + + List getMemberPointByUserId(String settleTableName, Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index c67c74aa..94be8633 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -23,6 +23,6 @@ public interface ICumemberRetailDetailService { List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); - CuMemberPointDetailVO getPointDetail(Long pointMemberCode); + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java new file mode 100644 index 00000000..f2c3ac9a --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java @@ -0,0 +1,38 @@ +package com.hzs.member.base.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.mapper.CuMemberRetailMapper; +import com.hzs.member.base.service.ICuMemberRetailService; +import com.hzs.member.base.vo.memberPointVO; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +@Service +public class CuMemberRetailServiceImpl extends ServiceImpl implements ICuMemberRetailService { + + @Override + public Integer getFindCuMemberRetailDetail(String settleTableName) { + return baseMapper.getFindCumemberRetailDetail(settleTableName); + } + + @Override + public List getMemberPointByMemberCode(String settleTableName, String memberCode) { + return baseMapper.getMemberPointByMemberCode(settleTableName,memberCode); + } + + @Override + public List getMemberPointByUserId(String settleTableName, Long userId) { + return baseMapper.getMemberPointByUserId(settleTableName,userId); + } +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index d2aa28b5..040293a9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -3,6 +3,9 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.lang.tree.Tree; import cn.hutool.core.lang.tree.TreeUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; +import com.hzs.common.core.enums.EBonusStageType; import com.hzs.common.core.enums.EMemberChildNodeType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.base.CuMember; @@ -24,6 +27,8 @@ import java.util.stream.Stream; public class ICumemberRetailDetailServiceImpl extends ServiceImpl implements ICumemberRetailDetailService { @Autowired private ICuMemberService iCuMemberService; + @Autowired + private ICumemberRetailDetailService iCumemberRetailDetailService; @Override public List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName) { return baseMapper.getChildList(memberCode,stage,stageStatus,settleTableName); @@ -107,14 +112,23 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { - return baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + List cuMemberRetailDetailDTOList = baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + cuMemberRetailDetailDTOList.forEach(item -> { + item.setPointTypeLabel(EBonusStageType.getEBonusStageTypeByValue(item.getPointType()).getLabel()); + item.setStageLabel(EBonusStage.getEBonusStageByValue(item.getStage()).getLabel()); + item.setStageStatusLabel(EBonusStageStatus.getEBonusStageStatusLabel(item.getStageStatus()).getLabel()); + }); + return cuMemberRetailDetailDTOList; } @Override - public CuMemberPointDetailVO getPointDetail(Long pointMemberCode) { - return baseMapper.getPointDetail(pointMemberCode); + public CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName) { + CuMemberPointDetailVO pointDetailByUserId = baseMapper.getPointDetailByUserId(userId, stage, point, settleTableName); + pointDetailByUserId.setMemberName(pointDetailByUserId.getMemberName() + "-" + point); + return pointDetailByUserId; } + private Map makeNode(String id, String parentId, String label,Integer pointMember, Long memberId, Map memberMap) { Map map = new HashMap<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java new file mode 100644 index 00000000..676f4e52 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/memberPointVO.java @@ -0,0 +1,39 @@ +package com.hzs.member.base.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class memberPointVO { + /** + * 会员编号 + */ + private String memberCode; + /** + * 会员姓名 + */ + private String memberName; + /** + * 子点位总数 + */ + private Integer pointCount; + /** + * 待激活点位数 + */ + private Integer waitPointCount; + /** + * 复购业绩余额 + */ + private Long repPvBalance; + /** + * 期数 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date memberSettlePeriod; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 06f097b3..e002886d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -157,12 +157,30 @@ public class ApiMemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/pointDetail") - public AjaxResult pointDetail(Long pointMemberCode) { - if (pointMemberCode == null) { + public AjaxResult pointDetail(Integer stage,Integer point) { + if (stage == null || point == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } - CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(userId,stage,point,settleTableName); if (cuMemberPointDetailVO == null) { return null; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index db4febc3..51a3b22c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -276,12 +276,22 @@ public class MemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/pointDetail") - public AjaxResult pointDetail(Long pointMemberCode) { - if (pointMemberCode == null) { + public AjaxResult pointDetail(Long pkMember,Integer stage,Integer point,Long memberSettlePeriodId) { + if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } - CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,stage,point,settleTableName); if (cuMemberPointDetailVO == null) { return null; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java index fbc5864b..68982f52 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java @@ -1,10 +1,13 @@ package com.hzs.member.structure.controller.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.Date; + @Data @AllArgsConstructor @NoArgsConstructor @@ -26,4 +29,9 @@ public class CuMemberPointDetailVO { * 隶属体系 */ private String vertexName; + /** + * 点位创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java index 660fed11..fa0d217b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -1,11 +1,14 @@ package com.hzs.member.structure.controller.vo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.util.Date; @Data @AllArgsConstructor @@ -14,146 +17,237 @@ import java.io.Serializable; public class CuMemberThreeFrameworkVO implements Serializable { private static final long serialVersionUID = 1L; + + /** + * 会员ID + */ + private Long pkMember; + + /** + * 会员子节点 + */ + private Integer childNode; + + /** + * 推荐人 + */ + private Long pkParent; + + /** + * 三个阶段(1、2、3) + */ + private Integer stage; + /** + * 三阶段实际值 + */ + private String stageLabel; + /** * 阶段状态(0=已完成,1=未完成) */ private Integer stageStatus; + /** + * 阶段完成实际值 + */ + private String stageStatusLabel; /** - * 阶段 + * 阶段完成时间 */ - private Integer stage; - /** - * 子点位 - */ - private Integer childNode; + private Date stageDate; /** * 点位1-1会员ID */ - private String pointMemberName11; + private Long pointMember11; /** - * 点位1-1会员ID + * 点位1-1会员子节点 */ - private String pointMemberCode11; + private Integer point11; /** * 点位1-2会员ID */ - private String pointMemberName12; + private Long pointMember12; /** - * 点位1-1会员ID + * 点位1-2会员子节点 */ - private String pointMemberCode12; + private Integer point12; /** * 点位2-1会员ID */ - private String pointMemberName21; + private Long pointMember21; /** - * 点位1-1会员ID + * 点位2-1会员子节点 */ - private String pointMemberCode21; + private Integer point21; /** * 点位2-2会员ID */ - private String pointMemberName22; + private Long pointMember22; /** - * 点位1-1会员ID + * 点位2-2会员子节点 */ - private String pointMemberCode22; + private Integer point22; /** * 点位2-3会员ID */ - private String pointMemberName23; + private Long pointMember23; /** - * 点位1-1会员ID + * 点位2-3会员子节点 */ - private String pointMemberCode23; + private Integer point23; /** * 点位2-4会员ID */ - private String pointMemberName24; + private Long pointMember24; /** - * 点位1-1会员ID + * 点位2-4会员子节点 */ - private String pointMemberCode24; + private Integer point24; /** * 点位3-1会员ID */ - private String pointMemberName31; + private Long pointMember31; /** - * 点位1-1会员ID + * 点位3-1会员子节点 */ - private String pointMemberCode31; + private Integer point31; /** * 点位3-2会员ID */ - private String pointMemberName32; + private Long pointMember32; /** - * 点位1-1会员ID + * 点位3-2会员子节点 */ - private String pointMemberCode32; + private Integer point32; /** * 点位3-3会员ID */ - private String pointMemberName33; + private Long pointMember33; /** - * 点位1-1会员ID + * 点位3-3会员子节点 */ - private String pointMemberCode33; + private Integer point33; /** * 点位3-4会员ID */ - private String pointMemberName34; + private Long pointMember34; /** - * 点位1-1会员ID + * 点位3-4会员子节点 */ - private String pointMemberCode34; + private Integer point34; /** * 点位3-5会员ID */ - private String pointMemberName35; + private Long pointMember35; /** - * 点位1-1会员ID + * 点位3-5会员子节点 */ - private String pointMemberCode35; + private Integer point35; /** * 点位3-6会员ID */ - private String pointMemberName36; + private Long pointMember36; /** - * 点位1-1会员ID + * 点位3-6会员子节点 */ - private String pointMemberCode36; + private Integer point36; /** * 点位3-7会员ID */ - private String pointMemberName37; + private Long pointMember37; /** - * 点位1-1会员ID + * 点位3-7会员子节点 */ - private String pointMemberCode37; + private Integer point37; /** * 点位3-8会员ID */ - private String pointMemberName38; + private Long pointMember38; /** - * 点位1-1会员ID + * 点位3-8会员子节点 */ - private String pointMemberCode38; + private Integer point38; + /** + * 点位类型(0=普通,1=赠送点位) + */ + private Integer pointType; + /** + * 点位类型实际值 + */ + private String pointTypeLabel; + + /** + * 赠点数量(三阶段走完赠送几个点位) + */ + private Integer pointGift; + + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; + + /** + * 第一层会员ID + */ + private Long pointMemberFirst; + /** + * 第一层会员子节点 + */ + private Integer pointFirst; + + /** + * 第二层会员ID + */ + private Long pointMemberSecond; + /** + * 第二层会员子节点 + */ + private Integer pointSecond; + + /** + * 第三层会员ID + */ + private Long pointMemberThird; + /** + * 第三层会员子节点 + */ + private Integer pointThird; + + /** + * 三阶段1层奖金次数 + */ + private Integer thirdBonus1; + + /** + * 三阶段2层奖金次数 + */ + private Integer thirdBonus2; + + /** + * 三阶段3层奖金次数 + */ + private Integer thirdBonus3; + + /** + * 更新标记(不为null则需要入库) + */ + private Integer updateBool; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml new file mode 100644 index 00000000..20de4174 --- /dev/null +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PK_COUNTRY, + PK_MEMBER, PK_PARENT, MEMBER_CODE, MEMBER_NAME, CUSTOMER_TYPE, PHONE, PK_GRADE, PK_AWARDS, PK_SHARE_AWARDS, ENABLE_STATUS, ACCOUNT_STATUS, PAY_STATUS, PAY_TIME, CATEGORY, PURCHASE_STATUS, INCOME_STATUS, PK_TEAM_CODE, PK_CENTER_CODE, PK_VERTEX, PK_SETTLE_COUNTRY, IS_REAL_NAME, SYSTEM_TYPE, PK_RATE, NEW_CONSUME_PV, CONSUME_PV, MONTH_CONSUME_PV, NEW_CONSUME_AMOUNT, CONSUME_AMOUNT, MONTH_CONSUME_AMOUNT, TEAM_NEW_PV, TEAM_CONSUME_PV, TEAM_MONTH_PV, TEAM_NEW_AMOUNT, TEAM_CONSUME_AMOUNT, TEAM_MONTH_AMOUNT, RECOMMEND_NUM, TEAM_NUM, BIG_TEAM_PV, SMALL_TEAM_PV, REG_CONSUME_NEW_AMOUNT, REG_CONSUME_NEW_PV, REG_TEAM_NEW_AMOUNT, REG_TEAM_NEW_PV, REP_CONSUME_NEW_AMOUNT, REP_CONSUME_NEW_PV, REP_TEAM_NEW_AMOUNT, REP_TEAM_NEW_PV, POINT_COUNT, WAIT_POINT_COUNT, REP_PV_BALANCE, GIFT_ONE, GIFT_TWO + + + + + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 3f542e8d..f7897a31 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -62,96 +62,10 @@ and cud.STAGE_STATUS = #{stageStatus} - + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java index ae52b1a0..c502c464 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStage.java @@ -34,4 +34,16 @@ public enum EBonusStage { */ private final String label; + public static EBonusStage getEBonusStageByValue(Integer value) { + if (null == value) { + return null; + } + for (EBonusStage eBonusStage : EBonusStage.values()) { + if (eBonusStage.getValue() == value) { + return eBonusStage; + } + } + return null; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java index 2e3d4406..08bdfed5 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageStatus.java @@ -30,4 +30,16 @@ public enum EBonusStageStatus { */ private final String label; + public static EBonusStageStatus getEBonusStageStatusLabel(Integer value) { + if (null == value) { + return null; + } + for (EBonusStageStatus eBonusStageStatus : EBonusStageStatus.values()) { + if (eBonusStageStatus.getValue() == value) { + return eBonusStageStatus; + } + } + return null; + } + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java index 9497814c..b9c86dff 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EBonusStageType.java @@ -30,4 +30,15 @@ public enum EBonusStageType { */ private final String label; + public static EBonusStageType getEBonusStageTypeByValue(Integer value) { + if (null == value) { + return null; + } + for (EBonusStageType eBonusStageType : EBonusStageType.values()) { + if (eBonusStageType.getValue() == value) { + return eBonusStageType; + } + } + return null; + } } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index 2ea8ab27..df49c905 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -74,6 +74,8 @@ public enum EOperationBusiness { SHARE_DELETE("删除空点"), + MEMBER_POINT("会员子点信息"), + //////////////////// 架构管理 //////////////////// SCHEME_ONE("方案一"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 8bac1e44..85229246 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -40,6 +40,8 @@ public enum EOperationModule { BUSINESS_LICENSE("营业执照"), + MEMBER_POINT("会员子点信息"), + //////////////////// 架构管理 //////////////////// RESETTLE_FRAMEWORK("安置架构"), @@ -400,9 +402,13 @@ public enum EOperationModule { STATISTIC_ANALYSIS("统计分析"), MEMBER_RISK_CONTROL("K值风控设置"), + ORDER_SYNC("同步失败订单"), + MEMBER_RETAIL_CHILDNODE("会员子节点查询"), + MEMBER_RETAIL_TREE("三阶段结构"), + MEMBER_RETAIL_TREE_LIST("三阶段数据") ; diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java new file mode 100644 index 00000000..cd2be83e --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/base/CuMemberRetail.java @@ -0,0 +1,339 @@ +package com.hzs.common.domain.member.base; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author bd + * @since 2025-09-25 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("CU_MEMBER_RETAIL") +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberRetail extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 推荐人ID + */ + @TableField("PK_PARENT") + private Long pkParent; + + /** + * 会员编号 + */ + @TableField("MEMBER_CODE") + private String memberCode; + + /** + * 会员姓名 + */ + @TableField("MEMBER_NAME") + private String memberName; + + /** + * 会员类型(0.正常 1.空单 2.待激活-不用 3.已注销-不用 4.嗨粉 6.会员) + */ + @TableField("CUSTOMER_TYPE") + private Integer customerType; + + /** + * 联系方式 + */ + @TableField("PHONE") + private String phone; + + /** + * 会员等级 + */ + @TableField("PK_GRADE") + private Integer pkGrade; + + /** + * 会员奖衔 + */ + @TableField("PK_AWARDS") + private Integer pkAwards; + + /** + * 分红奖衔 + */ + @TableField("PK_SHARE_AWARDS") + private Integer pkShareAwards; + + /** + * 是否支付 + */ + @TableField("ENABLE_STATUS") + private Integer enableStatus; + + /** + * 账户状态(0=正常,1=限制登录(仅登录,无操作),2=禁止登录(不能登录),3=停止收益(计算不发),4=停算奖金(不计算奖金)) + */ + @TableField("ACCOUNT_STATUS") + private Integer accountStatus; + + /** + * 支付状态 + */ + @TableField("PAY_STATUS") + private Integer payStatus; + + /** + * 支付时间 + */ + @TableField("PAY_TIME") + private Date payTime; + + /** + * 用户类型分类(0=正常(正常 空单 嗨粉) 1=待激活(撤单死点)2=已注销(退单)) + */ + @TableField("CATEGORY") + private Integer category; + + /** + * 复购免考(0=是,1=否) + */ + @TableField("PURCHASE_STATUS") + private Integer purchaseStatus; + + /** + * 收益状态 (0=正常,1=停止收益) + */ + @TableField("INCOME_STATUS") + private Integer incomeStatus; + + /** + * 团队ID + */ + @TableField("PK_TEAM_CODE") + private Long pkTeamCode; + + /** + * 报单中心ID + */ + @TableField("PK_CENTER_CODE") + private Long pkCenterCode; + + /** + * 体系ID + */ + @TableField("PK_VERTEX") + private Long pkVertex; + + /** + * 结算国 + */ + @TableField("PK_SETTLE_COUNTRY") + private Integer pkSettleCountry; + + /** + * 是否实名认证(0=是,1=否) + */ + @TableField("IS_REAL_NAME") + private Integer isRealName; + + /** + * 系统类型(2=新零售) + */ + @TableField("SYSTEM_TYPE") + private Integer systemType; + + /** + * 汇率 + */ + @TableField("PK_RATE") + private Integer pkRate; + + /** + * 本人当天新消费pv + */ + @TableField("NEW_CONSUME_PV") + private BigDecimal newConsumePv; + + /** + * 本人累计消费pv + */ + @TableField("CONSUME_PV") + private BigDecimal consumePv; + + /** + * 本人月累计消费pv + */ + @TableField("MONTH_CONSUME_PV") + private BigDecimal monthConsumePv; + + /** + * 本人当天新消费金额 + */ + @TableField("NEW_CONSUME_AMOUNT") + private BigDecimal newConsumeAmount; + + /** + * 本人累计消费金额 + */ + @TableField("CONSUME_AMOUNT") + private BigDecimal consumeAmount; + + /** + * 本人月累计消费金额 + */ + @TableField("MONTH_CONSUME_AMOUNT") + private BigDecimal monthConsumeAmount; + + /** + * 团队当天新增消费pv + */ + @TableField("TEAM_NEW_PV") + private BigDecimal teamNewPv; + + /** + * 团队累计消费pv + */ + @TableField("TEAM_CONSUME_PV") + private BigDecimal teamConsumePv; + + /** + * 团队月累计消费pv + */ + @TableField("TEAM_MONTH_PV") + private BigDecimal teamMonthPv; + + /** + * 团队新增消费金额 + */ + @TableField("TEAM_NEW_AMOUNT") + private BigDecimal teamNewAmount; + + /** + * 团队累计消费金额 + */ + @TableField("TEAM_CONSUME_AMOUNT") + private BigDecimal teamConsumeAmount; + + /** + * 团队月累计消费金额 + */ + @TableField("TEAM_MONTH_AMOUNT") + private BigDecimal teamMonthAmount; + + /** + * 推荐人数 + */ + @TableField("RECOMMEND_NUM") + private Integer recommendNum; + + /** + * 团队人数 + */ + @TableField("TEAM_NUM") + private Integer teamNum; + + @TableField("BIG_TEAM_PV") + private BigDecimal bigTeamPv; + + @TableField("SMALL_TEAM_PV") + private BigDecimal smallTeamPv; + + /** + * 本日-个人注册(精品专区)新增金额 + */ + @TableField("REG_CONSUME_NEW_AMOUNT") + private BigDecimal regConsumeNewAmount; + + /** + * 本日-个人注册(精品专区)新增业绩 + */ + @TableField("REG_CONSUME_NEW_PV") + private BigDecimal regConsumeNewPv; + + /** + * 本日-团队注册(精品专区)新增金额 + */ + @TableField("REG_TEAM_NEW_AMOUNT") + private BigDecimal regTeamNewAmount; + + /** + * 本日-团队注册(精品专区)新增业绩 + */ + @TableField("REG_TEAM_NEW_PV") + private BigDecimal regTeamNewPv; + + /** + * 本日-个人复购(商城专区)新增金额 + */ + @TableField("REP_CONSUME_NEW_AMOUNT") + private BigDecimal repConsumeNewAmount; + + /** + * 本日-个人复购(商城专区)新增业绩 + */ + @TableField("REP_CONSUME_NEW_PV") + private BigDecimal repConsumeNewPv; + + /** + * 本日-团队复购(商城专区)新增金额 + */ + @TableField("REP_TEAM_NEW_AMOUNT") + private BigDecimal repTeamNewAmount; + + /** + * 本日-团队复购(商城专区)新增业绩 + */ + @TableField("REP_TEAM_NEW_PV") + private BigDecimal repTeamNewPv; + + /** + * 子点位总数 + */ + @TableField("POINT_COUNT") + private Integer pointCount; + + /** + * 待激活子点位数 + */ + @TableField("WAIT_POINT_COUNT") + private Integer waitPointCount; + + /** + * 复购业绩余额 + */ + @TableField("REP_PV_BALANCE") + private BigDecimal repPvBalance; + + /** + * 赠送1个点位已存在标记 + */ + @TableField("GIFT_ONE") + private Integer giftOne; + + /** + * 赠送2个点位已存在标记 + */ + @TableField("GIFT_TWO") + private Integer giftTwo; + + +} diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index 5aae5688..645a8119 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"CU_MEMBER_RETAIL_DETAIL"}; + String[] tables = {"CU_MEMBER_RETAIL"}; // 生成实体是否继承统一父类 boolean superBool = true; From 6c6696ee858a508f5f3155bd7c3e60b5813769fa Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 10:42:55 +0800 Subject: [PATCH 290/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/mapper/CuMemberMapper.java | 3 ++ .../mapper/CuMemberRetailDetailMapper.java | 9 +++--- .../member/base/service/ICuMemberService.java | 3 ++ .../service/ICumemberRetailDetailService.java | 2 +- .../service/impl/CuMemberServiceImpl.java | 6 ++++ .../ICumemberRetailDetailServiceImpl.java | 23 +++++++++++--- .../api/ApiMemberStructureController.java | 11 ++----- .../controller/dto/CuMemberDetailDTO.java | 30 +++++++++++++++++++ .../controller/dto/CuMemberPointDTO.java | 22 ++++++++++++++ .../manage/MemberStructureController.java | 6 ++-- .../controller/vo/CuMemberPointDetailVO.java | 2 ++ .../mapper/member/base/CuMemberMapper.xml | 13 ++++++++ .../member/CuMemberRetailDetailMapper.xml | 9 +----- 13 files changed, 111 insertions(+), 28 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberDetailDTO.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberPointDTO.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index e935b14c..16bdd4df 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -13,6 +13,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import org.apache.ibatis.annotations.Param; @@ -598,4 +599,6 @@ public interface CuMemberMapper extends BaseMapper { * @return */ CuMemberExt queryFansOrder(@Param("orderCode") String orderCode); + + CuMemberDetailDTO getCuMemberDetailById(@Param("pointMember") Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 724a4730..94ab3f43 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -2,6 +2,7 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -41,8 +42,8 @@ public interface CuMemberRetailDetailMapper extends BaseMapper { * @return */ Integer getMemberPhoneCount(String phone); + + CuMemberDetailDTO getCuMemberDetailById(Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java index 94be8633..779d47c1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -24,5 +24,5 @@ public interface ICumemberRetailDetailService { List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); - CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName); + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember,Integer stage, Integer point, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index fb7913c7..9fd7c590 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -52,6 +52,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.member.share.param.ShareRegisterParam; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; @@ -3248,4 +3249,9 @@ public class CuMemberServiceImpl extends ServiceImpl i wrapper.eq(CuMember::getPhone, phone); return baseMapper.selectCount(wrapper); } + + @Override + public CuMemberDetailDTO getCuMemberDetailById(Long pointMember) { + return baseMapper.getCuMemberDetailById(pointMember); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 040293a9..3b09f539 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -12,6 +12,8 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -122,10 +124,23 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index f7897a31..2611ea8d 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -79,18 +79,11 @@ curd.CHILD_NODE + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index e61a1a6c..6e1022aa 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -578,7 +578,8 @@ point_count number(8) default 0 not null, wait_point_count number(8) default 0 not null, rep_pv_balance number(17,6) default 0 not null, - gift_point number(2) default 1 not null + gift_point number(2) default 1 not null, + gift_pay_time DATE ) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java index b65d3a63..a74cb802 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java @@ -17,13 +17,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/16 17:10 - * @Classname: RedisComponent - * @PackageName: com.hzs.sale.component.load - */ @Component @Slf4j class RedisComponent { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java index 1a1746a8..d6793616 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java @@ -8,9 +8,6 @@ import java.util.List; /** * 邮费详情设置 Mapper 接口 - * - * @author hzs - * @since 2022-08-29 */ public interface BdPostageDetailMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java index 9b433b45..856460b0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java @@ -7,9 +7,6 @@ import java.util.List; /** * 邮费详情设置 服务类 - * - * @author hzs - * @since 2022-08-29 */ public interface IBdPostageDetailService extends IService { @@ -18,9 +15,6 @@ public interface IBdPostageDetailService extends IService { * * @param tranType 运费方式 * @param pkPostage 邮费模板 - * @return: BdPostageDetail - * @Author: sui q - * @Date: 2022/9/19 17:29 */ List getPostageDetail(Integer tranType, Integer pkPostage); @@ -28,9 +22,6 @@ public interface IBdPostageDetailService extends IService { * 根据运费类型查询对应的模板 * * @param tranType 运费类型 - * @return: List - * @Author: sui q - * @Date: 2022/9/19 17:02 */ List queryPostageDetail(Integer tranType); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java index fc9e5cfc..be33d282 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java @@ -9,12 +9,7 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 邮费详情设置 服务实现类 - *

- * - * @author hzs - * @since 2022-08-29 */ @Service public class BdPostageDetailServiceImpl extends ServiceImpl implements IBdPostageDetailService { diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index 6b996bf6..a5eea6b0 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -212,4 +212,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("GIFT_POINT") private Integer giftPoint; + /** + * 赠送点位填充最新时间 + */ + @TableField("GIFT_PAY_TIME") + private Date giftPayTime; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index b9e2a69e..97b019a1 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -6,8 +6,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; +import java.util.Date; import java.util.LinkedHashMap; -import java.util.List; /** * 新零售极差实体 @@ -142,4 +142,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private LinkedHashMap threeDetailMap; + /** + * 直推会员列表 + */ + private LinkedHashMap childRetailMap; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java index 7923914d..01400e6f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java @@ -12,19 +12,14 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 邮费详情设置 - *

- * - * @author hzs - * @since 2022-08-29 */ @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("BD_POSTAGE_DETAIL") @KeySequence("BD_POSTAGE_DETAIL_SEQ") -public class BdPostageDetail extends BaseEntity { +public class BdPostageDetail extends BaseEntity { private static final long serialVersionUID = 1L; @@ -32,7 +27,6 @@ public class BdPostageDetail extends BaseEntity { private Integer pkId; - /** * 首重重量 */ From a41cd10d4db9ce3db59ce7fefdababfcb8c23c6a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 26 Sep 2025 14:54:47 +0800 Subject: [PATCH 296/362] =?UTF-8?q?##=20=E8=B5=A0=E7=82=B9=E6=BF=80?= =?UTF-8?q?=E6=B4=BB=E9=98=B6=E6=AE=B5=E5=A1=AB=E5=85=85=E5=A4=84=E7=90=86?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 8 +- .../service/ICuMemberRetailDetailService.java | 4 +- .../impl/CuMemberRetailDetailServiceImpl.java | 76 +++++--- .../service/impl/BonusSettleRangeHandle.java | 54 +++++- .../hzs/bonus/constant/BonusConstants.java | 11 +- .../achieve/CuMemberRetailRangeMapper.xml | 170 ++++++++++++------ .../bonus/achieve/CuMemberTreeMapper.xml | 3 +- .../sale/component/load/RedisComponent.java | 7 - .../postage/mapper/BdPostageDetailMapper.java | 3 - .../service/IBdPostageDetailService.java | 9 - .../impl/BdPostageDetailServiceImpl.java | 5 - .../member/achieve/CuMemberRetailRange.java | 6 + .../achieve/ext/CuMemberRetailRangeExt.java | 7 +- .../domain/sale/postage/BdPostageDetail.java | 8 +- 14 files changed, 247 insertions(+), 124 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 13cca34f..7f065cd8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -128,6 +128,12 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); - void initMemberRetailSecondRange(@Param("tableName") String tableName, @Param("member") CuMemberExt memberList); + + /** + * 查询直推会员数据 + */ + List listChildRetail(@Param("rangeTableName") String rangeTableName, + @Param("pkParentList") List pkParentList); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java index 81d13adc..5a079e9c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -29,7 +29,7 @@ public interface ICuMemberRetailDetailService extends IService memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage); + void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 5602c43d..87a96399 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.bonus.achieve.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; +import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.MagicNumberConstants; @@ -12,6 +13,7 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.*; /** @@ -20,6 +22,9 @@ import java.util.*; @Service public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + @Resource + private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + @Autowired private CuMemberBonusSettle cuMemberBonusSettle; @@ -35,32 +40,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl { // 查询明细数据(指定阶段,未完成的) List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null); - if (CollectionUtil.isNotEmpty(tmpList)) { - // 明细数据放到对应的会员数据中 - for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); - if (null == cuMemberRetailRangeExt.getOneDetailMap()) { - cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); - } - if (null == cuMemberRetailRangeExt.getTwoDetailMap()) { - cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>()); - } - if (null == cuMemberRetailRangeExt.getThreeDetailMap()) { - cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>()); - } - // 使用有序map,为了后续业务处理方便 - if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { - // 阶段一点位列表 - cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); - } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { - // 阶段二点位列表 - cuMemberRetailRangeExt.getTwoDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); - } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { - // 阶段三点位列表 - cuMemberRetailRangeExt.getThreeDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); - } - } - } + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList); }); } @@ -69,6 +49,13 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl queryMemberList, EBonusStage eBonusStage) { // 查询明细数据(指定阶段,未完成的) List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpDetailList); + } + + /** + * 封装三个明细map + */ + private void packageThreeDetailMap(Map memberRangeExtMap, EBonusStage eBonusStage, List tmpDetailList) { if (CollectionUtil.isNotEmpty(tmpDetailList)) { // 明细数据放到对应的会员数据中 for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { @@ -99,9 +86,42 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl memberRangeExtMap, - List queryMemberList, EBonusStage eBonusStage) { + public void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage) { + if (null != sourceMember.getChildRetailMap()) { + // 直推会员列表存在,则直接结束 + return; + } + sourceMember.setChildRetailMap(new LinkedHashMap<>()); + // 会员直推数据 + List retailRangeList = cuMemberRetailRangeMapper.listChildRetail(rangeTableName, Collections.singletonList(sourceMember.getPkParent())); + if (CollectionUtil.isNotEmpty(retailRangeList)) { + // 直推数据列表 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + + List queryMemberList = new ArrayList<>(); + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeList) { + CuMemberRetailRangeExt tmpMemberRetailRange = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); + if (null != tmpMemberRetailRange) { + // 直推会员已经存在 + childRetailMap.put(tmpMemberRetailRange.getPayTime(), tmpMemberRetailRange); + } else { + // 直推会员不存在 + childRetailMap.put(cuMemberRetailRangeExt.getPayTime(), cuMemberRetailRangeExt); + memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); + queryMemberList.add(cuMemberRetailRangeExt.getPkMember()); + } + } + if (queryMemberList.size() > 0) { + List> pkMemberList = cuMemberBonusSettle.handleCutList(queryMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + pkMemberList.forEach(tmpIdList -> { + // 查询明细数据(指定阶段,未完成的) + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList); + }); + } + } } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 2f9104bd..ea050024 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1026,6 +1026,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + // 处理阶段点位填充(一阶段) this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); @@ -1052,6 +1053,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { .build(); detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + // 处理阶段点位填充(一阶段赠点) this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); @@ -1084,6 +1086,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return returnRetailDetailList; } + // 处理阶段点位填充 this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, memberRangeExtMap, null, settleDate, rangeTableName, rangeDetailTableName, eBonusStage, sourceMember, memberRetailDetail, returnRetailDetailList); @@ -1136,7 +1139,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 在第一层找到并填充点位,就开始下一个点位的处理 break; } - // 推荐人第二层点位处理 forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); @@ -1144,7 +1146,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 在第二层找到并填充点位,就开始下一个点位的处理 break; } - // 推荐人第三层点位处理 forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); @@ -1154,8 +1155,55 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } } else { - // TODO 赠送点位处理,赠送点位给自己直推会员轮流布点 + // 赠送点位处理,赠送点位给自己直推会员轮流布点 + iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, + sourceMember, eBonusStage); + // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + if (childRetailMap.size() > 0) { + // 获取最后一条数据 key + Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); + // 获取最新的会员注册时间,如果没有则设置一个初始化时间 + Date giftPayTime = sourceMember.getGiftPayTime(); + if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { + giftPayTime = BonusConstants.GIFT_PAY_TIME; + } + for (Date keyDate : childRetailMap.keySet()) { + if (keyDate.compareTo(giftPayTime) > 0) { + // 当前会员注册比之前的要晚,则顺序进行填充 + giftPayTime = keyDate; + + // 需要填充的直推会员 + CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); + + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } + } + } + sourceMember.setGiftPayTime(giftPayTime); + } } if (CollectionUtil.isNotEmpty(bonusStageDataList)) { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java index cb393e6f..5aaa477a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -1,14 +1,12 @@ package com.hzs.bonus.constant; import cn.hutool.core.util.ReflectUtil; +import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import java.lang.reflect.Field; import java.math.BigDecimal; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; public class BonusConstants { @@ -46,6 +44,11 @@ public class BonusConstants { */ public static final BigDecimal THREE_BONUS_38 = new BigDecimal("155"); + /** + * 赠点初始时间 + */ + public static final Date GIFT_PAY_TIME = DateUtils.parseStringToDateTime("2025-09-01 00:00:00"); + public static final String POINT_11 = "11"; public static final String POINT_12 = "12"; public static final String POINT_21 = "21"; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index eb220f7b..89c84f4a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -54,6 +54,7 @@ + @@ -99,7 +100,8 @@ point_count = 0, wait_point_count = 0, rep_pv_balance = 0, - gift_point = 0 + gift_point = 0, + gift_pay_time = null @@ -112,7 +114,7 @@ team_consume_amount, team_month_amount, recommend_num, team_num, big_team_pv, small_team_pv, point_count, wait_point_count, rep_pv_balance, - gift_point + gift_point, gift_pay_time from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) @@ -127,7 +129,7 @@ a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance, - a.gift_point = b.gift_point + a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time ,a.month_consume_pv = b.month_consume_pv ,a.month_consume_amount = b.month_consume_amount @@ -347,7 +349,7 @@ #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv, #{item.pointCount} point_count, #{item.waitPointCount} wait_point_count, #{item.repPvBalance} rep_pv_balance, - #{item.giftPoint} gift_point + #{item.giftPoint} gift_point, #{item.giftPayTime, jdbcType=TIMESTAMP} gift_pay_time from dual ) b @@ -364,7 +366,7 @@ a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv, a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance, - a.gift_point = b.gift_point + a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time @@ -595,46 +597,43 @@ - INSERT INTO ${tableName} ( - "PK_MEMBER", - "PK_PARENT", - "PK_GRADE", - "PK_AWARDS", - "ALL_CONSUME_NEW_AMOUNT", - "ALL_CONSUME_NEW_PV", - "ALL_TEAM_NEW_AMOUNT", - "ALL_TEAM_NEW_PV", - "REG_CONSUME_NEW_AMOUNT", - "REG_CONSUME_NEW_PV", - "REG_TEAM_NEW_AMOUNT", - "REG_TEAM_NEW_PV", - "REP_CONSUME_NEW_AMOUNT", - "REP_CONSUME_NEW_PV", - "REP_TEAM_NEW_AMOUNT", - "REP_TEAM_NEW_PV" - ) - SELECT - #{member.pkId}, - #{member.pkParent}, - #{member.pkSettleGrade}, - #{member.pkAwards}, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - FROM DUAL - WHERE NOT EXISTS ( - SELECT 1 - FROM ${tableName} - WHERE "PK_MEMBER" = #{member.pkId} + INSERT INTO ${tableName} ("PK_MEMBER", + "PK_PARENT", + "PK_GRADE", + "PK_AWARDS", + "ALL_CONSUME_NEW_AMOUNT", + "ALL_CONSUME_NEW_PV", + "ALL_TEAM_NEW_AMOUNT", + "ALL_TEAM_NEW_PV", + "REG_CONSUME_NEW_AMOUNT", + "REG_CONSUME_NEW_PV", + "REG_TEAM_NEW_AMOUNT", + "REG_TEAM_NEW_PV", + "REP_CONSUME_NEW_AMOUNT", + "REP_CONSUME_NEW_PV", + "REP_TEAM_NEW_AMOUNT", + "REP_TEAM_NEW_PV") + SELECT #{member.pkId}, + #{member.pkParent}, + #{member.pkSettleGrade}, + #{member.pkAwards}, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + FROM DUAL + WHERE NOT EXISTS( + SELECT 1 + FROM ${tableName} + WHERE "PK_MEMBER" = #{member.pkId} ) @@ -683,6 +682,7 @@ wait_point_count, rep_pv_balance, gift_point, + gift_pay_time, bw.awards_value, bw.awards_name from ( @@ -888,15 +888,79 @@ from ${tableName} where pk_parent = #{pkParent} + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index e61a1a6c..6e1022aa 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -578,7 +578,8 @@ point_count number(8) default 0 not null, wait_point_count number(8) default 0 not null, rep_pv_balance number(17,6) default 0 not null, - gift_point number(2) default 1 not null + gift_point number(2) default 1 not null, + gift_pay_time DATE ) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java index b65d3a63..a74cb802 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java @@ -17,13 +17,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/16 17:10 - * @Classname: RedisComponent - * @PackageName: com.hzs.sale.component.load - */ @Component @Slf4j class RedisComponent { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java index 1a1746a8..d6793616 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java @@ -8,9 +8,6 @@ import java.util.List; /** * 邮费详情设置 Mapper 接口 - * - * @author hzs - * @since 2022-08-29 */ public interface BdPostageDetailMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java index 9b433b45..856460b0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java @@ -7,9 +7,6 @@ import java.util.List; /** * 邮费详情设置 服务类 - * - * @author hzs - * @since 2022-08-29 */ public interface IBdPostageDetailService extends IService { @@ -18,9 +15,6 @@ public interface IBdPostageDetailService extends IService { * * @param tranType 运费方式 * @param pkPostage 邮费模板 - * @return: BdPostageDetail - * @Author: sui q - * @Date: 2022/9/19 17:29 */ List getPostageDetail(Integer tranType, Integer pkPostage); @@ -28,9 +22,6 @@ public interface IBdPostageDetailService extends IService { * 根据运费类型查询对应的模板 * * @param tranType 运费类型 - * @return: List - * @Author: sui q - * @Date: 2022/9/19 17:02 */ List queryPostageDetail(Integer tranType); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java index fc9e5cfc..be33d282 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java @@ -9,12 +9,7 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 邮费详情设置 服务实现类 - *

- * - * @author hzs - * @since 2022-08-29 */ @Service public class BdPostageDetailServiceImpl extends ServiceImpl implements IBdPostageDetailService { diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java index 6b996bf6..a5eea6b0 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/CuMemberRetailRange.java @@ -212,4 +212,10 @@ public class CuMemberRetailRange extends BaseEntity { @TableField("GIFT_POINT") private Integer giftPoint; + /** + * 赠送点位填充最新时间 + */ + @TableField("GIFT_PAY_TIME") + private Date giftPayTime; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index b9e2a69e..97b019a1 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -6,8 +6,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.math.BigDecimal; +import java.util.Date; import java.util.LinkedHashMap; -import java.util.List; /** * 新零售极差实体 @@ -142,4 +142,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private LinkedHashMap threeDetailMap; + /** + * 直推会员列表 + */ + private LinkedHashMap childRetailMap; + } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java index 7923914d..01400e6f 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/postage/BdPostageDetail.java @@ -12,19 +12,14 @@ import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; /** - *

* 邮费详情设置 - *

- * - * @author hzs - * @since 2022-08-29 */ @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("BD_POSTAGE_DETAIL") @KeySequence("BD_POSTAGE_DETAIL_SEQ") -public class BdPostageDetail extends BaseEntity { +public class BdPostageDetail extends BaseEntity { private static final long serialVersionUID = 1L; @@ -32,7 +27,6 @@ public class BdPostageDetail extends BaseEntity { private Integer pkId; - /** * 首重重量 */ From a99c27a3ff282ab1fc67185ded130cbb6a8b935f Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 26 Sep 2025 15:19:55 +0800 Subject: [PATCH 297/362] =?UTF-8?q?##=20=E8=B5=A0=E7=82=B9=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E7=9B=B4=E6=8E=A8=E4=B8=8B=E6=B2=A1=E6=9C=89=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E5=A1=AB=E5=85=85=E7=9A=84=EF=BC=8C=E5=88=99=E6=8C=89?= =?UTF-8?q?=E8=A1=80=E7=BC=98=E4=B8=8A=E9=80=BB=E8=BE=91=E8=B5=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 107 +++++++++--------- 1 file changed, 56 insertions(+), 51 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index ea050024..20a90d34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1106,7 +1106,62 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 阶段奖金处理列表 List bonusStageDataList = new ArrayList<>(); - if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()) { + boolean giftBool = false; + if (EBonusStageType.GIFT.getValue() == newRetailDetail.getPointType()) { + // 赠送点位处理,赠送点位给自己直推会员轮流布点 + iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, + sourceMember, eBonusStage); + // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + if (childRetailMap.size() > 0) { + // 获取最后一条数据 key + Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); + // 获取最新的会员注册时间,如果没有则设置一个初始化时间 + Date giftPayTime = sourceMember.getGiftPayTime(); + if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { + giftPayTime = BonusConstants.GIFT_PAY_TIME; + } + + for (Date keyDate : childRetailMap.keySet()) { + if (keyDate.compareTo(giftPayTime) > 0) { + // 当前会员注册比之前的要晚,则顺序进行填充 + giftPayTime = keyDate; + // 需要填充的直推会员 + CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); + + // 推荐人第一层点位处理 + giftBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第二层点位处理 + giftBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第三层点位处理 + giftBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } + } + } + if (giftBool) { + sourceMember.setGiftPayTime(giftPayTime); + } + } + } + + if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType() + || !giftBool) { // 普通点位处理 // 推荐人 Long pkParent = sourceMember.getPkParent(); @@ -1154,56 +1209,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } } - } else { - // 赠送点位处理,赠送点位给自己直推会员轮流布点 - iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, - sourceMember, eBonusStage); - // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 - LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); - if (childRetailMap.size() > 0) { - // 获取最后一条数据 key - Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); - // 获取最新的会员注册时间,如果没有则设置一个初始化时间 - Date giftPayTime = sourceMember.getGiftPayTime(); - if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { - giftPayTime = BonusConstants.GIFT_PAY_TIME; - } - - for (Date keyDate : childRetailMap.keySet()) { - if (keyDate.compareTo(giftPayTime) > 0) { - // 当前会员注册比之前的要晚,则顺序进行填充 - giftPayTime = keyDate; - - // 需要填充的直推会员 - CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); - // 推荐人一阶段子点位列表 - LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); - - // 推荐人第一层点位处理 - boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第一层找到并填充点位,就开始下一个点位的处理 - break; - } - // 推荐人第二层点位处理 - forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第二层找到并填充点位,就开始下一个点位的处理 - break; - } - // 推荐人第三层点位处理 - forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第三层找到并填充点位,就开始下一个点位的处理 - break; - } - } - } - sourceMember.setGiftPayTime(giftPayTime); - } } if (CollectionUtil.isNotEmpty(bonusStageDataList)) { From 1fea92b74b6fd092300e7b8a975e3d885049e12d Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 26 Sep 2025 15:19:55 +0800 Subject: [PATCH 298/362] =?UTF-8?q?##=20=E8=B5=A0=E7=82=B9=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E7=9B=B4=E6=8E=A8=E4=B8=8B=E6=B2=A1=E6=9C=89=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E5=A1=AB=E5=85=85=E7=9A=84=EF=BC=8C=E5=88=99=E6=8C=89?= =?UTF-8?q?=E8=A1=80=E7=BC=98=E4=B8=8A=E9=80=BB=E8=BE=91=E8=B5=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 107 +++++++++--------- 1 file changed, 56 insertions(+), 51 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index ea050024..20a90d34 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1106,7 +1106,62 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 阶段奖金处理列表 List bonusStageDataList = new ArrayList<>(); - if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()) { + boolean giftBool = false; + if (EBonusStageType.GIFT.getValue() == newRetailDetail.getPointType()) { + // 赠送点位处理,赠送点位给自己直推会员轮流布点 + iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, + sourceMember, eBonusStage); + // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + if (childRetailMap.size() > 0) { + // 获取最后一条数据 key + Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); + // 获取最新的会员注册时间,如果没有则设置一个初始化时间 + Date giftPayTime = sourceMember.getGiftPayTime(); + if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { + giftPayTime = BonusConstants.GIFT_PAY_TIME; + } + + for (Date keyDate : childRetailMap.keySet()) { + if (keyDate.compareTo(giftPayTime) > 0) { + // 当前会员注册比之前的要晚,则顺序进行填充 + giftPayTime = keyDate; + // 需要填充的直推会员 + CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); + + // 推荐人第一层点位处理 + giftBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第二层点位处理 + giftBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第三层点位处理 + giftBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } + } + } + if (giftBool) { + sourceMember.setGiftPayTime(giftPayTime); + } + } + } + + if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType() + || !giftBool) { // 普通点位处理 // 推荐人 Long pkParent = sourceMember.getPkParent(); @@ -1154,56 +1209,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { break; } } - } else { - // 赠送点位处理,赠送点位给自己直推会员轮流布点 - iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, - sourceMember, eBonusStage); - // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 - LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); - if (childRetailMap.size() > 0) { - // 获取最后一条数据 key - Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); - // 获取最新的会员注册时间,如果没有则设置一个初始化时间 - Date giftPayTime = sourceMember.getGiftPayTime(); - if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { - giftPayTime = BonusConstants.GIFT_PAY_TIME; - } - - for (Date keyDate : childRetailMap.keySet()) { - if (keyDate.compareTo(giftPayTime) > 0) { - // 当前会员注册比之前的要晚,则顺序进行填充 - giftPayTime = keyDate; - - // 需要填充的直推会员 - CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); - // 推荐人一阶段子点位列表 - LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); - - // 推荐人第一层点位处理 - boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第一层找到并填充点位,就开始下一个点位的处理 - break; - } - // 推荐人第二层点位处理 - forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第二层找到并填充点位,就开始下一个点位的处理 - break; - } - // 推荐人第三层点位处理 - forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, - memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); - if (forBool) { - // 在第三层找到并填充点位,就开始下一个点位的处理 - break; - } - } - } - sourceMember.setGiftPayTime(giftPayTime); - } } if (CollectionUtil.isNotEmpty(bonusStageDataList)) { From 2fe1c41a921137250255c10eb9800faaaf7ca095 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 15:41:09 +0800 Subject: [PATCH 299/362] =?UTF-8?q?##=20=E5=88=86=E9=A1=B5=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E5=80=BC=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/api/ApiMemberController.java | 11 ++++------- .../base/controller/manage/CuMemberController.java | 8 ++++---- .../controller/api/ApiMemberStructureController.java | 11 ++++++----- .../controller/manage/MemberStructureController.java | 9 +++++---- 4 files changed, 19 insertions(+), 20 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index a81356c8..827dd5be 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -446,11 +446,11 @@ public class ApiMemberController extends BaseController { */ @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) @GetMapping("/member-point") - public AjaxResult memberPoint() { + public TableDataInfo memberPoint() { Long userId = SecurityUtils.getUserId(); if (userId == null) { log.error("用户登录信息错误"); - return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + return null; } // 获取当前时间 -1 天 String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); @@ -463,16 +463,13 @@ public class ApiMemberController extends BaseController { Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("数据查询错误,请联系客服处理"); - } - List list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId); - if (CollectionUtil.isEmpty(list)) { return null; } + List list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId); list.forEach(item -> { item.setMemberSettlePeriod(csPeriod.getSettleDate()); }); startPage(); - return AjaxResult.success(getDataTable(list)); + return getDataTable(list); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index ccf23e87..345a27f8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -797,10 +797,10 @@ public class CuMemberController extends BaseController { */ @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) @GetMapping("/member-point") - public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId) { + public TableDataInfo memberPoint(String memberCode,Long memberSettlePeriodId) { if (memberSettlePeriodId == null) { log.error("参数错误{}", memberSettlePeriodId); - return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + return null; } CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); log.info("会员结算表信息{}",csPeriod); @@ -810,14 +810,14 @@ public class CuMemberController extends BaseController { Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("当前会员结算表不存在",settleTableName); + return null; } List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode); list.forEach(item -> { item.setMemberSettlePeriod(csPeriod.getSettleDate()); }); startPage(); - return AjaxResult.success(getDataTable(list)); + return getDataTable(list); } /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java index 2ddf3d52..e129b1c9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/api/ApiMemberStructureController.java @@ -7,6 +7,7 @@ import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; @@ -120,15 +121,15 @@ public class ApiMemberStructureController extends BaseController { @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/three-framework-list") - public AjaxResult threeFrameworkList(Integer stage,Integer stageStatus) { + public TableDataInfo threeFrameworkList(Integer stage, Integer stageStatus) { if (stage == null) { log.error("参数错误"); - return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + return null; } Long userId = SecurityUtils.getUserId(); if (userId == null) { log.error("用户登录信息错误"); - return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + return null; } // 获取当前时间 -1 天 String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); @@ -141,13 +142,13 @@ public class ApiMemberStructureController extends BaseController { Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前会员日结信息不存在{}",settleTableName); - return AjaxResult.error("数据查询错误,请联系客服处理"); + return null; } startPage(); // 查询当前会员所有子点位信息 CuMember member = iCuMemberService.getMember(userId); List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,member.getMemberCode(),stage,stageStatus); - return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + return getDataTable(cuMemberThreeFrameworkVOS); } @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index 2d450401..a04a590c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -22,6 +22,7 @@ import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailSExt; @@ -254,10 +255,10 @@ public class MemberStructureController extends BaseController { */ @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/three-framework-list") - public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { + public TableDataInfo threeFrameworkList(Long memberSettlePeriodId, String memberCode, Integer stage, Integer stageStatus) { if (memberSettlePeriodId == null || memberCode == null || stage == null) { log.error("参数错误"); - return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + return null; } CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); log.info("日结信息{}",csPeriod); @@ -267,12 +268,12 @@ public class MemberStructureController extends BaseController { Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); - return AjaxResult.error("当前日结信息表不存在",settleTableName); + return null; } startPage(); // 查询当前会员所有子点位信息 List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); - return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + return getDataTable(cuMemberThreeFrameworkVOS); } @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) From af5dbcc78876d6b3e1a03d67bb9c06460676b0df Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 26 Sep 2025 09:39:54 +0800 Subject: [PATCH 300/362] =?UTF-8?q?##=20=E4=B8=89=E9=98=B6=E6=AE=B5?= =?UTF-8?q?=E6=9E=B6=E6=9E=84=E5=88=97=E8=A1=A8=E6=95=B0=E6=8D=AE,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E7=82=B9=E4=BD=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/CuMemberController.java | 28 ++++--------------- .../mapper/CuMemberRetailDetailMapper.java | 9 +++--- .../service/ICumemberRetailDetailService.java | 2 +- .../ICumemberRetailDetailServiceImpl.java | 25 ++++------------- .../com/hzs/member/base/vo/memberPointVO.java | 7 ----- .../api/ApiMemberStructureController.java | 11 ++++++-- .../manage/MemberStructureController.java | 9 +++--- .../member/CuMemberRetailDetailMapper.xml | 9 +++++- 8 files changed, 36 insertions(+), 64 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index ccf23e87..dc3881f7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -798,8 +798,8 @@ public class CuMemberController extends BaseController { @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) @GetMapping("/member-point") public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId) { - if (memberSettlePeriodId == null) { - log.error("参数错误{}", memberSettlePeriodId); + if (memberCode == null || memberSettlePeriodId == null) { + log.error("参数错误{}{}",memberCode, memberSettlePeriodId); return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); } CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); @@ -813,6 +813,9 @@ public class CuMemberController extends BaseController { return AjaxResult.error("当前会员结算表不存在",settleTableName); } List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode); + if (CollectionUtil.isEmpty(list)) { + return null; + } list.forEach(item -> { item.setMemberSettlePeriod(csPeriod.getSettleDate()); }); @@ -820,25 +823,4 @@ public class CuMemberController extends BaseController { return AjaxResult.success(getDataTable(list)); } - /** - * - * @param memberCode - * @param memberSettlePeriodId - * @return - */ - @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) - @PostMapping("/member-point-export") - public void memberPointExport(@RequestParam String memberCode,@RequestParam Long memberSettlePeriodId, HttpServletResponse response) { - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); - log.info("会员结算表信息{}",csPeriod); - String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); - log.info("会员结算表名称{}",settleTableName); - List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode); - list.forEach(item -> { - item.setMemberSettlePeriod(csPeriod.getSettleDate()); - }); - ExcelUtil util = new ExcelUtil<>(memberPointVO.class); - util.exportExcel(response, list, "会员点位信息"); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java index 94ab3f43..724a4730 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -2,7 +2,6 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; -import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -42,8 +41,8 @@ public interface CuMemberRetailDetailMapper extends BaseMapper getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); - CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember,Integer stage, Integer point, String settleTableName); + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Integer stage, Integer point, String settleTableName); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 3b09f539..0650e949 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -12,8 +12,6 @@ import com.hzs.common.domain.member.base.CuMember; import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.ICumemberRetailDetailService; -import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; -import com.hzs.member.structure.controller.dto.CuMemberPointDTO; import com.hzs.member.structure.controller.vo.ChildCodeVO; import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; @@ -72,7 +70,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl> nodeList = new ArrayList<>(); - nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), null,cuMemberRetailDetail.getPkMember(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getChildNode(),cuMemberRetailDetail.getPkMember(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); @@ -124,23 +122,10 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); - return AjaxResult.success(cuMemberThreeFrameworkVOS); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); } @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) @GetMapping("/pointDetail") - public AjaxResult pointDetail(Long pkMember,Long pointMember,Integer stage,Integer point,Long memberSettlePeriodId) { - if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null || pointMember == null) { + public AjaxResult pointDetail(Long pkMember,Integer stage,Integer point,Long memberSettlePeriodId) { + if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null) { log.error("参数错误"); return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); } @@ -291,7 +292,7 @@ public class MemberStructureController extends BaseController { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前日结信息表不存在",settleTableName); } - CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,pointMember,stage,point,settleTableName); + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,stage,point,settleTableName); if (cuMemberPointDetailVO == null) { return null; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 2611ea8d..f7897a31 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -79,11 +79,18 @@ curd.CHILD_NODE - SELECT cmr.MEMBER_CODE, cmr.MEMBER_NAME, @@ -87,7 +87,7 @@ ORDER BY cmr.${sortColumn} ${sort} - SELECT cmr.MEMBER_CODE, cmr.MEMBER_NAME, From 994b670493d3bd8f4e5aea4efadcac34b2e943b2 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Sun, 28 Sep 2025 11:12:29 +0800 Subject: [PATCH 324/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/achieve/CuMemberRetailRangeMapper.xml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index 94b2e756..36e6684e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -451,11 +451,14 @@ cu.pk_id, cu.MEMBER_CODE, mr.ENABLE_STATUS, + NVL( mr.CONSUME_PV, 0 ) consumePv, - NVL( mr.NEW_CONSUME_PV, 0 ) newConsumePv, - NVL( mr.All_TEAM_CONSUME_PV, 0 ) teamConsumePv, - NVL( mr.All_TEAM_NEW_PV, 0 ) teamNewPv, - NVL( mrs.ALL_NEW_CONSUME_PV, 0 ) sNewConsumePv, + NVL( mr.REG_CONSUME_NEW_PV + mr.REP_CONSUME_NEW_PV, 0 ) newConsumePv, + + NVL( mr.TEAM_CONSUME_PV, 0 ) teamConsumePv, + NVL( mr.REG_TEAM_NEW_PV + mr.REP_TEAM_NEW_PV, 0 ) teamNewPv, + + NVL( mrs.ALL_CONSUME_NEW_PV, 0 ) sNewConsumePv, NVL( mrs.ALL_TEAM_NEW_PV, 0 ) sTeamNewPv FROM cu_member cu From e5c1287d2234c39c677030c2d5bb6c836babf5c5 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 28 Sep 2025 11:31:25 +0800 Subject: [PATCH 325/362] =?UTF-8?q?##=20=E7=BB=93=E7=AE=97=E6=96=B0?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E5=85=BC=E5=AE=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 6 + .../impl/CuMemberBonusStageServiceImpl.java | 104 +++++++++--------- .../achieve/CuMemberRetailRangeMapper.xml | 3 + 3 files changed, 61 insertions(+), 52 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 0a9815d9..0a9f8330 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1139,6 +1139,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); // 推荐人一阶段子点位列表 LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); + if (CollectionUtil.isEmpty(parentDetailList)) { + continue; + } // 推荐人第一层点位处理 giftBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, @@ -1306,6 +1309,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // BdAwards bdAwards = retailAwardsMap.get(awardsValue); // // 先验证累计业绩 // if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMember.getTeamConsumePv(), targetMember.getConsumePv()), bdAwards.getShareTotalCheck())) { +// +// +// // // 再验证小区,计算小区业绩(拉取直推会员数据) // if (null == cuMemberRangeExtList) { // // 昨日结算表,查询订单会员直推数据 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java index 9fd14cd7..f63e5f05 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -698,58 +698,6 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl parentDetailList, CuMemberRetailDetail newRetailDetail, - String rangeTableName, String rangeDetailTableName, - Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, - List bonusStageDataList) { - for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { - // 第二层填充 - CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); - // 遍历推荐人点位,使用第一个未完成的点位,进行填充 - if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { - if (null == parentRetailDetail.getPointMember21()) { - this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, - newRetailDetail, settleDate, eBonusStage, bonusStageDataList); - // 新点位是推荐人点位的第二层 - this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_21, settleDate, eBonusStage, - bonusStageDataList); - // 当前新子点位填充完成,进入下一个新子点位 - return true; - } else if (null == parentRetailDetail.getPointMember22()) { - this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, - newRetailDetail, settleDate, eBonusStage, bonusStageDataList); - // 新点位是推荐人点位的第二层 - this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_22, settleDate, eBonusStage, - bonusStageDataList); - // 当前新子点位填充完成,进入下一个新子点位 - return true; - } else if (null == parentRetailDetail.getPointMember23()) { - this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, - newRetailDetail, settleDate, eBonusStage, bonusStageDataList); - // 新点位是推荐人点位的第二层 - this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_23, settleDate, eBonusStage, - bonusStageDataList); - // 当前新子点位填充完成,进入下一个新子点位 - return true; - } else if (null == parentRetailDetail.getPointMember24()) { - this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, - newRetailDetail, settleDate, eBonusStage, bonusStageDataList); - // 新点位是推荐人点位的第二层 - this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, - rangeTableName, rangeDetailTableName, BonusConstants.POINT_24, settleDate, eBonusStage, - bonusStageDataList); - // 当前新子点位填充完成,进入下一个新子点位 - return true; - } - } - } - return false; - } - @Override public boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, String rangeTableName, String rangeDetailTableName, @@ -838,6 +786,58 @@ public class CuMemberBonusStageServiceImpl extends ServiceImpl parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember22()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember23()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember24()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + private LinkedHashMap getRetailDetailMap(CuMemberRetailRangeExt memberRetail, EBonusStage eBonusStage) { if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { return memberRetail.getOneDetailMap(); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 3d650dc1..c50b3307 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -738,7 +738,10 @@ rep_team_new_amount, rep_team_new_pv, point_count, + wait_point_count, rep_pv_balance, + gift_point, + gift_pay_time, bw.awards_value, bw.awards_name from ${tableName} a From 6442f2bbfbbca9ba8456247d0d53731657eaf9bf Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Sun, 28 Sep 2025 13:40:07 +0800 Subject: [PATCH 326/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81-=E5=8F=96=E6=B6=88=E8=87=AA=E5=B7=B1?= =?UTF-8?q?=E8=99=9A=E6=8B=9F=E5=8C=BA&=E5=8F=96=E6=B6=88=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E4=B8=AA=E4=BA=BA=E4=B8=9A=E7=BB=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/retail/member/utils/DataStatisticsUtil.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java index 00a4446a..07965a94 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java @@ -44,7 +44,7 @@ public class DataStatisticsUtil { .build(); } calcDetailVOTotalField(detailVOList, pkId); - addVirtualBranch(detailVOList, pkId); +// addVirtualBranch(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 @@ -69,9 +69,14 @@ public class DataStatisticsUtil { */ public static void calcDetailVOTotalField(List detailVOList, Long pkId) { detailVOList.forEach(detailVO -> { +// detailVO.setTotalPv( +// detailVO.getConsumePv() +// .add(detailVO.getTeamConsumePv()) +// .add(detailVO.getSNewConsumePv()) +// .add(detailVO.getSTeamNewPv()) +// ); detailVO.setTotalPv( - detailVO.getConsumePv() - .add(detailVO.getTeamConsumePv()) + detailVO.getTeamConsumePv() .add(detailVO.getSNewConsumePv()) .add(detailVO.getSTeamNewPv()) ); @@ -155,7 +160,7 @@ public class DataStatisticsUtil { private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId) { return detailVOList.stream() - .filter(vo -> !vo.getPkId().equals(pkId)) +// .filter(vo -> !vo.getPkId().equals(pkId)) .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalPv)) .orElse(null); } From 6704bace807c17daa03625a061b6afac358195c3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 28 Sep 2025 13:59:17 +0800 Subject: [PATCH 327/362] =?UTF-8?q?##=20=E5=A5=96=E8=A1=94=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/domain/system/config/BdAwards.java | 36 +++---------------- 1 file changed, 4 insertions(+), 32 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java index 1f4b0000..40f0a0a7 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java @@ -171,44 +171,16 @@ public class BdAwards extends BaseEntity { private BigDecimal totalCheck; /** - * 分红小区考核PV - */ - @TableField("SHARE_COMMUNITY_CHECK") - private BigDecimal shareCommunityCheck; - - /** - * 分红小区考核结束PV - */ - @TableField("SHARE_COMMUNITY_CHECK_END") - private BigDecimal shareCommunityCheckEnd; - - /** - * 分红累计业绩 - */ - @TableField("SHARE_TOTAL_CHECK") - private BigDecimal shareTotalCheck; - - /** - * 福利级差比例 -- 月度级差 + * 领导奖级差比例 */ @TableField("RANGE_RATIO") private BigDecimal rangeRatio; /** - * 复购级差比例 -- 月度复购级差 + * 领导奖平级比例 */ - @TableField("MONTH_REPURCHASE_RATIO") - private BigDecimal monthRepurchaseRatio; + @TableField("SAME_LEVEL_RATIO") + private BigDecimal sameLevelRatio; - /** - * 福利平均比例 -- 月度分红平均 - */ - @TableField("BENEFIT_AVG_RATIO") - private BigDecimal benefitAvgRatio; - /** - * 福利加权比例 -- 月度分红加权 - */ - @TableField("BENEFIT_SHARE_RATIO") - private BigDecimal benefitShareRatio; } From 1fc421a74d35589576e9dd238b054a30e65393c3 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 28 Sep 2025 13:59:49 +0800 Subject: [PATCH 328/362] =?UTF-8?q?##=20=E5=A5=96=E8=A1=94=E5=AE=9E?= =?UTF-8?q?=E4=BD=93=E8=B0=83=E6=95=B4=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BonusSettleRangeHandle.java | 291 +++--------------- .../achieve/CuMemberRetailRangeMapper.xml | 10 - .../achieve/ext/CuMemberRetailRangeExt.java | 40 --- 3 files changed, 41 insertions(+), 300 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 0a9f8330..23498c70 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -99,12 +99,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 计算自己奖衔等 - calculateGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, - cuMemberAwardsList, sourceMemberRangeExt); - // 计算团队业绩、计算奖衔 - cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName)); // 奖金处理 List cuMemberBonusRangeList = new ArrayList<>(); @@ -345,9 +339,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMember.setNewConsumeAmount(orderAmount); sourceMember.setConsumeAmount(sourceMember.getConsumeAmount().add(orderAmount)); sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount)); - // TODO 自己计算奖衔 - this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); - // TODO 累计团队业绩、金额 + 计算奖衔 +// // 自己计算奖衔 +// this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); + // 累计团队业绩、金额 + 计算奖衔 this.calculateParentAwards(period, memberRangeExtMap, rangeTableName, sourceMember, saOrderExt, retailAwardsMap); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() @@ -429,42 +423,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - /** - * 计算团队奖衔 -- 秒结、日结 - */ - public List calculateRetailRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailAwardsMap, String secondRangeTableName) { - // 会员奖衔升级列表 - List cuMemberAwardsList = new ArrayList<>(); - // 订单会员 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - // 订单会员的推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(sourceMemberRangeExt.getPkParent()); - - BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - BigDecimal orderAmount = saOrderExt.getOrderAmount(); - while (null != targetMemberRangeExt) { - // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve)); - targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve)); - targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve)); - - // 累计业绩 - targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); - targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); - targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 累计金额 - targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); - targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); - targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 计算 - calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, - secondRangeTableName, cuMemberAwardsList, targetMemberRangeExt); - targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); - } - return cuMemberAwardsList; - } - /** * 计算奖衔 -- 日结、秒结 */ @@ -492,86 +450,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } break; } - -// // 校验大小区会员数据 -// List cuMemberRangeExtList = null; -// // 校验累计小部门会员数据 -// List cuMemberRetailRangeExtList = null; -// // 计算分红奖衔 -// while (true) { -// // 当月奖衔值 + 5,获取下一个奖衔值 -// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; -// if (retailAwardsMap.containsKey(awardsValue)) { -// BdAwards bdAwards = retailAwardsMap.get(awardsValue); -// // 先验证累计业绩 -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { -// // 再验证小区,计算小区业绩(拉取直推会员数据) -// if (null == cuMemberRangeExtList) { -// if (null != secondRangeTableName) { -// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 -// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); -// } else { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); -// } -// } -// // 本人月消费业绩(默认为大区) -// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 -// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); -// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { -// // 月累计业绩 > 大区业绩,则月累计就成为大区了 -// consumeBigPv = consumePv; -// } -// } -// -// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 -// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); -// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { -// // 小区业绩 >= 小区考核业绩 -// if (bdAwards.getPlaceDeptNum() > 0) { -// // 验证是否有多个区满足业绩 -// if (null == cuMemberRetailRangeExtList) { -// // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 -// if (null != secondRangeTableName) { -// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 -// cuMemberRetailRangeExtList = cuMemberRangeExtList; -// } else { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); -// } -// } -// -// int enoughNum = 0; -// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { -// enoughNum += 1; -// } -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { -// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 -// enoughNum += 1; -// } -// } -// if (bdAwards.getPlaceDeptNum() > enoughNum) { -// break; -// } -// } -// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); -// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); -// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); -// continue; -// } -// } -// } -// break; -// } } /** @@ -590,17 +468,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); BigDecimal orderAmount = saOrderExt.getOrderAmount(); while (targetMemberRangeExt != null) { - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - if (isSecond) { - // 当天,秒结处理 - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve)); - } else { - // 非当天,日结处理 - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve)); - targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().subtract(orderAchieve)); - targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().subtract(orderAchieve)); - } - // 累计金额 targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); @@ -643,80 +510,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } break; } - -// // 计算分红奖衔 -// while (true) { -// // 当月奖衔值 + 5,获取下一个奖衔值 -// int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; -// if (retailAwardsMap.containsKey(awardsValue)) { -// BdAwards bdAwards = retailAwardsMap.get(awardsValue); -// // 先验证累计业绩 -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { -// // 验证小区,计算小区业绩(拉取直推会员数据) -// List cuMemberRangeExtList; -// if (secondRangeTableName != null) { -// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 -// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); -// } else { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); -// } -// // 本人月消费业绩(默认为大区) -// BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 -// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); -// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { -// // 月累计业绩 > 大区业绩,则月累计就成为大区了 -// consumeBigPv = consumePv; -// } -// } -// -// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 -// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); -// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { -// // 小区业绩 >= 小区考核业绩 -// if (bdAwards.getPlaceDeptNum() > 0) { -// // 验证是否有多个区满足业绩 -// List cuMemberRetailRangeExtList; -// if (secondRangeTableName != null) { -// // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 -// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); -// } else { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); -// } -// -// int enoughNum = 0; -// if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { -// enoughNum += 1; -// } -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { -// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 -// enoughNum += 1; -// } -// } -// if (bdAwards.getPlaceDeptNum() > enoughNum) { -// break; -// } -// } -// CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); -// cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); -// targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); -// targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); -// continue; -// } -// } -// } -// break; -// } } @@ -1297,42 +1090,40 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { private void calculateAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, Map retailAwardsMap, List cuMemberAwardsList, CuMemberRetailRangeExt targetMember) { -// // 校验大小区会员数据 -// List cuMemberRangeExtList = null; -// // 校验累计小部门会员数据 -// List cuMemberRetailRangeExtList = null; -// // 计算分红奖衔 -// while (true) { -// // 当月奖衔值 + 5,获取下一个奖衔值 -// int awardsValue = targetMember.getAwardsValue() + 5; -// if (retailAwardsMap.containsKey(awardsValue)) { -// BdAwards bdAwards = retailAwardsMap.get(awardsValue); -// // 先验证累计业绩 -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMember.getTeamConsumePv(), targetMember.getConsumePv()), bdAwards.getShareTotalCheck())) { -// -// -// -// // 再验证小区,计算小区业绩(拉取直推会员数据) -// if (null == cuMemberRangeExtList) { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); -// } -// // 本人月消费业绩(默认为大区) -// BigDecimal consumeBigPv = targetMember.getMonthConsumePv(); -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 -// BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); -// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { -// // 月累计业绩 > 大区业绩,则月累计就成为大区了 -// consumeBigPv = consumePv; -// } -// } -// -// // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 -// BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMember.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMember.getTeamMonthPv(), consumeBigPv)); + // 校验大小区会员数据 + List cuMemberRangeExtList = null; + // 校验累计小部门会员数据 + List cuMemberRetailRangeExtList = null; + // 计算分红奖衔 + while (true) { + // 当月奖衔值 + 5,获取下一个奖衔值 + int awardsValue = targetMember.getAwardsValue() + 5; + if (retailAwardsMap.containsKey(awardsValue)) { + BdAwards bdAwards = retailAwardsMap.get(awardsValue); + // 先验证累计业绩 + if (ComputeUtil.compareValue(targetMember.getTeamConsumePv(), bdAwards.getTotalCheck())) { + // 团队累计业绩 >= 奖衔业绩 + // 再验证小区,计算小区业绩(拉取直推会员数据) + if (null == cuMemberRangeExtList) { + // 昨日结算表,查询会员直推数据 + cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); + } + // 大区 + BigDecimal consumeBigPv = BigDecimal.ZERO; + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { + if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { + cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); + } + // 累计业绩 = 团队累计消费业绩 + BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv(); + if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { + // 累计业绩 > 大区业绩,则累计就成为大区 + consumeBigPv = consumePv; + } + } + +// // 小区业绩 = 团队累计消费业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); // if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { // // 小区业绩 >= 小区考核业绩 // if (bdAwards.getPlaceDeptNum() > 0) { @@ -1364,10 +1155,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // targetMember.setPkAwards(bdAwards.getPkId()); // continue; // } -// } -// } -// break; -// } + } + } + break; + } } /** diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index c50b3307..40c0e08a 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -59,15 +59,8 @@ - - - - - - - @@ -834,9 +827,6 @@ bw.awards_value, bw.awards_name, bw.range_ratio, - bw.month_repurchase_ratio, - bw.benefit_avg_ratio, - bw.benefit_share_ratio, bws.awards_value share_awards_value from ( select * diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 97b019a1..3dc5bb72 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -40,21 +40,6 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal rangeRatio; - /** - * 复购级差比例 - */ - private BigDecimal monthRepurchaseRatio; - - /** - * 分红平均比例 - */ - private BigDecimal benefitAvgRatio; - - /** - * 分红加权比例 - */ - private BigDecimal benefitShareRatio; - /** * 小区业绩 */ @@ -69,32 +54,7 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { */ private BigDecimal coachRatio; - /** - * 团队累计消费pv(不管激活,全累计) -- 日结使用 - */ - private BigDecimal allTeamConsumePv; - /** - * 团队月累计消费pv(不管激活,全累计) -- 日结使用 - */ - private BigDecimal allTeamMonthPv; - // 秒结 start - /** - * 本日-个人所有新增金额 - */ - private BigDecimal allConsumeNewAmount; - /** - * 本日-个人所有新增业绩 - */ - private BigDecimal allConsumeNewPv; - /** - * 本日-团队所有新增金额 - */ - private BigDecimal allTeamNewAmount; - /** - * 本日-团队所有新增业绩 - */ - private BigDecimal allTeamNewPv; /** * 本日-个人注册(精品专区)新增金额 */ From 50c9fc0a1da16a2ea1aac5d9b94989f29321f004 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Sun, 28 Sep 2025 12:22:51 +0800 Subject: [PATCH 329/362] =?UTF-8?q?##=20Opt=20-=20=E5=B8=82=E5=9C=BA?= =?UTF-8?q?=E5=8A=A8=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/vo/MemberBonusFirstPurchaseVO.java | 121 +++--------------- 1 file changed, 20 insertions(+), 101 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java index 0e7cfaa5..a6e17c44 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java @@ -1,6 +1,7 @@ package com.hzs.bonus.bonus.vo; import com.hzs.common.core.annotation.BigDecimalFormat; +import com.hzs.common.core.annotation.Excel; import lombok.*; import java.math.BigDecimal; @@ -15,116 +16,34 @@ import java.math.BigDecimal; @NoArgsConstructor public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { -// /** -// * 直推收益 -// */ -// private BigDecimal directIncome; -// -// /** -// * 拓展收益 -// */ -// private BigDecimal expandIncome; -// -// /** -// * 分红收益 -// */ -// private BigDecimal shareIncome; -// -// /** -// * 报单收益 -// */ -// private BigDecimal serviceIncome; + /** + * 注册直推收益-众康 + */ + @BigDecimalFormat + private BigDecimal directIncome; /** - * 商城重消 + * 阶段收益-众康 */ - @BigDecimalFormat("#0.00") - private BigDecimal backPoints; -// -// /** -// * 首购实发小计 -// */ -// private BigDecimal purRealSubtotal; -// -// /** -// * 复购推荐收益 -// */ -// private BigDecimal repurPushIncome; -// -// /** -// * 复购拓展收益 -// */ -// private BigDecimal repurExpandIncome; + @BigDecimalFormat + private BigDecimal storeIncome; /** - * 复购级差收益 + * 复购见点收益-众康 */ - @BigDecimalFormat("#0.00") - private BigDecimal repurRangeIncome; - -// /** -// * 复购实发小计 -// */ -// private BigDecimal repurRealSubtotal; -// -// /** -// * 乐学直推收益 -// */ -// private BigDecimal globalPoints; - - - /** - * 新零售直推收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailRangeIncome; - - /** - * 新零售平级收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailSameLevelIncome; - - /** - * 新零售区域分红 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailAreaIncome; - - /** - * 福利级差收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailBenefitRangeIncome; - - /** - * 复购级差收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailMonthRepurchaseIncome; - - /** - * 培育津贴 - */ - @BigDecimalFormat("#0.00") - private BigDecimal coachIncome; - - /** - * 福利分红收益总计 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailBenefitIncomeTotal; - - /** - * 新零售收益小计 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailRealSubtotal; + @BigDecimalFormat + private BigDecimal globalPoints; /** * 实发收益总计 */ - @BigDecimalFormat("#0.00") - private BigDecimal realIncomeTotal; + @BigDecimalFormat + private BigDecimal realIncomeTotalOri; + + /** + * 新零售收益小计 + */ + @BigDecimalFormat + private BigDecimal retailRealSubtotal; } From 5ca7df77eef61b7f16e531bf88150f997fa41435 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Sun, 28 Sep 2025 15:27:23 +0800 Subject: [PATCH 330/362] =?UTF-8?q?##=20Opt=20-=20=E7=AD=89=E7=BA=A7?= =?UTF-8?q?=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/config/service/impl/BdTradeConfigServiceImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java index aecaae9b..d2f5dd73 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.system.config.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EYesNo; @@ -132,10 +133,14 @@ public class BdTradeConfigServiceImpl extends ServiceImpl gradeTransaction(String pkGradeStr, Map gradeMap) { List gradeDetailList = new ArrayList<>(); BdTradeConfigDetailVO detailVO; + Integer defaultPkGrade = gradeMap.keySet().stream().findFirst().get(); if (StringUtils.isNotEmpty(pkGradeStr)) { String[] pkGradeList = pkGradeStr.split(","); for (String pkGrade : pkGradeList) { detailVO = new BdTradeConfigDetailVO(); + if(ObjectUtil.isEmpty(gradeMap.get(Integer.parseInt(pkGrade)))){ + pkGrade = String.valueOf(defaultPkGrade); + } detailVO.setPkGradeTrans(gradeMap.get(Integer.parseInt(pkGrade)).getPkTransaction()); gradeDetailList.add(detailVO); } From 0378dd3d50dc5108555ef19936ef8f025e9e0971 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 28 Sep 2025 15:51:45 +0800 Subject: [PATCH 331/362] =?UTF-8?q?##=20=E6=97=A5=E7=BB=93=E5=A5=96?= =?UTF-8?q?=E8=A1=94=E8=AE=A1=E7=AE=97=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 22 +++---- .../service/ICuMemberRetailRangeService.java | 13 ++-- .../impl/CuMemberRetailRangeServiceImpl.java | 19 ++++-- .../hzs/bonus/base/mapper/CuMemberMapper.java | 9 --- .../service/impl/CuMemberServiceImpl.java | 2 - .../service/impl/BonusSettleRangeHandle.java | 59 +++++++------------ .../achieve/CuMemberRetailRangeMapper.xml | 37 ++++++------ .../mapper/bonus/base/CuMemberMapper.xml | 22 ++----- .../core/constant/MagicNumberConstants.java | 2 +- .../achieve/ext/CuMemberRetailRangeExt.java | 6 +- .../common/domain/system/config/BdAwards.java | 6 +- 11 files changed, 79 insertions(+), 118 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 7f065cd8..f3e2d996 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -8,8 +8,6 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; -import java.util.Date; import java.util.List; /** @@ -68,11 +66,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper queryCuMemberRetailRangeExtByParent(@Param("tableName") String tableName, @Param("pkParent") Long pkParent); - /** - * 查询推荐人伞下满足 - */ - List queryCuMemberRetailRangeEnoughAchieve(@Param("tableName") String tableName, @Param("pkParent") Long pkParent, @Param("achievePv") BigDecimal achievePv); - /** * 根据会员查询会员上的所有网体, 按照pkParent作为key,查询极差秒接表 */ @@ -112,19 +105,11 @@ public interface CuMemberRetailRangeMapper extends BaseMapper memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); @@ -136,4 +121,11 @@ public interface CuMemberRetailRangeMapper extends BaseMapper listChildRetail(@Param("rangeTableName") String rangeTableName, @Param("pkParentList") List pkParentList); + /** + * 查询会员血缘下达标奖衔会员 + */ + List listChildAwards(@Param("rangeTableName") String rangeTableName, + @Param("pkAwards") Integer pkAwards, + @Param("childMemberList") List childMemberList); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index e9a7eb2e..8d6cba58 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -6,10 +6,8 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; -import java.util.Date; import java.util.List; import java.util.Map; @@ -38,11 +36,6 @@ public interface ICuMemberRetailRangeService extends IService queryCuMemberRetailRangeExtByParent(String tableName, Long pkParent); - /** - * 查询推荐人伞下满足 - */ - List queryCuMemberRetailRangeEnoughAchieve(String tableName, Long pkParent, BigDecimal achievePv); - /** * 根据会员查询会员上的所有网体, 按照pkParent作为key,查询极差秒接表 */ @@ -88,4 +81,10 @@ public interface ICuMemberRetailRangeService extends IService pkMemberList, Integer updateType, String symbol); void initMemberRetailSecondRange(String tableName, CuMemberExt member); + + /** + * 查询会员血缘下达标奖衔会员 + */ + List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 91841667..648a498c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -71,11 +71,6 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl queryCuMemberRetailRangeEnoughAchieve(String tableName, Long pkParent, BigDecimal achievePv) { - return baseMapper.queryCuMemberRetailRangeEnoughAchieve(tableName, pkParent, achievePv); - } - @Override public List queryCuMemberSecondRangeParent(String rangeTableName, String secondTableName, Long pkMember) { // 查询伞上 @@ -177,4 +172,18 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl cuMemberTreeList.add(value)); return cuMemberBonusSettle.handleCutList(cuMemberTreeList); } + + @Override + public List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList) { + List checkList = new ArrayList<>(); + List> queryList = cuMemberBonusSettle.handleCutList(childMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + queryList.forEach(tmpList -> { + List tmpCheckList = baseMapper.listChildAwards(rangeTableName, pkAwards, childMemberList); + if (tmpCheckList.size() > 0) { + checkList.addAll(tmpCheckList); + } + }); + return checkList; + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java index f5bd31ab..d845838c 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/mapper/CuMemberMapper.java @@ -21,15 +21,6 @@ public interface CuMemberMapper extends BaseMapper { */ int updateCuMemberRetailAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); - /** - * 更新会员最高奖衔 - * - * @param period - * @param awardType - * @return - */ - int updateCuMemberMaxAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); - /** * 更新会员奖衔根据临时表 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index 22016d13..da9e3ba3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -25,8 +25,6 @@ public class CuMemberServiceImpl extends ServiceImpl i @Override public void updateCuMemberRetailRangeByPeriod(Integer period) { baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); - // 更新会员最高奖衔 - baseMapper.updateCuMemberMaxAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 23498c70..cb7a5263 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -339,10 +339,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMember.setNewConsumeAmount(orderAmount); sourceMember.setConsumeAmount(sourceMember.getConsumeAmount().add(orderAmount)); sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount)); -// // 自己计算奖衔 +// // 自己计算奖衔,目前业绩都只往下传,所以此处暂时不需要处理订单会员的奖衔 // this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); // 累计团队业绩、金额 + 计算奖衔 - this.calculateParentAwards(period, memberRangeExtMap, rangeTableName, sourceMember, saOrderExt, retailAwardsMap); + cuMemberAwardsList.addAll(this.calculateParentAwards(period, memberRangeExtMap, rangeTableName, sourceMember, saOrderExt, retailAwardsMap)); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { @@ -833,6 +833,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, sourceMember, newRetailDetail, returnRetailDetailList); } + pointCount += newPointInt; + sourceMember.setPointCount(pointCount); + // 待激活点位 int waitPointCount = sourceMember.getWaitPointCount(); if (waitPointCount != 0) { @@ -867,7 +870,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } sourceMember.setWaitPointCount(waitPointCount); } - sourceMember.setPointCount(sourceMember.getPointCount() + newPointInt); return returnRetailDetailList; } @@ -1092,8 +1094,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { CuMemberRetailRangeExt targetMember) { // 校验大小区会员数据 List cuMemberRangeExtList = null; - // 校验累计小部门会员数据 - List cuMemberRetailRangeExtList = null; // 计算分红奖衔 while (true) { // 当月奖衔值 + 5,获取下一个奖衔值 @@ -1122,39 +1122,22 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } -// // 小区业绩 = 团队累计消费业绩 - 大区业绩 -// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); -// if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { -// // 小区业绩 >= 小区考核业绩 -// if (bdAwards.getPlaceDeptNum() > 0) { -// // 验证是否有多个区满足业绩 -// if (null == cuMemberRetailRangeExtList) { -// // 昨日结算表,查询订单会员直推数据 -// cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMember.getPkMember(), bdAwards.getShareCommunityCheck()); -// } -// -// int enoughNum = 0; -// if (ComputeUtil.compareValue(targetMember.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { -// enoughNum += 1; -// } -// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { -// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { -// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); -// } -// if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { -// // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 -// enoughNum += 1; -// } -// } -// if (bdAwards.getPlaceDeptNum() > enoughNum) { -// break; -// } -// } -// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMember.getPkShareAwards())); -// targetMember.setAwardsValue(bdAwards.getAwardsValue()); -// targetMember.setPkAwards(bdAwards.getPkId()); -// continue; -// } + // 小区业绩 = 团队累计消费业绩 - 大区业绩 + BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); + if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getCommunityCheck())) { + // 小区业绩 >= 小区考核业绩 + if (bdAwards.getPlaceDeptNum() > 0) { + // 验证每条血缘下,满足达标数量 + List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), + cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); + if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + continue; + } + } + } } } break; diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 40c0e08a..9aeeb940 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -59,6 +59,7 @@ + @@ -552,6 +553,7 @@ , a.pk_share_awards = b.pk_range_awards + UPDATE ${tableName} SET @@ -570,6 +572,7 @@ WHERE PK_MEMBER = #{cuMember.pkId} + UPDATE ${tableName} SET @@ -589,6 +592,7 @@ #{member.pkId} + INSERT INTO ${tableName} ("PK_MEMBER", "PK_PARENT", @@ -827,6 +831,7 @@ bw.awards_value, bw.awards_name, bw.range_ratio, + bw.same_level_ratio, bws.awards_value share_awards_value from ( select * @@ -864,24 +869,6 @@ and cm.del_flag = 0 - - + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml index 66baa0b0..6f1beb34 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml @@ -106,23 +106,6 @@ a.modified_time = sysdate - - merge into cu_member a - using (select c1.* - from (select pk_member, max(new_level) pk_awards - from cu_member_awards - where period = #{period} - and award_type = #{awardType} - and del_flag = 0 - group by pk_member) c1 - inner join cu_member c2 - on c1.pk_member = c2.pk_id - and c1.pk_awards > c2.pk_max_awards) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_max_awards = b.pk_awards, a.modified_time = sysdate - - merge into cu_member a @@ -197,9 +180,12 @@ a.modified_time = sysdate + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java index ccf25238..894be219 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/MagicNumberConstants.java @@ -40,7 +40,7 @@ public class MagicNumberConstants { /** * 查询条数 */ - public static final Integer BATCH_QUERY_NUM = 300; + public static final Integer BATCH_QUERY_NUM = 450; /** * 系统管理员主键 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java index 3dc5bb72..f9561fc6 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/achieve/ext/CuMemberRetailRangeExt.java @@ -36,9 +36,13 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange { private String awardsName; /** - * 福利级差比例 + * 领导奖级差比例 */ private BigDecimal rangeRatio; + /** + * 领导奖平级比例 + */ + private BigDecimal sameLevelRatio; /** * 小区业绩 diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java index 40f0a0a7..29542378 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdAwards.java @@ -92,16 +92,14 @@ public class BdAwards extends BaseEntity { private BigDecimal carAwardPoints; /** - * 左区奖衔 + * 考核奖衔 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD) @TableField(value = "PK_CHECK_AWARDS_LEFT", jdbcType = JdbcType.NUMERIC, updateStrategy = FieldStrategy.IGNORED) private Integer pkCheckAwardsLeft; /** * 右区奖衔 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD) @TableField(value = "PK_CHECK_AWARDS_RIGHT", jdbcType = JdbcType.NUMERIC, updateStrategy = FieldStrategy.IGNORED) private Integer pkCheckAwardsRight; @@ -159,7 +157,7 @@ public class BdAwards extends BaseEntity { private Integer systemType; /** - * 部门数量 + * 考核部门数量 */ @TableField("PLACE_DEPT_NUM") private Integer placeDeptNum; From 6ded77fea850c742bbcefcc16ebd8a2f43b2dc7e Mon Sep 17 00:00:00 2001 From: zhangheng Date: Sun, 28 Sep 2025 17:23:54 +0800 Subject: [PATCH 332/362] =?UTF-8?q?##=20=E6=9E=B6=E6=9E=84=E4=BF=AE?= =?UTF-8?q?=E6=94=B9,=E9=98=B6=E6=AE=B5=E9=85=8D=E7=BD=AE=E4=BF=AE?= =?UTF-8?q?=E6=94=B9,=E5=AD=90=E8=8A=82=E7=82=B9=E6=8E=92=E5=BA=8F,?= =?UTF-8?q?=E4=BC=9A=E5=91=98=E5=AD=90=E8=8A=82=E7=82=B9=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9C=AA=E5=AE=8C=E6=88=90=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberController.java | 9 ++-- .../controller/manage/CuMemberController.java | 10 ++-- .../base/mapper/CuMemberRetailMapper.java | 4 +- .../base/service/ICuMemberRetailService.java | 4 +- .../impl/CuMemberRetailServiceImpl.java | 8 +-- .../ICumemberRetailDetailServiceImpl.java | 5 +- .../com/hzs/member/base/vo/MemberPointVO.java | 13 +++++ .../member/base/CuMemberRetailMapper.xml | 52 +++++++++++++------ .../member/CuMemberRetailDetailMapper.xml | 2 + .../common/domain/system/config/BdAwards.java | 37 ++++++------- 10 files changed, 86 insertions(+), 58 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index 2804cded..f93a946e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -458,18 +458,15 @@ public class ApiMemberController extends BaseController { CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); log.info("会员结算表信息{}",csPeriod); String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); - log.info("会员结算表名称{}",settleTableName); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); // 校验当前日结表是否存在 Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("数据查询错误,请联系客服处理"); } - List list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId); - if (CollectionUtil.isEmpty(list)) { - return AjaxResult.success(); - } - MemberPointVO memberPointVO = list.get(0); + MemberPointVO memberPointVO = iCuMemberRetailService.getMemberPointByUserId(settleDetailTableName,settleTableName,userId); memberPointVO.setMemberSettlePeriod(csPeriod.getSettleDate()); startPage(); return AjaxResult.success(memberPointVO); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index abeabc42..d5aebd27 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -805,14 +805,15 @@ public class CuMemberController extends BaseController { CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); log.info("会员结算表信息{}",csPeriod); String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); - log.info("会员结算表名称{}",settleTableName); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); // 校验当前日结表是否存在 Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); if (isFind == null || isFind != 1) { log.error("当前表名不存在{}",settleTableName); return AjaxResult.error("当前会员日结表信息不存在"); } - List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode,sort,sortColumn); + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleDetailTableName,settleTableName,memberCode,sort,sortColumn); list.forEach(item -> { item.setMemberSettlePeriod(csPeriod.getSettleDate()); }); @@ -830,8 +831,9 @@ public class CuMemberController extends BaseController { CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(param.getMemberSettlePeriodId()); log.info("会员结算表信息{}",csPeriod); String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); - log.info("会员结算表名称{}",settleTableName); - List list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,param.getMemberCode(),param.getSort(),param.getSortColumn()); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleDetailTableName, settleTableName, param.getMemberCode(), param.getSort(), param.getSortColumn()); list.forEach(item -> { item.setMemberSettlePeriod(csPeriod.getSettleDate()); }); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java index 731751c1..26e6b25c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java @@ -20,7 +20,7 @@ public interface CuMemberRetailMapper extends BaseMapper { Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); - List getMemberPointByMemberCode(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode, @Param("sort") String sort, @Param("sortColumn") String sortColumn); + List getMemberPointByMemberCode(@Param("settleDetailTableName") String settleDetailTableName,@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode, @Param("sort") String sort, @Param("sortColumn") String sortColumn); - List getMemberPointByUserId(@Param("settleTableName") String settleTableName, @Param("userId") Long userId); + MemberPointVO getMemberPointByUserId(@Param("settleDetailTableName") String settleDetailTableName,@Param("settleTableName") String settleTableName, @Param("userId") Long userId); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java index c69e6f38..4ced2404 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java @@ -17,7 +17,7 @@ public interface ICuMemberRetailService{ Integer getFindCuMemberRetailDetail(String settleTableName); - List getMemberPointByMemberCode(String settleTableName, String memberCode, String sort, String sortColumn); + List getMemberPointByMemberCode(String settleDetailTableName,String settleTableName, String memberCode, String sort, String sortColumn); - List getMemberPointByUserId(String settleTableName, Long userId); + MemberPointVO getMemberPointByUserId(String settleDetailTableName,String settleTableName, Long userId); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java index 477e39ff..f1a5c5bd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java @@ -26,12 +26,12 @@ public class CuMemberRetailServiceImpl extends ServiceImpl getMemberPointByMemberCode(String settleTableName, String memberCode, String sort, String sortColumn) { - return baseMapper.getMemberPointByMemberCode(settleTableName,memberCode,sort,sortColumn); + public List getMemberPointByMemberCode(String settleDetailTableName, String settleTableName, String memberCode, String sort, String sortColumn) { + return baseMapper.getMemberPointByMemberCode(settleDetailTableName,settleTableName,memberCode,sort,sortColumn); } @Override - public List getMemberPointByUserId(String settleTableName, Long userId) { - return baseMapper.getMemberPointByUserId(settleTableName,userId); + public MemberPointVO getMemberPointByUserId(String settleDetailTableName,String settleTableName, Long userId) { + return baseMapper.getMemberPointByUserId(settleDetailTableName,settleTableName,userId); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java index 854026ee..fc3f0aad 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -99,6 +99,7 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml index 2611ea8d..bd1db8e3 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -14,6 +14,7 @@ and cud.STAGE_STATUS = #{stageStatus} + ORDER BY CHILD_NODE ASC - - MERGE INTO ${retailsTableName} s - USING ( - SELECT SUM(boxNum) AS boxNum, SUM(pv) AS pv, pk_id - FROM ( - SELECT b.PK_ID, - NVL(s.NEW_CONSUME_PV, 0) AS pv - FROM ${retailsTableName} s - RIGHT JOIN ( - SELECT cm.PK_ID - FROM cu_member cm - WHERE cm.PK_ID != #{pkId} - START WITH cm.PK_ID = #{pkId} - CONNECT BY PRIOR cm.pk_id = cm.pk_parent - ORDER BY LEVEL - ) b ON s.PK_MEMBER = b.PK_ID - ) c - GROUP BY pk_id - ) result - ON (s.PK_MEMBER = result.PK_ID) - WHEN MATCHED THEN - UPDATE SET - s.ENABLE_STATUS = 0, - s.TEAM_NEW_PV = result.pv - WHERE s.PK_MEMBER = #{pkId} - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index 090b39db..c4a95899 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -51,7 +51,6 @@ import com.hzs.system.config.dto.AreaCurrencyDTO; import com.hzs.third.pay.ITOnlinePaymentServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -85,8 +84,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { private MemberToolsHandler memberToolsHandler; @Autowired private RedisService redisService; - @Autowired - private RabbitTemplate rabbitTemplate; @Autowired private ICuMemberAccountService iCuMemberAccountService; @@ -1244,9 +1241,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } this.handleRetailMemberAccount(saOrder, cuMemberAccountExt); - - // 推送会员激活处理 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE, RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_KEY, Collections.singletonList(cuMember.getPkId())); } @Transactional(rollbackFor = Exception.class) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java index f98240f2..de9a9182 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java @@ -687,23 +687,6 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl 0; } - - if (result) { - // 修改是否激活,旧值为未激活,新值为激活的会员需要推MQ处理秒结状态 - List pkMemberList = handleBusinessVO.getBusinessMemberList().stream() - .filter( - tmpData -> EApprovalBusiness.IS_ACTIVATE.getValue() == tmpData.getBusinessType() - && tmpData.getOldValue().equals(EYesNo.NO.getIntValue() + "") - && tmpData.getNewValue().equals(EYesNo.YES.getIntValue() + "") - ) - .map(BusinessMemberVO::getPkMember) - .collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(pkMemberList)) { - // 推送会员激活处理 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE, RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_KEY, pkMemberList); - } - } - return result; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java index 99c6ae6c..47ba8d34 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/RabbitMqConstants.java @@ -23,19 +23,6 @@ public class RabbitMqConstants { */ public static final String ORDER_SECOND_KEY = PREFIX + "order.second.key"; - /** - * 奖金秒接-激活补偿 exchange - */ - public static final String ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE = PREFIX + "order.second_activate_compensation.exchange"; - /** - * 奖金秒接-激活补偿 queue - */ - public static final String ORDER_SECOND_ACTIVATE_COMPENSATION_QUEUE = PREFIX + "order.second_activate_compensation.queue"; - /** - * 奖金秒接-激活补偿 key - */ - public static final String ORDER_SECOND_ACTIVATE_COMPENSATION_KEY = PREFIX + "order.second_activate_compensation.key"; - /** * 活动 exchange */ From 15dba6261797bdc9d3c7cd5409db17f7e2c315d9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 29 Sep 2025 14:31:14 +0800 Subject: [PATCH 349/362] =?UTF-8?q?##=20=E8=B5=A0=E9=80=81=E7=82=B9?= =?UTF-8?q?=E4=BD=8D=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index b65e4c7b..df7f5ccb 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -757,6 +757,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 待激活点位 int waitPointCount = sourceMember.getWaitPointCount(); if (waitPointCount != 0) { + int giftNewPointInt = 0; for (int i = 1; i <= newPointInt; i++) { if (waitPointCount > 0) { // 购买一个点位,激活一个待激活点位 @@ -782,10 +783,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMember, newRetailDetail, returnRetailDetailList); waitPointCount = waitPointCount - 1; + giftNewPointInt += 1; } else { break; } } + sourceMember.setPointCount(sourceMember.getPointCount() + giftNewPointInt); sourceMember.setWaitPointCount(waitPointCount); } return returnRetailDetailList; From a3aee14a0e05913b7a5c30ff9a97f34942767772 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 29 Sep 2025 15:17:57 +0800 Subject: [PATCH 350/362] =?UTF-8?q?##=20Opt=20-=20=E6=89=8B=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E5=A5=96=E9=87=91=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/service/impl/CuMemberBonusServiceImpl.java | 4 ++++ .../bonus/bonus/vo/MemberBonusFirstPurchaseVO.java | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 45de2660..8dc67205 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -132,6 +132,8 @@ public class CuMemberBonusServiceImpl extends ServiceImpl Date: Mon, 29 Sep 2025 15:21:47 +0800 Subject: [PATCH 351/362] =?UTF-8?q?##=20bug427=20=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E6=9F=A5=E8=AF=A2=E7=A9=BA=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E6=88=90=E5=8A=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/member/base/controller/api/ApiMemberController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index ba626f08..60614175 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -468,7 +468,7 @@ public class ApiMemberController extends BaseController { } MemberPointVO memberPointVO = iCuMemberRetailService.getMemberPointByUserId(settleDetailTableName,settleTableName,userId); if (memberPointVO == null) { - return AjaxResult.error("数据查询错误,请联系客服处理"); + return AjaxResult.success(); } memberPointVO.setMemberSettlePeriod(csPeriod.getSettleDate()); startPage(); From aee06c0ef7f89f8d7138db34c87596d01daa7163 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Mon, 29 Sep 2025 15:22:31 +0800 Subject: [PATCH 352/362] =?UTF-8?q?##=20Opt=20-=20=E6=89=8B=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E5=A5=96=E9=87=91=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/third/sms/ISmsServiceApi.java | 12 ++++++ .../service/impl/RetailOrderServiceImpl.java | 7 ++++ .../common/core/enums/EAliSmsTemplate.java | 4 ++ .../sms/provider/SmsServiceProvider.java | 15 +++++++ .../java/com/hzs/third/sms/util/SmsUtil.java | 41 +++++++++++++++++++ 5 files changed, 79 insertions(+) diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java index d8e34a8b..c226dbd8 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java @@ -18,4 +18,16 @@ public interface ISmsServiceApi { */ R sendAliSms(String phone, String code, EAliSmsTemplate aliSmsTemplate); + /** + * 发送会员注册短信 + * + * @param phone + * @param aliSmsTemplate + * @param memberCode + * @param loginPwd + * @param payPwd + * @return + */ + R sendMemberRegister(String phone, EAliSmsTemplate aliSmsTemplate, String memberCode, String loginPwd, String payPwd); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 3de26df8..632f0631 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -49,6 +49,7 @@ import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; +import com.hzs.third.sms.ISmsServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -105,6 +106,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { IMemberServiceApi iMemberServiceApi; @DubboReference IMemberAccountServiceApi iMemberAccountServiceApi; + @DubboReference + ISmsServiceApi iSmsServiceApi; @Override @@ -522,6 +525,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { throw new RuntimeException("会员注册失败"); } + + // 发送会员注册成功短信 + iSmsServiceApi.sendMemberRegister(newMember.getPhone(), EAliSmsTemplate.MEMBER_REGISTER, + newMember.getMemberCode(), newMember.getLoginPassword(), newMember.getPayPassword()); this.pushOrderMq(saOrderExt); return null; } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAliSmsTemplate.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAliSmsTemplate.java index 03a67ce7..26b0a824 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAliSmsTemplate.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAliSmsTemplate.java @@ -27,6 +27,10 @@ public enum EAliSmsTemplate { MEMBER_SMS("SMS_485350565"), // MEMBER_SMS("SMS_476795282"), // MEMBER_SMS("SMS_474440238"), + /** + * 会员注册成功(尊敬的会员,您新注册的会员编号:${memberCode},登录密码:${loginPwd},支付密码:${payPwd},请妥善保管) + */ + MEMBER_REGISTER("SMS_491370028"), ; diff --git a/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java b/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java index f5bf997a..ef7c74fd 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java +++ b/bd-third/src/main/java/com/hzs/third/sms/provider/SmsServiceProvider.java @@ -29,4 +29,19 @@ public class SmsServiceProvider implements ISmsServiceApi { } } + @Override + public R sendMemberRegister(String phone, EAliSmsTemplate aliSmsTemplate, String memberCode, String loginPwd, String payPwd) { + try { + String str = SmsUtil.sendMemberRegister(phone, aliSmsTemplate, memberCode, loginPwd, payPwd); + if (null == str) { + return R.ok(); + } + log.error("发送会员注册短信失败: {}", str); + return R.fail(str); + } catch (Exception e) { + log.error("发送会员注册短信异常 phone: {}, memberCode: {}", phone, memberCode, e); + return R.fail(e.getMessage()); + } + } + } diff --git a/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java b/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java index dbb19a93..92bfbf41 100644 --- a/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java +++ b/bd-third/src/main/java/com/hzs/third/sms/util/SmsUtil.java @@ -82,4 +82,45 @@ public class SmsUtil implements InitializingBean { smsConfig = SpringUtils.getBean(SmsConfig.class); } + public static String sendMemberRegister(String phone, EAliSmsTemplate aliSmsTemplate, String memberCode, String loginPwd, String payPwd) { + if (StringUtils.isAnyEmpty(phone)) { + return "手机号为空"; + } + log.info("注册会员成功,发送手机号:{}, memberCode:{}", phone, memberCode); + if (smsConfig.isEnable()) { + // 只有当开启发送短信才进行发送 + try { + Map templateParam = new HashMap<>(); + templateParam.put("memberCode", memberCode); + templateParam.put("loginPwd", loginPwd); + templateParam.put("payPwd", payPwd); + + Client client = new Client(new Config() + .setAccessKeyId(smsConfig.getAliAccessKeyId()) + .setAccessKeySecret(smsConfig.getAliAccessKeySecret()) + // 短信发送域 + .setEndpoint(smsConfig.getAliEndpoint())); + + SendSmsRequest sendSmsRequest = new SendSmsRequest() + .setPhoneNumbers(phone) + // 短信签名 + .setSignName(smsConfig.getAliSign()) + // 短信模板 + .setTemplateCode(aliSmsTemplate.getCode()) + .setTemplateParam(JSONUtil.toJsonStr(templateParam)); + + SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest); + + if (Constants.SUCCESS.equals(sendSmsResponse.getStatusCode())) { + if ("OK".equals(sendSmsResponse.getBody().getCode())) { + return null; + } + log.error("阿里云短信发送失败: {}", sendSmsResponse.getBody().getMessage()); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + return null; + } } From a4e8f8f8c6ece7d8a9b78af9c6b6b78a67e37304 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 29 Sep 2025 18:01:35 +0800 Subject: [PATCH 353/362] =?UTF-8?q?##=20=E5=A5=96=E8=A1=94=E8=AE=A1?= =?UTF-8?q?=E7=AE=97=E6=96=B9=E5=BC=8F=E6=94=B9=E4=B8=BA=E5=85=88=E7=AE=97?= =?UTF-8?q?=E5=A5=96=E8=A1=94=EF=BC=9B=E8=B5=A0=E7=82=B9=E6=8E=92=E7=82=B9?= =?UTF-8?q?=E6=96=B9=E5=BC=8F=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/system/config/dto/BonusConfigDTO.java | 40 +--- .../system/config/dto/BonusDifferenceDTO.java | 7 - .../system/config/dto/BonusDirectLoopDTO.java | 6 +- .../config/dto/BonusRepurchasePushDTO.java | 7 +- .../mapper/CuMemberRetailRangeMapper.java | 23 ++- .../achieve/mapper/CuMemberTreeMapper.java | 5 + .../service/ICuMemberRetailRangeService.java | 17 ++ .../achieve/service/ICuMemberTreeService.java | 6 + .../impl/CuMemberAchieveServiceImpl.java | 17 +- .../impl/CuMemberRetailDetailServiceImpl.java | 2 +- .../impl/CuMemberRetailRangeServiceImpl.java | 27 ++- .../service/impl/CuMemberTreeServiceImpl.java | 10 +- .../hzs/bonus/base/mapper/CuMemberMapper.java | 4 +- .../bonus/base/service/ICuMemberService.java | 5 +- .../service/impl/CuMemberServiceImpl.java | 4 +- .../bonus/service/impl/BonusSettleHandle.java | 24 ++- .../service/impl/BonusSettleRangeHandle.java | 188 +++++++++--------- .../service/ICuMemberAwardsService.java | 9 +- .../impl/CuMemberAwardsServiceImpl.java | 125 +++++++++--- .../achieve/CuMemberRetailRangeMapper.xml | 61 ++++++ .../bonus/achieve/CuMemberTreeMapper.xml | 31 ++- .../mapper/bonus/base/CuMemberMapper.xml | 6 +- .../bonus/detail/CuMemberAwardsMapper.xml | 103 +++++----- .../bonus/mapper/BdBonusServiceMapper.java | 8 +- .../bonus/service/IBdBonusServiceService.java | 17 +- .../impl/BdBonusServiceServiceImpl.java | 21 +- .../mapper/BdBonusDifferenceMapper.java | 6 - .../mapper/BdBonusDirectLoopMapper.java | 16 -- .../config/mapper/BdRepoDirectPushMapper.java | 6 - .../provider/BonusItemsServiceProvider.java | 125 +----------- .../config/service/IBdAwardsService.java | 5 - .../service/IBdBonusDifferenceService.java | 15 -- .../service/IBdBonusDirectLoopService.java | 23 +-- .../service/IBdRepoDirectPushService.java | 15 -- .../service/impl/BdAwardsServiceImpl.java | 10 +- .../impl/BdBonusDifferenceServiceImpl.java | 12 -- .../impl/BdBonusDirectLoopServiceImpl.java | 52 ++--- .../impl/BdRepoDirectPushServiceImpl.java | 14 -- .../system/config/BdBonusDirectLoopMapper.xml | 26 --- .../domain/member/ext/CuMemberSettleExt.java | 40 +--- .../system/config/BdBonusDirectLoop.java | 6 - .../system/config/BdRepoDirectPush.java | 5 - .../config/ext/BdBonusDirectLoopExt.java | 6 +- 43 files changed, 466 insertions(+), 689 deletions(-) diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java index cc6cddf5..5219c3bd 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java @@ -1,7 +1,6 @@ package com.hzs.system.config.dto; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.bonus.BdBonusService; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.sys.dto.BdCurrencyDTO; @@ -27,46 +26,14 @@ public class BonusConfigDTO implements Serializable { */ private Map bonusItemsExtMap; - /** - * 循环配置 key 第一个键国家主键 +等级,第二个键 循环类型 EBonusType - */ - private Map bonusDirectLoopDtoMap; - /** * 直推奖励配置 key 第一个键国家主键 ,第二个键 range_type+pk_level */ private Map bonusDirectDtoMap; /** - * 一次性补差 key 国家作为主键,只有一条 + * 奖衔列表 */ - private Map bonusDifferenceDtoMap; - - /** - * 复购推荐奖励配置 key第一个键国家主键,第二个键 代数 - */ - private Map> bonusRepurchasePushMap; - - /** - * 拓展奖配置 国家+等级 - */ - private Map gradeMap; - - /** - * 主任每个国家值对应的配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + 奖衔值 为了解决服务中心算主任 - */ - private Map directorAwardsMap; - - /** - * 辅导奖配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getPkAwards() - */ - private Map awardsMap; - - /** - * 辅导奖配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getAwardsValue() - */ - private Map awardsValueMap; - private List awardsList; /** @@ -74,9 +41,4 @@ public class BonusConfigDTO implements Serializable { */ private Map bonusDeductsMap; - /** - * 报单服务费 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getservicetype() - */ - private Map bonusServiceMap; - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java index 692e926d..b9cff8df 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java @@ -5,13 +5,6 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; -/** - * @Description: - * @Author: sui q - * @Time: 2022/11/14 16:38 - * @Classname: BonusDifferenceDTO - * @PackageName: com.hzs.system.config.dto - */ @Data public class BonusDifferenceDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java index 96616f1e..72482b64 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java @@ -6,11 +6,7 @@ import java.io.Serializable; import java.math.BigDecimal; /** - * @Description: 循环配置 - * @Author: sui q - * @Time: 2022/11/14 16:26 - * @Classname: BonusDirectLoopDTO - * @PackageName: com.hzs.system.config.dto + * 循环配置 */ @Data public class BonusDirectLoopDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java index 403104d6..bb87e9f6 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java @@ -6,12 +6,7 @@ import java.io.Serializable; import java.math.BigDecimal; /** - * @description: 复购直推dto - * @author: sui q - * @time: 2023/6/29 15:17 - * @classname: BonusRepurchasePushDTO - * @package_name: com.hzs.system.config.dto - * version 1.0.0 + * 复购直推dto */ @Data public class BonusRepurchasePushDTO implements Serializable { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index f3e2d996..34944456 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -8,6 +8,7 @@ import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import org.apache.ibatis.annotations.Param; +import java.math.BigDecimal; import java.util.List; /** @@ -121,11 +122,31 @@ public interface CuMemberRetailRangeMapper extends BaseMapper listChildRetail(@Param("rangeTableName") String rangeTableName, @Param("pkParentList") List pkParentList); + /** + * 更新会员血缘上累计数据 + */ + Boolean updateMemberParentDate(@Param("rangeTableName") String rangeTableName, + @Param("achieveList") List achieveList); + + /** + * 查询符合奖衔业绩条件会员 + */ + List queryEnoughAwardMember(@Param("rangeTableName") String rangeTableName, + @Param("totalCheck") BigDecimal totalCheck, + @Param("pkAwards") Integer pkAwards); + /** * 查询会员血缘下达标奖衔会员 */ List listChildAwards(@Param("rangeTableName") String rangeTableName, @Param("pkAwards") Integer pkAwards, - @Param("childMemberList") List childMemberList); + @Param("childMemberList") List childMemberList); + + /** + * 更新会员奖衔 + */ + int updateCuMemberAwardsByPeriod(@Param("rangeTableName") String rangeTableName, + @Param("period") Integer period, + @Param("awardType") Integer awardType); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 20f89149..9e03dc77 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -94,6 +94,11 @@ public interface CuMemberTreeMapper extends BaseMapper { */ void truncateCuMemberTreeTable(@Param("tableName") String tableName); + /** + * 清除表数据 + */ + void clearTable(@Param("tableName") String tableName); + /** * 将会员表数据插入结算日表中 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 8d6cba58..3215d569 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -1,6 +1,7 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.base.CuMember; @@ -82,9 +83,25 @@ public interface ICuMemberRetailRangeService extends IService memberAchieveHashMap); + + /** + * 查询符合奖衔业绩条件会员 + */ + List queryEnoughAwardMember(String settleTableName, BigDecimal totalCheck, Integer pkAwards); + /** * 查询会员血缘下达标奖衔会员 */ List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList); + /** + * 更新会员奖衔 + */ + void updateCuMemberAwardsByPeriod(String rangeTableName, Integer period); + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java index 0e1ae3fd..1e66fe54 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java @@ -56,6 +56,11 @@ public interface ICuMemberTreeService extends IService { */ void truncateCuMemberTreeTable(String tableName); + /** + * 清除表数据 + */ + void clearTable(String tableName); + /** * 创建会员网体推荐人索引 * @@ -77,4 +82,5 @@ public interface ICuMemberTreeService extends IService { */ void createCuMemberTreePlaceIndex(String tableName); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java index 3c118301..19d195ee 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -10,7 +10,6 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberAchieve; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.bonus.achieve.mapper.CuMemberAchieveMapper; import com.hzs.bonus.achieve.param.MemberAchieveParam; import lombok.extern.slf4j.Slf4j; @@ -18,7 +17,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; -import java.time.temporal.ChronoUnit; import java.util.*; /** @@ -28,22 +26,11 @@ import java.util.*; @Service public class CuMemberAchieveServiceImpl extends ServiceImpl implements ICuMemberAchieveService { + @Autowired private ICuMemberTreeService cuMemberTreeService; - + @Autowired private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) { - this.cuMemberTreeService = cuMemberTreeService; - } - - @Autowired - ITransactionCommonService iTransactionCommonService; @Override public String createCuMemberAchieve(String date) { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java index 87a96399..495f3fa5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -95,7 +95,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl()); // 会员直推数据 - List retailRangeList = cuMemberRetailRangeMapper.listChildRetail(rangeTableName, Collections.singletonList(sourceMember.getPkParent())); + List retailRangeList = cuMemberRetailRangeMapper.listChildRetail(rangeTableName, Collections.singletonList(sourceMember.getPkMember())); if (CollectionUtil.isNotEmpty(retailRangeList)) { // 直推数据列表 LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 648a498c..3c8f706a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -3,9 +3,11 @@ package com.hzs.bonus.achieve.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EAwardsType; import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; @@ -44,7 +46,7 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl memberAchieveHashMap) { + if (memberAchieveHashMap.size() == 0) { + return; + } + List> listList = cuMemberBonusSettle.handleCutList(memberAchieveHashMap.values(), MagicNumberConstants.BATCH_UPDATE_NUM); + listList.forEach(list -> { + baseMapper.updateMemberParentDate(rangeTableName, list); + }); + } + + @Override + public List queryEnoughAwardMember(String settleTableName, BigDecimal totalCheck, Integer pkAwards) { + return baseMapper.queryEnoughAwardMember(settleTableName, totalCheck, pkAwards); + } + @Override public List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList) { List checkList = new ArrayList<>(); List> queryList = cuMemberBonusSettle.handleCutList(childMemberList, MagicNumberConstants.BATCH_QUERY_NUM); queryList.forEach(tmpList -> { - List tmpCheckList = baseMapper.listChildAwards(rangeTableName, pkAwards, childMemberList); + List tmpCheckList = baseMapper.listChildAwards(rangeTableName, pkAwards, tmpList); if (tmpCheckList.size() > 0) { checkList.addAll(tmpCheckList); } @@ -186,4 +204,9 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl { CuMember getByPkId(@Param("pkId") Serializable id); /** - * 更新会员奖衔根据临时表 + * 更新会员奖衔 */ - int updateCuMemberRetailAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); + int updateCuMemberAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); /** * 更新会员奖衔根据临时表 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 767b6e94..03c8b431 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -14,10 +14,11 @@ import java.util.List; public interface ICuMemberService extends IService { CuMember getByPkId(Serializable id); + /** - * 更新会员奖衔根据临时表 -- 日结 + * 更新会员奖衔 */ - void updateCuMemberRetailRangeByPeriod(Integer period); + void updateCuMemberAwardsByPeriod(Integer period); /** * 更新会员奖衔根据临时表 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index da9e3ba3..eda97baa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -23,8 +23,8 @@ public class CuMemberServiceImpl extends ServiceImpl i } @Override - public void updateCuMemberRetailRangeByPeriod(Integer period) { - baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); + public void updateCuMemberAwardsByPeriod(Integer period) { + baseMapper.updateCuMemberAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 7271337e..d298cd9e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -1,5 +1,6 @@ package com.hzs.bonus.bonus.service.impl; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.BonusFieldConstants; import com.hzs.common.core.constant.MagicNumberConstants; @@ -11,7 +12,6 @@ import com.hzs.common.domain.bonus.BdBonusDeduct; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.config.dto.BonusConfigDTO; import org.springframework.beans.factory.annotation.Autowired; @@ -234,4 +234,26 @@ public abstract class BonusSettleHandle { return bdBonusDeduct; } + + /** + * 处理订单累计业绩、累计金额 + */ + public void assortSaOrder(Map memberAchieveHashMap, List orderExtList) { + for (SaOrderExt saOrderExt : orderExtList) { + MemberAchieveParam cuMemberAchieve; + if (memberAchieveHashMap.containsKey(saOrderExt.getPkMember())) { + cuMemberAchieve = memberAchieveHashMap.get(saOrderExt.getPkMember()); + } else { + cuMemberAchieve = MemberAchieveParam.builder() + .pkMember(saOrderExt.getPkMember()) + .newPv(BigDecimal.ZERO) + .newAmount(BigDecimal.ZERO) + .build(); + memberAchieveHashMap.put(saOrderExt.getPkMember(), cuMemberAchieve); + } + cuMemberAchieve.setNewPv(ComputeUtil.computeAdd(cuMemberAchieve.getNewPv(), saOrderExt.getOrderAchieve())); + cuMemberAchieve.setNewAmount(ComputeUtil.computeAdd(cuMemberAchieve.getNewAmount(), saOrderExt.getOrderAmount())); + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index df7f5ccb..1a251c45 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,6 +1,7 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.base.service.ICuMemberService; @@ -139,7 +140,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 实时网体查询血缘伞上会员,更新秒结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue()); // 恢复秒结表奖衔 - iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod, EYesNo.YES.getIntValue()); + iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod); // 查询 昨天日结 + 今天秒结 血缘伞上+直推 memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); } else { @@ -150,7 +151,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 实时网体查询血缘上会员,更新订单支付日结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember(), EYesNo.NO.getIntValue()); // 恢复日结表奖衔 - iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod, EYesNo.NO.getIntValue()); + iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod); // 查询 订单下单日结 血缘上会员结算数据 memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); } @@ -275,8 +276,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 结算明细前一天表 String yesterdayRangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + yesterdayPeriod; - // 回退奖衔,将奖衔回退到结算前状态 - iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName); // 初始化结算网体数据(昨天数据更新到今天数据) iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(rangeTableName, yesterdayRangeTableName, isSameMonth); // 初始化结算明细数据(昨天数据更新到今天数据) @@ -286,19 +285,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List stageList = new ArrayList<>(); if (orderList.size() > 0) { - // 按照血缘,查询该会员所有伞上会员 - List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); - // 会员结算map(key:会员ID,value:结算扩展) - Map memberRangeExtMap = new HashMap<>(); - // 会员转map - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); - } - } - // 查询血缘会员明细数据(一阶段) - iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, EBonusStageStatus.NO, null); - // 奖衔 Map awardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -313,6 +299,28 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 阶段收益 List cuMemberBonusStageList = new ArrayList<>(); + // 更新血缘上个人、团队累计业绩,用于处理奖衔 + Map memberAchieveHashMap = new HashMap<>(); + // 订单累计业绩、累计金额 + assortSaOrder(memberAchieveHashMap, orderList); + // 更新血缘上业绩、金额 + iCuMemberRetailRangeService.updateMemberParentDate(rangeTableName, memberAchieveHashMap); + // 处理奖衔 + iCuMemberAwardsService.calculateCuMemberAwards(rangeTableName, awardsList, awardsMap, settleStartDate, period); + + // 按照血缘,查询该会员所有伞上会员 + List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); + // 会员结算map(key:会员ID,value:结算扩展) + Map memberRangeExtMap = new HashMap<>(); + // 会员转map + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { + if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { + memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); + } + } + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, EBonusStageStatus.NO, null); + for (SaOrderExt saOrderExt : orderList) { CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); if (null == sourceMember) { @@ -324,10 +332,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 自己消费的相关金额、业绩处理 sourceMember.setNewConsumePv(orderAchieve); - sourceMember.setConsumePv(sourceMember.getConsumePv().add(orderAchieve)); sourceMember.setMonthConsumePv(sourceMember.getMonthConsumePv().add(orderAchieve)); sourceMember.setNewConsumeAmount(orderAmount); - sourceMember.setConsumeAmount(sourceMember.getConsumeAmount().add(orderAmount)); sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount)); // // 自己计算奖衔,目前业绩都只往下传,所以此处暂时不需要处理订单会员的奖衔 // this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); @@ -367,6 +373,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 五折专区 sourceMember.setRepConsumeNewPv(sourceMember.getRepConsumeNewPv().add(orderAchieve)); sourceMember.setRepConsumeNewAmount(sourceMember.getRepConsumeNewAmount().add(orderAmount)); + // 领导级差收益 -- 来源PV this.calculateRetailRangeBonus(cuMemberBonusRangeList, memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, awardsMap, saOrderExt, sourceMember); @@ -406,12 +413,12 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (cuMemberBonusStageList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusStageList(cuMemberBonusStageList); } - if (cuMemberAwardsList.size() > 0) { - // 批量插入会员奖衔记录 - iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); - // 更新会员表奖衔数据 - iCuMemberService.updateCuMemberRetailRangeByPeriod(period); - } +// if (cuMemberAwardsList.size() > 0) { +// // 批量插入会员奖衔记录 +// iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); +// // 更新会员表奖衔数据 +// iCuMemberService.updateCuMemberAwardsByPeriod(period); +// } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); // 更新日结明细数据 @@ -1024,67 +1031,67 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { return resultList; } - /** - * 计算奖衔 - */ - private void calculateAwards(Integer period, Map memberRangeExtMap, String rangeTableName, - SaOrderExt saOrderExt, Map retailAwardsMap, List cuMemberAwardsList, - CuMemberRetailRangeExt targetMember) { - // 校验大小区会员数据 - List cuMemberRangeExtList = null; - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMember.getAwardsValue() + 5; - if (retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - - if (ComputeUtil.compareValue(targetMember.getTeamConsumePv(), bdAwards.getTotalCheck())) { - // 团队累计业绩 >= 奖衔累计业绩 - if (null == cuMemberRangeExtList) { - // 昨日结算表,查询会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); - } - // 大区 - BigDecimal consumeBigPv = BigDecimal.ZERO; - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 - BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 累计业绩 > 大区业绩,则累计就成为大区 - consumeBigPv = consumePv; - } - } - // 小区业绩 = 团队累计业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); - if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { - // 小区业绩 >= 考核小区业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证每条血缘下,满足达标数量 - List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), - cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); - if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); - targetMember.setPkAwards(bdAwards.getPkId()); - targetMember.setAwardsValue(bdAwards.getAwardsValue()); - continue; - } - } else { - // 不需要考核血缘达标,直接给奖衔 - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); - targetMember.setPkAwards(bdAwards.getPkId()); - targetMember.setAwardsValue(bdAwards.getAwardsValue()); - continue; - } - } - } - } - break; - } - } +// /** +// * 计算奖衔 +// */ +// private void calculateAwards(Integer period, Map memberRangeExtMap, String rangeTableName, +// SaOrderExt saOrderExt, Map retailAwardsMap, List cuMemberAwardsList, +// CuMemberRetailRangeExt targetMember) { +// // 校验大小区会员数据 +// List cuMemberRangeExtList = null; +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMember.getAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// +// if (ComputeUtil.compareValue(targetMember.getTeamConsumePv(), bdAwards.getTotalCheck())) { +// // 团队累计业绩 >= 奖衔累计业绩 +// if (null == cuMemberRangeExtList) { +// // 昨日结算表,查询会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); +// } +// // 大区 +// BigDecimal consumeBigPv = BigDecimal.ZERO; +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 +// BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 累计业绩 > 大区业绩,则累计就成为大区 +// consumeBigPv = consumePv; +// } +// } +// // 小区业绩 = 团队累计业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); +// if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { +// // 小区业绩 >= 考核小区业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证每条血缘下,满足达标数量 +// List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), +// cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); +// if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); +// targetMember.setPkAwards(bdAwards.getPkId()); +// targetMember.setAwardsValue(bdAwards.getAwardsValue()); +// continue; +// } +// } else { +// // 不需要考核血缘达标,直接给奖衔 +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); +// targetMember.setPkAwards(bdAwards.getPkId()); +// targetMember.setAwardsValue(bdAwards.getAwardsValue()); +// continue; +// } +// } +// } +// } +// break; +// } +// } /** * 计算团队奖衔 @@ -1101,11 +1108,9 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { while (null != targetMember) { // 累计业绩 targetMember.setTeamNewPv(targetMember.getTeamNewPv().add(orderAchieve)); - targetMember.setTeamConsumePv(targetMember.getTeamConsumePv().add(orderAchieve)); targetMember.setTeamMonthPv(targetMember.getTeamMonthPv().add(orderAchieve)); // 累计金额 targetMember.setTeamNewAmount(targetMember.getTeamNewAmount().add(orderAmount)); - targetMember.setTeamConsumeAmount(targetMember.getTeamConsumeAmount().add(orderAmount)); targetMember.setTeamMonthAmount(targetMember.getTeamMonthAmount().add(orderAmount)); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() @@ -1113,13 +1118,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 团队精品专区 targetMember.setRegTeamNewPv(targetMember.getRegTeamNewPv().add(orderAchieve)); targetMember.setRegTeamNewAmount(targetMember.getRegTeamNewAmount().add(orderAmount)); - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() + || EOrderType.DISCOUNT_ORDER.getValue() == saOrderExt.getOrderType()) { // 团队商城专区 targetMember.setRepTeamNewPv(targetMember.getRepTeamNewPv().add(orderAchieve)); targetMember.setRepTeamNewAmount(targetMember.getRepTeamNewAmount().add(orderAmount)); } - // 计算奖衔 - calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, targetMember); +// // 计算奖衔 +// calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, targetMember); targetMember = memberRangeExtMap.get(targetMember.getPkParent()); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java index 1abfc88e..150fdaf3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java @@ -3,8 +3,11 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.detail.CuMemberAwards; +import com.hzs.common.domain.system.config.BdAwards; +import java.util.Date; import java.util.List; +import java.util.Map; /** * 会员信息-奖衔升级记录 服务类 @@ -12,9 +15,9 @@ import java.util.List; public interface ICuMemberAwardsService extends IService { /** - * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天 + * 计算奖衔 */ - void calculateCuMemberRetailRangeAwardsInit(String settleDate, Integer period, String rangeTableName); + void calculateCuMemberAwards(String rangeTableName, List awardsList, Map awardsMap, Date settleDate, Integer period); /** * 批量插入奖衔记录 @@ -36,6 +39,6 @@ public interface ICuMemberAwardsService extends IService { /** * 回退奖衔 */ - void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period, Integer isToday); + void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index f879110d..f98a0506 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -1,21 +1,25 @@ package com.hzs.bonus.detail.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.detail.mapper.CuMemberAwardsMapper; +import com.hzs.common.domain.system.config.BdAwards; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; /** * 会员信息-奖衔升级记录 服务实现类 @@ -29,9 +33,11 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl awardsList, Map awardsMap, Date settleDate, Integer period) { // 回退结算表奖衔 iCuMemberTreeService.updateBackCuMemberRetailRangeAward(rangeTableName, period); // 回退会员表奖衔 @@ -41,9 +47,94 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl cuMemberAwardsList = new ArrayList<>(); + // 校验大小区会员数据(key:会员ID,value:会员推荐人列表) + Map> cuMemberRangeExtMap = new HashMap<>(); + + for (BdAwards bdAwards : awardsList) { + List cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardMember(rangeTableName, bdAwards.getTotalCheck(), bdAwards.getPkId()); + cuMemberAwardsList.addAll(this.calculateAwards(rangeTableName, bdAwards, period, cuMemberRetailRangeExtList, cuMemberRangeExtMap)); + } + if (cuMemberAwardsList.size() > 0) { + // 插入会员升级记录表 + this.saveBatchCuMemberAwards(cuMemberAwardsList); + // 更新会员表奖衔数据 + iCuMemberService.updateCuMemberAwardsByPeriod(period); + // 更新结算网体表 -- 结算日期到当前日期的所有日结算表 + iCuMemberRetailRangeService.updateCuMemberAwardsByPeriod(rangeTableName, period); + } + } + + private List calculateAwards(String rangeTableName, BdAwards bdAwards, Integer period, + List cuMemberRetailRangeExtList, Map> cuMemberRangeExtMap) { + // 只满足业绩的 + List cuMemberAwardsList = new ArrayList<>(); + + if (cuMemberRetailRangeExtList.size() > 0) { + Date nowDate = new Date(); + + cuMemberRetailRangeExtList.forEach(targetMember -> { + List cuMemberRangeExtList = cuMemberRangeExtMap.get(targetMember.getPkMember()); + if (null == cuMemberRangeExtList) { + cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); + cuMemberRangeExtMap.put(targetMember.getPkMember(), cuMemberRangeExtList); + } + // 大区 + BigDecimal consumeBigPv = BigDecimal.ZERO; + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { + // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 + BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); + if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { + // 累计业绩 > 大区业绩,则累计就成为大区 + consumeBigPv = consumePv; + } + } + // 小区业绩 = 团队累计业绩 - 大区业绩 + BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); + if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { + // 小区业绩 >= 考核小区业绩 + if (bdAwards.getPlaceDeptNum() > 0) { + if (CollectionUtil.isNotEmpty(cuMemberRangeExtList)) { + // 验证每条血缘下,满足达标数量 + List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), + cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); + if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } + } + } else { + // 不需要考核血缘达标,直接给奖衔 + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } + } + }); + } + return cuMemberAwardsList; + } + + private CuMemberAwards getCuMemberRetailAwards(CuMemberRetailRangeExt sourceRangeExt, Integer period, BdAwards bdAwards, + Integer awardType, Integer oldLevel, Date nowDate) { + CuMemberAwards cuMemberAwards = CuMemberAwards.builder() + .pkMember(sourceRangeExt.getPkMember()) + .period(period) + .upType(EUpgradeType.AUTO_UPGRADE.getValue()) + .awardType(awardType) + .oldLevel(null == oldLevel ? sourceRangeExt.getPkAwards() : oldLevel) + .newLevel(bdAwards.getPkId()) + .purchaseStatus(EYesNo.NO.getIntValue()) + .build(); + cuMemberAwards.setPkCreator(MagicNumberConstants.PK_ADMIN); + cuMemberAwards.setPkCountry(sourceRangeExt.getPkCountry()); + cuMemberAwards.setCreationTime(nowDate); + return cuMemberAwards; } @Override @@ -64,28 +155,8 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl originalCuMemberSettleMap, Integer period, List cuMemberAwardsList, CuMemberSettleExt enoughAwardsMember) { - CuMemberAwards cuMemberAwards = CuMemberAwards.builder() - .pkMember(enoughAwardsMember.getPkMember()) - .period(period) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - // 原等级 - .oldLevel(originalCuMemberSettleMap.get(enoughAwardsMember.getPkMember()).getPkOriAwards()) - .newLevel(enoughAwardsMember.getPkAwards()) - // 默认不免考 - .purchaseStatus(EYesNo.NO.getIntValue()) - .build(); - cuMemberAwards.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberAwards.setPkCountry(enoughAwardsMember.getPkSettleCountry()); - cuMemberAwardsList.add(cuMemberAwards); } } diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 9aeeb940..7393201f 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -943,6 +943,48 @@ order by a.pk_parent, a.pay_time + + + + merge into ${rangeTableName} a + using ( + select pk_member, + sum(consume_pv) consume_pv, + sum(consume_amount) consume_amount, + sum(team_consume_pv) team_consume_pv, + sum(team_consume_amount) team_consume_amount + from ( + + SELECT cmr.pk_member, + DECODE(cmr.pk_member, #{item.pkMember}, #{item.newPv}, 0) AS consume_pv, + DECODE(cmr.pk_member, #{item.pkMember}, #{item.newAmount}, 0) AS consume_amount, + DECODE(cmr.pk_member, #{item.pkMember}, 0, #{item.newPv}) AS team_consume_pv, + DECODE(cmr.pk_member, #{item.pkMember}, 0, #{item.newAmount}) AS team_consume_amount + FROM ${rangeTableName} cmr + START WITH cmr.pk_member = #{item.pkMember} + CONNECT BY cmr.pk_member = PRIOR cmr.pk_parent + + ) tmp + group by pk_member + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + a.consume_pv = a.consume_pv + b.consume_pv, + a.consume_amount = a.consume_amount + b.consume_amount, + a.team_consume_pv = a.team_consume_pv + b.team_consume_pv, + a.team_consume_amount = a.team_consume_amount + b.team_consume_amount + + + + + + + + + merge into ${rangeTableName} a + using ( + select pk_member, max(new_level) pk_awards + from cu_member_awards + where period = #{period} and award_type = #{awardType} + and del_flag = 0 + group by pk_member + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + + a.pk_awards = b.pk_awards + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 05bcb42f..b193e144 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -77,14 +77,11 @@ - - - @@ -96,10 +93,7 @@ - - - @@ -131,8 +125,6 @@ is_bus_license NUMBER(1) default 1 not null, is_maker_space NUMBER(1) default 1 not null, pk_country number(4) default 1 not null, - store_level NUMBER(2) default 0, - is_maker_gift NUMBER(1) default 1, expire_status number(1) default 1
@@ -194,10 +186,7 @@ UPGRADE_Blo_NEW_PV NUMBER(17,6) default 0 not null, REPURCHASE_Blo_NEW_PV NUMBER(17,6) default 0 not null, HI_FUN_Blo_NEW_PV NUMBER(17,6) default 0 not null, - MALL_Blo_NEW_PV NUMBER(17,6) default 0 not null, - min_achieve number(17,6) default 0 not null, - round NUMBER(6) default 0 not null, - second NUMBER(4) default 1 not null + MALL_Blo_NEW_PV NUMBER(17,6) default 0 not null @@ -206,7 +195,7 @@ a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance, register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code, repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade, - min_achieve,round,second,bg.grade_value,store_level,expire_status from ( + bg.grade_value,expire_status from ( ) a inner join bd_grade bg @@ -265,7 +254,7 @@ a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance, register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code, repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade, - min_achieve,round,second,store_level,expire_status + expire_status from ${settleTableName} where pay_status = 1 start with pk_member = #{item} @@ -568,6 +557,11 @@ truncate table ${tableName} + + + delete from ${tableName} + + - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml index 6f1beb34..1567e354 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml @@ -85,7 +85,8 @@ - + + merge into cu_member a using ( select pk_member, max(new_level) pk_awards @@ -100,9 +101,6 @@ a.pk_awards = b.pk_awards, - - a.pk_range_awards = b.pk_awards, - a.modified_time = sysdate diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml index 3780ae49..40fd08df 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml @@ -23,22 +23,6 @@ - - - insert ALL - - into cu_member_awards ( - pk_member, period, up_type, old_level, new_level, - purchase_status, award_type, pk_creator, pk_country, system_type - ) - values ( - #{item.pkMember}, #{item.period}, #{item.upType}, #{item.oldLevel}, #{item.newLevel}, - #{item.purchaseStatus}, #{item.awardType}, #{item.pkCreator}, #{item.pkCountry}, #{item.systemType} - ) - - SELECT 1 FROM dual - - update cu_member_awards set del_flag = 1, modified_time = sysdate, PK_MODIFIED = 1 where period= #{period} and pk_member in @@ -61,39 +45,21 @@ update set a.assess_target = b.assess_target,a.assess_status = b.assess_status - - merge into ${rangeTableName} a - using ( - select cw.* - from cu_member_awards cw - inner join ( - select ca.pk_member, min(ca.pk_id) pk_id - from cu_member_awards ca - inner join bd_awards bw - on ca.new_level = bw.pk_id - and bw.del_flag = 0 - and bw.awards_value >= 5 - where ca.del_flag = 0 - and ca.up_type = 1 - and ca.period = #{period} - and ca.award_type = #{awardType} - and ca.pk_member in - (select pk_id - from cu_member start - with pk_id = #{pkMember} - connect by prior pk_parent = pk_id) - group by ca.pk_member - ) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0 - ) b on (a.pk_member = b.pk_member) - when matched then - update set - - a.pk_awards = b.old_level - - - a.pk_share_awards = b.old_level - - + + + insert ALL + + into cu_member_awards ( + pk_member, period, up_type, old_level, new_level, + purchase_status, award_type, pk_creator, pk_country + ) + values ( + #{item.pkMember}, #{item.period}, #{item.upType}, #{item.oldLevel}, #{item.newLevel}, + #{item.purchaseStatus}, #{item.awardType}, #{item.pkCreator}, #{item.pkCountry} + ) + + SELECT 1 FROM dual + @@ -115,14 +81,6 @@ #{item.pkId} - - + + merge into ${rangeTableName} a + using ( + select cw.* + from cu_member_awards cw + inner join ( + select ca.pk_member, min(ca.pk_id) pk_id + from cu_member_awards ca + inner join bd_awards bw + on ca.new_level = bw.pk_id + and bw.del_flag = 0 + and bw.awards_value >= 5 + where ca.del_flag = 0 + and ca.up_type = 1 + and ca.period = #{period} + and ca.award_type = #{awardType} + and ca.pk_member in + (select pk_id + from cu_member start + with pk_id = #{pkMember} + connect by prior pk_parent = pk_id) + group by ca.pk_member + ) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0 + ) b on (a.pk_member = b.pk_member) + when matched then + update set + + a.pk_awards = b.old_level + + + - select bl.pk_id,bonus_type,first_order,second_order,third_order,fourth_order,bl.pk_country, - cal_type,bd.pk_grade from bd_bonus_direct_loop bl - inner join BD_LOOP_DETAILS bd - on bl.pk_id = bd.pk_bonus_direct - where bl.del_flag=0 and bd.del_flag=0 - - diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberSettleExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberSettleExt.java index 65523da5..ae1744e1 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberSettleExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/ext/CuMemberSettleExt.java @@ -7,11 +7,7 @@ import lombok.EqualsAndHashCode; import java.math.BigDecimal; /** - * @Description: 日结算表,表内存储网体关系、会员业绩 - * @Author: sui q - * @Time: 2022/10/31 14:22 - * @Classname: CuMemberTreeExt - * @PackageName: com.hzs.common.domain.member.ext + * 日结算表,表内存储网体关系、会员业绩 */ @EqualsAndHashCode(callSuper = true) @Data @@ -300,21 +296,6 @@ public class CuMemberSettleExt extends CuMemberTree { */ private BigDecimal mallBloNewPv; - /** - * 循环中最小业绩 - */ - private BigDecimal minAchieve; - - /** - * 轮 - */ - private Integer round; - - /** - * 次 - */ - private Integer second; - /** * 考核类型,不入库,只用来区分复购考核跟分红考核 */ @@ -363,30 +344,11 @@ public class CuMemberSettleExt extends CuMemberTree { */ private BigDecimal historyPerformancePv; - /** - * 店铺等级 - */ - private Integer storeLevel; - - /** - * 购买创客礼包 - */ - private Integer isMakerGift; /** * 有效状态(1=有效期,2=休止期,3=已终止) */ private Integer expireStatus; - /** - * 是否买过注册 - */ - private Integer isPayReg; - - /** - * 福利比例 - */ - private BigDecimal abonusRatio; - /** * 实发收益总计 */ diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDirectLoop.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDirectLoop.java index 2902e6ed..928387bf 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDirectLoop.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdBonusDirectLoop.java @@ -12,12 +12,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 直推循环配置 - *

- * - * @author zhangjing - * @since 2022-11-03 */ @Data @EqualsAndHashCode(callSuper = true) @@ -77,5 +72,4 @@ public class BdBonusDirectLoop extends BaseEntity { private Integer takeValueType; - } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRepoDirectPush.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRepoDirectPush.java index 60cd0306..d72aac15 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRepoDirectPush.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/BdRepoDirectPush.java @@ -12,12 +12,7 @@ import lombok.experimental.Accessors; import java.math.BigDecimal; /** - *

* 复购直推配置 - *

- * - * @author zhangjing - * @since 2023-06-29 */ @Data @EqualsAndHashCode(callSuper = true) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdBonusDirectLoopExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdBonusDirectLoopExt.java index fa9f80f6..be08afb4 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdBonusDirectLoopExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/system/config/ext/BdBonusDirectLoopExt.java @@ -2,15 +2,11 @@ package com.hzs.common.domain.system.config.ext; import com.hzs.common.domain.system.config.*; import lombok.Data; + import java.util.List; /** - *

* 直推循环配置 - *

- * - * @author zhangjing - * @since 2022-11-03 */ @Data public class BdBonusDirectLoopExt extends BdBonusDirectLoop { From 5f4a6b86982186aa31e18ff87973e4296f01a302 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 30 Sep 2025 09:43:04 +0800 Subject: [PATCH 354/362] =?UTF-8?q?##=20bug425=20=E7=89=A9=E6=B5=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E8=8F=9C=E5=8D=95=E4=B8=8B=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E8=BD=AC=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/SaDeliverUnhandledController.java | 2 ++ .../main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java | 2 -- .../hzs/sale/order/controller/manager/SaOrderController.java | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java index 06f40958..f19f0047 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java @@ -124,6 +124,8 @@ public class SaDeliverUnhandledController extends BaseController { for (DeliverUnhandledVO deliverUnhandled : resultList) { // 省市区处理 OrderUtil.handleOrderAddress(areaMap, deliverUnhandled); + // 订单类型枚举转换 + deliverUnhandled.setOrderTypeVal(EOrderType.getLabelByValue(deliverUnhandled.getOrderType())); } } return getDataTable(resultList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java index 755d15fe..e60b76a1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java @@ -36,8 +36,6 @@ public class DeliverUnhandledVO { /** * 订单类型(EOrderType) */ - @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) private Integer orderType; /** * 订单类型显示 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java index 044a559f..cfe64388 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java @@ -603,7 +603,7 @@ public class SaOrderController extends ParentOrderController { // 获取管理员权限(角色地区范围、体系列表、团队列表) UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); - param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); + param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); param.setVertexIdList(userAuthorityDTO.getVertexIdList()); param.setTeamList(userAuthorityDTO.getUserTeamList()); @@ -622,6 +622,8 @@ public class SaOrderController extends ParentOrderController { if (vo.getRecCounty() != null) { vo.setRecCountyName(areaMap.get(vo.getRecCounty())); } + // 订单类型枚举转换 + vo.setOrderTypeVal(EOrderType.getLabelByValue(vo.getOrderType())); } return getDataTable(resultList); } From 9ea951c73671f91109d0b1ad3b019f9d305e4803 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 30 Sep 2025 09:44:20 +0800 Subject: [PATCH 355/362] =?UTF-8?q?##=20bug425=20=E7=89=A9=E6=B5=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E8=8F=9C=E5=8D=95=E4=B8=8B=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E8=BD=AC=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java | 1 - 1 file changed, 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java index af97150e..03655e1b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java @@ -33,7 +33,6 @@ public class OrderInvoicingVO implements Serializable { /** * 订单类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) private Integer orderType; /** * 订单类型显示 From 1174abd26a961a7c09e520ac5a50482edc07564b Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 30 Sep 2025 10:39:02 +0800 Subject: [PATCH 356/362] =?UTF-8?q?##=20bug425=20=E7=89=A9=E6=B5=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E8=8F=9C=E5=8D=95=E4=B8=8B=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E8=BD=AC=E6=9E=9A=E4=B8=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/SaDeliverUnhandledController.java | 38 +++++++++++++++---- .../sale/deliver/vo/DeliverUnhandledVO.java | 8 +--- .../controller/manager/SaOrderController.java | 4 ++ .../hzs/sale/order/vo/OrderInvoicingVO.java | 2 - .../com/hzs/common/core/enums/ESaleType.java | 12 ++++++ 5 files changed, 47 insertions(+), 17 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java index f19f0047..f127040f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java @@ -126,6 +126,20 @@ public class SaDeliverUnhandledController extends BaseController { OrderUtil.handleOrderAddress(areaMap, deliverUnhandled); // 订单类型枚举转换 deliverUnhandled.setOrderTypeVal(EOrderType.getLabelByValue(deliverUnhandled.getOrderType())); + // 销售类型 + deliverUnhandled.setIsGiftVal(ESaleType.getLabelByValue(deliverUnhandled.getIsGift())); + // 发货类型 + deliverUnhandled.setShippingChannelVal(EShippingChannel.getLabelByValue(deliverUnhandled.getShippingChannel())); + // 订单状态 + deliverUnhandled.setOrderStatusVal(EOrderStatus.getLabelByValue(deliverUnhandled.getOrderStatus())); + // 发货方式 + deliverUnhandled.setDeliveryWayVal(EDelivery.getLabelByValue(deliverUnhandled.getDeliveryWay())); + // 供应方式 + deliverUnhandled.setOperateScopeVal(ESupplyWay.getLabelByVal(deliverUnhandled.getOperateScope())); + // 运输方式 + deliverUnhandled.setTranTypeVal(ETransportType.getLabelByValue(deliverUnhandled.getTranType())); + // 预售状态 + deliverUnhandled.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(deliverUnhandled.getPreSaleStatus())); } } return getDataTable(resultList); @@ -176,14 +190,22 @@ public class SaDeliverUnhandledController extends BaseController { // 省市区处理 OrderUtil.handleOrderAddress(areaMap, deliverUnhandled); - deliverUnhandled.setIsGiftVal(transactionMap.get(EnumsPrefixConstants.E_SALE_TYPE + deliverUnhandled.getIsGift())); - deliverUnhandled.setDeliveryWayVal(transactionMap.get(EnumsPrefixConstants.DELIVERY + deliverUnhandled.getDeliveryWay())); - deliverUnhandled.setOperateScopeVal(transactionMap.get(EnumsPrefixConstants.SUPPLY_WAY + deliverUnhandled.getOperateScope())); - deliverUnhandled.setShippingChannelVal(transactionMap.get(EnumsPrefixConstants.E_SHIPPING_CHANNEL + deliverUnhandled.getShippingChannel())); - deliverUnhandled.setTranTypeVal(transactionMap.get(EnumsPrefixConstants.ENU_TRA + deliverUnhandled.getTranType())); - deliverUnhandled.setPreSaleStatusVal(transactionMap.get(EnumsPrefixConstants.PRESALE_STATUS + deliverUnhandled.getPreSaleStatus())); - deliverUnhandled.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + deliverUnhandled.getOrderType())); - deliverUnhandled.setOrderStatusVal(transactionMap.get(EnumsPrefixConstants.ORDER_STATUS + deliverUnhandled.getOrderStatus())); + // 订单类型枚举转换 + deliverUnhandled.setOrderTypeVal(EOrderType.getLabelByValue(deliverUnhandled.getOrderType())); + // 销售类型 + deliverUnhandled.setIsGiftVal(ESaleType.getLabelByValue(deliverUnhandled.getIsGift())); + // 发货类型 + deliverUnhandled.setShippingChannelVal(EShippingChannel.getLabelByValue(deliverUnhandled.getShippingChannel())); + // 订单状态 + deliverUnhandled.setOrderStatusVal(EOrderStatus.getLabelByValue(deliverUnhandled.getOrderStatus())); + // 发货方式 + deliverUnhandled.setDeliveryWayVal(EDelivery.getLabelByValue(deliverUnhandled.getDeliveryWay())); + // 供应方式 + deliverUnhandled.setOperateScopeVal(ESupplyWay.getLabelByVal(deliverUnhandled.getOperateScope())); + // 运输方式 + deliverUnhandled.setTranTypeVal(ETransportType.getLabelByValue(deliverUnhandled.getTranType())); + // 预售状态 + deliverUnhandled.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(deliverUnhandled.getPreSaleStatus())); } } ExcelUtil util = new ExcelUtil<>(DeliverUnhandledVO.class); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java index e60b76a1..fac3344f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java @@ -6,6 +6,7 @@ import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.Data; +import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.Date; @@ -89,7 +90,6 @@ public class DeliverUnhandledVO { /** * 销售类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.E_SALE_TYPE) @JsonIgnore private Integer isGift; /** @@ -153,7 +153,6 @@ public class DeliverUnhandledVO { /** * 发货类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.E_SHIPPING_CHANNEL) @JsonIgnore private Integer shippingChannel; /** @@ -178,7 +177,6 @@ public class DeliverUnhandledVO { /** * 订单状态(EOrderStatus) */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_STATUS) private Integer orderStatus; /** * 订单状态显示 @@ -190,7 +188,6 @@ public class DeliverUnhandledVO { * 发货方式(EDelivery) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.DELIVERY) private Integer deliveryWay; /** * 发货方式显示 @@ -202,7 +199,6 @@ public class DeliverUnhandledVO { * 供应方式(ESupplyWay) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.SUPPLY_WAY) private Integer operateScope; /** * 供应方式显示 @@ -214,7 +210,6 @@ public class DeliverUnhandledVO { * 运输方式(ETransportType) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.ENU_TRA) private Integer tranType; /** * 运输方式显示 @@ -226,7 +221,6 @@ public class DeliverUnhandledVO { * 预售状态(EPresaleStatus) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.PRESALE_STATUS) private Integer preSaleStatus; /** * 预售状态显示 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java index cfe64388..4ba0d934 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java @@ -624,6 +624,10 @@ public class SaOrderController extends ParentOrderController { } // 订单类型枚举转换 vo.setOrderTypeVal(EOrderType.getLabelByValue(vo.getOrderType())); + // 发货方式 + vo.setDeliveryWayVal(EDelivery.getLabelByValue(vo.getDeliveryWay())); + // 供应方式 + vo.setPayTypeVal(EPayType.getEnumByValue(vo.getPayType()).getLabel()); } return getDataTable(resultList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java index 03655e1b..40e53f95 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java @@ -121,7 +121,6 @@ public class OrderInvoicingVO implements Serializable { /** * 发货方式 */ - @Transaction(transactionKey = EnumsPrefixConstants.DELIVERY) private Integer deliveryWay; /** * 发货方式显示 @@ -131,7 +130,6 @@ public class OrderInvoicingVO implements Serializable { /** * 支付方式 */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_PAY_TYPE) private Integer payType; /** * 支付方式显示 diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaleType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaleType.java index ac36549c..2ed6942c 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaleType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESaleType.java @@ -34,4 +34,16 @@ public enum ESaleType { */ private final String key; + public static String getLabelByValue(Integer value) { + if (null == value) { + return ""; + } + for (ESaleType enums : ESaleType.values()) { + if (enums.getValue() == value) { + return enums.getLabel(); + } + } + return ""; + } + } From ea80a5cac52f9389ff7dc3eeb1c03213c60847bb Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 30 Sep 2025 10:55:25 +0800 Subject: [PATCH 357/362] =?UTF-8?q?##=20=E8=AE=A2=E5=8D=95=E5=BC=80?= =?UTF-8?q?=E7=A5=A8=E6=9E=9A=E4=B8=BE=E6=9B=BF=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/sale/order/controller/manager/SaOrderController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java index 4ba0d934..3f6e335f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java @@ -626,8 +626,8 @@ public class SaOrderController extends ParentOrderController { vo.setOrderTypeVal(EOrderType.getLabelByValue(vo.getOrderType())); // 发货方式 vo.setDeliveryWayVal(EDelivery.getLabelByValue(vo.getDeliveryWay())); - // 供应方式 - vo.setPayTypeVal(EPayType.getEnumByValue(vo.getPayType()).getLabel()); + // 支付方式 + vo.setPayTypeVal(EOrderPayType.getLabelByValue(vo.getPayType())); } return getDataTable(resultList); } From ceadd71b51afcf8b7b12c9ce28637d81382aca35 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 30 Sep 2025 11:15:31 +0800 Subject: [PATCH 358/362] =?UTF-8?q?##=20=E5=A5=96=E8=A1=94=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E5=A4=84=E7=90=86=E6=96=B9=E5=BC=8F=E4=BC=98=E5=8C=96?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/CuMemberRetailRangeMapper.java | 11 ++- .../service/ICuMemberRetailRangeService.java | 8 +- .../impl/CuMemberRetailRangeServiceImpl.java | 10 ++- .../service/impl/BonusSettleRangeHandle.java | 26 ++---- .../service/ICuMemberAwardsService.java | 3 +- .../impl/CuMemberAwardsServiceImpl.java | 87 +++++++++++-------- .../achieve/CuMemberRetailRangeMapper.xml | 29 ++++++- 7 files changed, 110 insertions(+), 64 deletions(-) diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 34944456..19d5e8b6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -133,7 +133,16 @@ public interface CuMemberRetailRangeMapper extends BaseMapper queryEnoughAwardMember(@Param("rangeTableName") String rangeTableName, @Param("totalCheck") BigDecimal totalCheck, - @Param("pkAwards") Integer pkAwards); + @Param("awardsValue") Integer awardsValue); + + /** + * 查询符合奖衔业绩、安置条件会员 + */ + List queryEnoughAwardPlaceMember(@Param("rangeTableName") String rangeTableName, + @Param("awardsValue") Integer awardsValue, + @Param("totalCheck") BigDecimal totalCheck, + @Param("placeDeptNum") Integer placeDeptNum, + @Param("checkAwardsValue") Integer checkAwardsValue); /** * 查询会员血缘下达标奖衔会员 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index 3215d569..5d0f7e43 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -91,7 +91,13 @@ public interface ICuMemberRetailRangeService extends IService queryEnoughAwardMember(String settleTableName, BigDecimal totalCheck, Integer pkAwards); + List queryEnoughAwardMember(String rangeTableName, BigDecimal totalCheck, Integer awardsValue); + + /** + * 查询符合奖衔业绩、安置条件会员 + */ + List queryEnoughAwardPlaceMember(String rangeTableName, Integer awardsValue, BigDecimal totalCheck, Integer placeDeptNum, + Integer checkAwardsValue); /** * 查询会员血缘下达标奖衔会员 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 3c8f706a..8afe98de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -187,8 +187,14 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl queryEnoughAwardMember(String settleTableName, BigDecimal totalCheck, Integer pkAwards) { - return baseMapper.queryEnoughAwardMember(settleTableName, totalCheck, pkAwards); + public List queryEnoughAwardMember(String rangeTableName, BigDecimal totalCheck, Integer awardsValue) { + return baseMapper.queryEnoughAwardMember(rangeTableName, totalCheck, awardsValue); + } + + @Override + public List queryEnoughAwardPlaceMember(String rangeTableName, Integer awardsValue, BigDecimal totalCheck, Integer placeDeptNum, + Integer checkAwardsValue) { + return baseMapper.queryEnoughAwardPlaceMember(rangeTableName, awardsValue, totalCheck, placeDeptNum, checkAwardsValue); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 1a251c45..9d911b55 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -290,8 +290,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { List awardsList = bonusConfigDTO.getAwardsList(); awardsList.forEach(bdAwards -> awardsMap.put(bdAwards.getAwardsValue(), bdAwards)); - // 会员奖衔升级记录 - List cuMemberAwardsList = new ArrayList<>(); // 直推收益、见点收益 List cuMemberBonusPushList = new ArrayList<>(); // 领导奖收益、平级奖收益 @@ -306,7 +304,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 更新血缘上业绩、金额 iCuMemberRetailRangeService.updateMemberParentDate(rangeTableName, memberAchieveHashMap); // 处理奖衔 - iCuMemberAwardsService.calculateCuMemberAwards(rangeTableName, awardsList, awardsMap, settleStartDate, period); + iCuMemberAwardsService.calculateCuMemberAwards(rangeTableName, awardsList, settleStartDate, period); // 按照血缘,查询该会员所有伞上会员 List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); @@ -337,8 +335,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount)); // // 自己计算奖衔,目前业绩都只往下传,所以此处暂时不需要处理订单会员的奖衔 // this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); - // 累计团队业绩、金额 + 计算奖衔 - cuMemberAwardsList.addAll(this.calculateParentAwards(period, memberRangeExtMap, rangeTableName, sourceMember, saOrderExt, awardsMap)); + // 累计团队业绩、金额 + this.calculateParentDate(memberRangeExtMap, sourceMember, saOrderExt); if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { @@ -413,12 +411,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (cuMemberBonusStageList.size() > 0) { bonusRecordDetailVO.setCuMemberBonusStageList(cuMemberBonusStageList); } -// if (cuMemberAwardsList.size() > 0) { -// // 批量插入会员奖衔记录 -// iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); -// // 更新会员表奖衔数据 -// iCuMemberService.updateCuMemberAwardsByPeriod(period); -// } // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); // 更新日结明细数据 @@ -1094,12 +1086,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // } /** - * 计算团队奖衔 + * 计算团队数据 */ - private List calculateParentAwards(Integer period, Map memberRangeExtMap, String rangeTableName, - CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt, Map retailAwardsMap) { - // 会员奖衔升级列表 - List cuMemberAwardsList = new ArrayList<>(); + private void calculateParentDate(Map memberRangeExtMap, CuMemberRetailRangeExt sourceMember, + SaOrderExt saOrderExt) { // 订单会员的推荐人 CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent()); @@ -1124,12 +1114,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { targetMember.setRepTeamNewPv(targetMember.getRepTeamNewPv().add(orderAchieve)); targetMember.setRepTeamNewAmount(targetMember.getRepTeamNewAmount().add(orderAmount)); } -// // 计算奖衔 -// calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, targetMember); - targetMember = memberRangeExtMap.get(targetMember.getPkParent()); } - return cuMemberAwardsList; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java index 150fdaf3..e46a11e4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java @@ -7,7 +7,6 @@ import com.hzs.common.domain.system.config.BdAwards; import java.util.Date; import java.util.List; -import java.util.Map; /** * 会员信息-奖衔升级记录 服务类 @@ -17,7 +16,7 @@ public interface ICuMemberAwardsService extends IService { /** * 计算奖衔 */ - void calculateCuMemberAwards(String rangeTableName, List awardsList, Map awardsMap, Date settleDate, Integer period); + void calculateCuMemberAwards(String rangeTableName, List awardsList, Date settleDate, Integer period); /** * 批量插入奖衔记录 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index f98a0506..93fcad52 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -19,7 +19,6 @@ import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.*; -import java.util.stream.Collectors; /** * 会员信息-奖衔升级记录 服务实现类 @@ -37,7 +36,7 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl awardsList, Map awardsMap, Date settleDate, Integer period) { + public void calculateCuMemberAwards(String rangeTableName, List awardsList, Date settleDate, Integer period) { // 回退结算表奖衔 iCuMemberTreeService.updateBackCuMemberRetailRangeAward(rangeTableName, period); // 回退会员表奖衔 @@ -56,7 +55,14 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl> cuMemberRangeExtMap = new HashMap<>(); for (BdAwards bdAwards : awardsList) { - List cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardMember(rangeTableName, bdAwards.getTotalCheck(), bdAwards.getPkId()); + List cuMemberRetailRangeExtList; + if (bdAwards.getPlaceDeptNum() > 0) { + BdAwards checkAwards = awardsList.stream().filter(tmpDate -> tmpDate.getPkId().equals(bdAwards.getPkCheckAwardsLeft())).findFirst().get(); + cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardPlaceMember(rangeTableName, bdAwards.getAwardsValue(), + bdAwards.getTotalCheck(), bdAwards.getPlaceDeptNum(), checkAwards.getAwardsValue()); + } else { + cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardMember(rangeTableName, bdAwards.getTotalCheck(), bdAwards.getAwardsValue()); + } cuMemberAwardsList.addAll(this.calculateAwards(rangeTableName, bdAwards, period, cuMemberRetailRangeExtList, cuMemberRangeExtMap)); } if (cuMemberAwardsList.size() > 0) { @@ -70,7 +76,7 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl calculateAwards(String rangeTableName, BdAwards bdAwards, Integer period, - List cuMemberRetailRangeExtList, Map> cuMemberRangeExtMap) { + List cuMemberRetailRangeExtList, Map> cuMemberRangeExtMap) { // 只满足业绩的 List cuMemberAwardsList = new ArrayList<>(); @@ -78,41 +84,48 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl { - List cuMemberRangeExtList = cuMemberRangeExtMap.get(targetMember.getPkMember()); - if (null == cuMemberRangeExtList) { - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); - cuMemberRangeExtMap.put(targetMember.getPkMember(), cuMemberRangeExtList); - } - // 大区 - BigDecimal consumeBigPv = BigDecimal.ZERO; - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 - BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 累计业绩 > 大区业绩,则累计就成为大区 - consumeBigPv = consumePv; + if (bdAwards.getPlaceDeptNum() > 0 && bdAwards.getCommunityCheck().compareTo(BigDecimal.ZERO) == 0) { + // 需要校验部门奖衔并且小区业绩为0的 + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } else { + List cuMemberRangeExtList = cuMemberRangeExtMap.get(targetMember.getPkMember()); + if (null == cuMemberRangeExtList) { + cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); + cuMemberRangeExtMap.put(targetMember.getPkMember(), cuMemberRangeExtList); } - } - // 小区业绩 = 团队累计业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); - if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { - // 小区业绩 >= 考核小区业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - if (CollectionUtil.isNotEmpty(cuMemberRangeExtList)) { - // 验证每条血缘下,满足达标数量 - List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), - cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); - if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); - targetMember.setPkAwards(bdAwards.getPkId()); - targetMember.setAwardsValue(bdAwards.getAwardsValue()); - } + // 大区 + BigDecimal consumeBigPv = BigDecimal.ZERO; + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { + // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 + BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); + if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { + // 累计业绩 > 大区业绩,则累计就成为大区 + consumeBigPv = consumePv; + } + } + // 小区业绩 = 团队累计业绩 - 大区业绩 + BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); + if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { + // 小区业绩 >= 考核小区业绩 + if (bdAwards.getPlaceDeptNum() > 0) { + if (CollectionUtil.isNotEmpty(cuMemberRangeExtList)) { + // 验证每条血缘下,满足达标数量 + List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), + Collections.singletonList(targetMember.getPkMember())); + if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } + } + } else { + // 不需要考核血缘达标,直接给奖衔 + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); } - } else { - // 不需要考核血缘达标,直接给奖衔 - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); - targetMember.setPkAwards(bdAwards.getPkId()); - targetMember.setAwardsValue(bdAwards.getAwardsValue()); } } }); diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 7393201f..1210480f 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -980,9 +980,36 @@ + + + From 4c09f65e57307393da96bc1820a9c320521d18e9 Mon Sep 17 00:00:00 2001 From: woody Date: Tue, 30 Sep 2025 11:19:01 +0800 Subject: [PATCH 359/362] =?UTF-8?q?feat(RetailMemberVO):=20=E4=BC=9A?= =?UTF-8?q?=E5=91=98=E4=BF=A1=E6=81=AF=E9=A1=B5=E5=AF=BC=E5=87=BA=E7=A7=BB?= =?UTF-8?q?=E9=99=A4=E6=94=B6=E7=9B=8A=E5=8C=BA=E5=9F=9F=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=EF=BC=8C=E6=B3=A8=E5=86=8C=E4=B8=9A=E7=BB=A9=E7=A7=BB=E9=99=A4?= =?UTF-8?q?=E8=B4=A7=E5=B8=81=E7=AC=A6=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/vo/RetailMemberVO.java | 21 +------------------ .../mapper/member/base/CuMemberMapper.xml | 20 +----------------- 2 files changed, 2 insertions(+), 39 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java index 39db0474..7169ca10 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java @@ -118,7 +118,7 @@ public class RetailMemberVO implements Serializable { /** * 消费业绩 注册业绩 */ - @Excel(name = "注册业绩($)") + @Excel(name = "注册业绩") private BigDecimal consumeAchieve; /** * 隶属体系 @@ -161,26 +161,7 @@ public class RetailMemberVO implements Serializable { private String memberAccountVal; @Excel(name = "收益状态") private String incomeStatusVal; - /** - * 省 - */ - @Excel(name = "收益区省") - private String giftProvince; - private Integer province; - - /** - * 市 - */ - @Excel(name = "收益区市") - private String giftCity; - private Integer city; - /** - * 县(区) - */ - @Excel(name = "收益区县(区)") - private String giftCounty; - private Integer county; /** * 创建时间 */ diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index bea85627..2eb85c36 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -1993,10 +1993,7 @@ awar.awards_name as pkRangeAwardsVal, awm.awards_name as pkMaxAwardsVal, par.member_code parMemberCode, - par.member_name parMemberName, - pr.NAME giftProvince, - cty.NAME giftCity, - con.NAME giftCounty + par.member_name parMemberName FROM cu_member cm inner join CU_MEMBER_ACCOUNT cma on cm.pk_id = cma.PK_MEMBER @@ -2018,12 +2015,6 @@ on cmt.pk_id = cm.pk_team_code left join CU_MEMBER_RETAIL_REGION cmrr on cm.pk_id = cmrr.PK_MEMBER and cmrr.effective = 0 and cmrr.del_flag = 0 - left join BD_AREA pr - on pr.pk_id = cmrr.PROVINCE - left join BD_AREA cty - on cty.pk_id = cmrr.CITY - left join BD_AREA con - on con.pk_id = cmrr.COUNTY WHERE cm.del_flag = 0 and cm.pk_id in ( SELECT cm.PK_ID @@ -2146,15 +2137,6 @@ and cma.IS_CONSUME=#{isConsume} - - and cmrr.PROVINCE=#{province} - - - and cmrr.CITY=#{city} - - - and cmrr.COUNTY=#{county} - and ver.pk_member in From b471482af2d85c0032b70b661432844b9f4c8172 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 9 Oct 2025 10:25:32 +0800 Subject: [PATCH 360/362] =?UTF-8?q?##=20bug431=20=E4=B8=9A=E7=BB=A9?= =?UTF-8?q?=E6=B1=87=E6=80=BB=E6=B1=87=E6=80=BB=E9=A1=B5=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CuMemberServiceImpl.java | 46 ++++++++++-------- .../hzs/member/census/vo/CensusSummaryVo.java | 47 +++++-------------- 2 files changed, 37 insertions(+), 56 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 9fd7c590..8fca1f7c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3191,7 +3191,7 @@ public class CuMemberServiceImpl extends ServiceImpl i CensusSummaryVo censusSummaryVo = new CensusSummaryVo(); censusSummaryVo.setSettleDate(day); - // 注册 + // 精品 BigDecimal reAmount = BigDecimal.ZERO; BigDecimal reAchieve = BigDecimal.ZERO; if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()) != null) { @@ -3201,36 +3201,42 @@ public class CuMemberServiceImpl extends ServiceImpl i censusSummaryVo.setRegisterAmount(reAmount); censusSummaryVo.setRegisterPv(reAchieve); - // 升级 + // 甄选 BigDecimal upAmount = BigDecimal.ZERO; BigDecimal upAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()) != null) { + upAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAmount(); + upAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()).getAchieve(); + } censusSummaryVo.setUpgradeAmount(upAmount); censusSummaryVo.setUpgradePv(upAchieve); - // 首购 - censusSummaryVo.setFirstPurchaseAmount(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount())); - censusSummaryVo.setFirstPurchasePv(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv())); - - // 复购订单 - BigDecimal repurchaseAmount = BigDecimal.ZERO; - BigDecimal repurchaseAchieve = BigDecimal.ZERO; + // 商城 + BigDecimal repAmount = BigDecimal.ZERO; + BigDecimal repAchieve = BigDecimal.ZERO; if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()) != null) { - repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); - repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); - } - // 复消 - if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { - repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.RETAIL_CONSUME.getValue()).getAmount()); + repAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); + repAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); } + censusSummaryVo.setRepurchaseAmount(repAmount); + censusSummaryVo.setRepurchasePv(repAchieve); - // 复购 - censusSummaryVo.setRepurchaseAmount(repurchaseAmount); - censusSummaryVo.setRepurchasePv(repurchaseAchieve); + // 五折 + BigDecimal disAmount = BigDecimal.ZERO; + BigDecimal disAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()) != null) { + disAmount = memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()).getAmount(); + disAchieve = memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setDiscountAmount(disAmount); + censusSummaryVo.setDiscountPv(disAchieve); // 金额总计 - censusSummaryVo.setAmountTotal(censusSummaryVo.getFirstPurchaseAmount().add(censusSummaryVo.getRepurchaseAmount())); + censusSummaryVo.setAmountTotal(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount()) + .add(censusSummaryVo.getRepurchaseAmount()).add(censusSummaryVo.getDiscountAmount())); // 业绩汇总 - censusSummaryVo.setPvTotal(censusSummaryVo.getFirstPurchasePv().add(censusSummaryVo.getRepurchasePv())); + censusSummaryVo.setPvTotal(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv()) + .add(censusSummaryVo.getRepurchasePv()).add(censusSummaryVo.getDiscountPv())); censusSummaryList.add(censusSummaryVo); } return censusSummaryList; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java index 91faac1a..b2ad770d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java @@ -19,54 +19,29 @@ public class CensusSummaryVo { @Excel(name = "结算时间") private String settleDate; - /** - * 注册金额 - */ - @Excel(name = "注册金额") + @Excel(name = "精品金额") private BigDecimal registerAmount; - /** - * 注册业绩 - */ - @Excel(name = "注册业绩") + @Excel(name = "精品业绩") private BigDecimal registerPv; - /** - * 升级金额 - */ - @Excel(name = "升级金额") + @Excel(name = "甄选金额") private BigDecimal upgradeAmount; - /** - * 升级业绩 - */ - @Excel(name = "升级业绩") + @Excel(name = "甄选业绩") private BigDecimal upgradePv; - /** - * 首购金额 - */ - @Excel(name = "首购金额") - private BigDecimal firstPurchaseAmount; - - /** - * 首购业绩 - */ - @Excel(name = "首购业绩") - private BigDecimal firstPurchasePv; - - /** - * 复购金额 - */ - @Excel(name = "复购金额") + @Excel(name = "商城金额") private BigDecimal repurchaseAmount; - /** - * 复购pv - */ - @Excel(name = "复购业绩") + @Excel(name = "商城业绩") private BigDecimal repurchasePv; + @Excel(name = "五折金额") + private BigDecimal discountAmount; + + @Excel(name = "五折业绩") + private BigDecimal discountPv; /** * 金额总计 */ From 502d6de60f499ac10117d2cb1da86a40fb57c611 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 9 Oct 2025 14:52:50 +0800 Subject: [PATCH 361/362] =?UTF-8?q?##=20=E7=94=9F=E4=BA=A7=E7=8E=AF?= =?UTF-8?q?=E5=A2=83xxl-job=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bd-third/src/main/resources/application-online.properties | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-third/src/main/resources/application-online.properties b/bd-third/src/main/resources/application-online.properties index e817946a..7e2c7277 100644 --- a/bd-third/src/main/resources/application-online.properties +++ b/bd-third/src/main/resources/application-online.properties @@ -1,14 +1,14 @@ ### 调度中心部署跟地址 [选填]:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册; -xxl.job.admin.addresses=http://172.26.201.209:8181/xxl-admin +xxl.job.admin.addresses=http://172.26.201.225:8181/xxl-admin # log config logging.config=classpath:logback.xml ### 执行器通讯TOKEN [选填]:非空时启用; -xxl.job.accessToken=re_token_online +xxl.job.accessToken=zk_token_online ### 执行器AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册 -xxl.job.executor.appname=xxl-job-re +xxl.job.executor.appname=xxl-job-zk ### 执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态IP和动态映射端口问题。 xxl.job.executor.address= ### 执行器IP [选填]:默认为空表示自动获取IP,多网卡时可手动设置指定IP,该IP不会绑定Host仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务"; From 93ff13737a3c17afee3b8484095fa685937e638c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 9 Oct 2025 15:01:44 +0800 Subject: [PATCH 362/362] =?UTF-8?q?##=20=E7=94=9F=E4=BA=A7=E7=8E=AF?= =?UTF-8?q?=E5=A2=83nacos=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 78e3a6b6..8ea0c486 100644 --- a/pom.xml +++ b/pom.xml @@ -480,7 +480,7 @@ online - 172.26.201.209:8847 + 172.26.201.225:8847 @@ -488,7 +488,7 @@ nacos - reOnline_nacos#202 + zkOnline_nacos#15