From a65fbea4abe848a41863c05ce763502b251841a9 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 9 Sep 2025 09:30:54 +0800 Subject: [PATCH 01/11] =?UTF-8?q?##=20=E8=A7=81=E7=82=B9=E5=A5=96=E8=80=83?= =?UTF-8?q?=E6=A0=B8=E6=B7=BB=E5=8A=A0=E5=A4=8D=E8=B4=AD=E8=80=83=E6=A0=B8?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E5=88=A4=E6=96=AD=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/bonus/achieve/mapper/CuMemberTreeMapper.java | 4 +++- .../com/hzs/bonus/achieve/service/ICuMemberTreeService.java | 2 +- .../bonus/achieve/service/impl/CuMemberTreeServiceImpl.java | 4 ++-- .../bonus/detail/service/impl/CuMemberAssessServiceImpl.java | 2 +- .../resources/mapper/bonus/achieve/CuMemberTreeMapper.xml | 5 ++++- 5 files changed, 11 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 38f5f889..50bc5710 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 @@ -333,7 +333,9 @@ public interface CuMemberTreeMapper extends BaseMapper { * @param assessTableName * @return */ - int updateCuMemberSettlePointAssess(@Param("settleTableName") String settleTableName, @Param("assessTableName") String assessTableName); + int updateCuMemberSettlePointAssess(@Param("settleTableName") String settleTableName, + @Param("assessTableName") String assessTableName, + @Param("settleDate") String settleDate); /** * 初始化考核数据 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 d3fa16f8..b78813fc 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 @@ -339,7 +339,7 @@ public interface ICuMemberTreeService extends IService { * @param settleTableName * @param assessTableName */ - void updateCuMemberSettlePointAssess(String settleTableName, String assessTableName); + void updateCuMemberSettlePointAssess(String settleTableName, String assessTableName, String settleDate); /** * 初始化考核数据 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 b1d22d5c..2bdf4de7 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 @@ -436,8 +436,8 @@ public class CuMemberTreeServiceImpl extends ServiceImpl= cma.start_date + and cma.end_date >= to_date(#{settleDate}, 'yyyy-mm-dd') + ) tmp on (tmp.pk_member = cms.pk_member) when matched then update set cms.is_maker_space = 0 From d76498a3ed6aa815ea4f1ee6a30130da13e9c8ca Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 9 Sep 2025 14:33:55 +0800 Subject: [PATCH 02/11] =?UTF-8?q?##=20bug371=20=E4=B8=9A=E7=BB=A9=E6=B1=87?= =?UTF-8?q?=E6=80=BB=E9=A1=B5=EF=BC=8C=E9=80=89=E4=BA=86=E9=9A=B6=E5=B1=9E?= =?UTF-8?q?=E4=BD=93=E7=B3=BB=E6=90=9C=E7=B4=A2=E5=90=8E=E7=82=B9=E5=AF=BC?= =?UTF-8?q?=E5=87=BA=EF=BC=8C=E5=AF=BC=E5=87=BA=E7=9A=84excel=E6=98=AF?= =?UTF-8?q?=E6=89=80=E6=9C=89=E7=9A=84=EF=BC=8C=E5=BA=94=E8=AF=A5=E5=8F=AA?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E5=BD=93=E5=89=8D=E6=90=9C=E7=B4=A2=E7=9A=84?= =?UTF-8?q?=E4=BD=93=E7=B3=BB=E7=9A=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/member/base/service/impl/CuMemberServiceImpl.java | 6 ++++++ .../com/hzs/member/census/param/CensusSummaryParam.java | 4 ++++ .../main/resources/mapper/member/base/CuMemberMapper.xml | 4 ++-- 3 files changed, 12 insertions(+), 2 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 2fca56b4..12f21731 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 @@ -2468,6 +2468,12 @@ public class CuMemberServiceImpl extends ServiceImpl i for (String day : days) { censusSummaryParam.setTime(day); censusSummaryParam.setPkCountry(SecurityUtils.getPkCountry()); + // 将体系转换成集合类型 + 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 80c417ea..a18039e7 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 @@ -58,4 +58,8 @@ 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 b7c1dbb6..efcf7eb9 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 @@ -2567,9 +2567,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} From 253436e347f7c7fd8a91bc9eb900a2782a0c7a48 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 10 Sep 2025 10:18:42 +0800 Subject: [PATCH 03/11] =?UTF-8?q?##=20=E8=B0=83=E6=8D=A2=E8=B4=A7=E7=89=A9?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C,=E6=A0=A1=E9=AA=8C=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=8E=9F=E8=AE=A2=E5=8D=95=E4=BB=B7=E6=A0=BC=E5=92=8C=E8=B0=83?= =?UTF-8?q?=E6=8D=A2=E5=AE=8C=E8=B4=A7=E4=B9=8B=E5=90=8E=E7=9A=84=E4=BB=B7?= =?UTF-8?q?=E6=A0=BC=E4=B8=8D=E7=9B=B8=E5=90=8C=E4=B8=8D=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E6=8D=A2=E8=B4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OrderBusinessServiceImpl.java | 47 +++++-------------- .../constant/msg/SaOrderMsgConstants.java | 5 ++ 2 files changed, 16 insertions(+), 36 deletions(-) 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 7bc6998c..137bf0f1 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 @@ -575,12 +575,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; } // 操作日志内容 @@ -646,16 +646,13 @@ 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)) { @@ -664,13 +661,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()) { @@ -703,12 +694,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列表 @@ -754,25 +745,9 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { ; // 修改后的订单金额 + 邮费 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)) { @@ -786,7 +761,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 bcb6e696..1714af98 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 @@ -164,5 +164,10 @@ public class SaOrderMsgConstants { * 会员续约 -- 已终止会员不允许报单 */ public static final String TERMINATED_NOT_DECLARATION = "已终止会员不允许报单"; + /** + * 原订单价格和调换完货之后的价格不相同 -- 不允许货物调换 + */ + public static final String PRODUCT_CONFIRM_PRICE = "原订单价格和调换完货之后的价格不相同"; + } From b5bd3b5efb7d93bdf065713e2d918cf5ba354d11 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 10 Sep 2025 14:48:30 +0800 Subject: [PATCH 04/11] =?UTF-8?q?##=200=E5=85=83=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E6=B3=A8=E5=86=8C=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3=EF=BC=9B?= =?UTF-8?q?get-info=E8=BF=94=E5=9B=9E=E4=BF=A1=E6=81=AF=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 --- .../hzs/system/common/dto/MemberDataDTO.java | 45 +---- .../service/ITransactionCommonService.java | 6 +- .../impl/TransactionCommonServiceImpl.java | 6 +- .../member/base/mapper/CuMemberMapper.java | 1 - .../member/base/service/ICuMemberService.java | 10 ++ .../service/impl/CuMemberServiceImpl.java | 148 +++++++++++----- .../service/impl/MemberInfoServiceImpl.java | 56 +----- .../com/hzs/member/base/vo/MemberDataVO.java | 35 +--- .../com/hzs/member/base/vo/MemberInfoVO.java | 46 +---- .../com/hzs/member/base/vo/MemberShare.java | 13 +- .../controller/MemberTokenController.java | 23 +++ .../member/login/param/AutoLoginParam.java | 26 ++- .../service/impl/MemberLoginServiceImpl.java | 9 +- .../controller/api/ApiShareController.java | 167 +++++++++++------- .../share/param/ShareRegisterParam.java | 47 +++++ .../manage/MemberStructureController.java | 4 + .../mapper/member/base/CuMemberMapper.xml | 2 - .../provider/CommonServiceProvider.java | 32 +--- .../common/core/constant/CacheConstants.java | 5 + .../hzs/common/core/enums/EAccountStatus.java | 2 - .../com/hzs/common/core/enums/EAwards.java | 28 --- .../core/enums/ERegistrationAuthority.java | 2 - bd-gateway/src/main/resources/bootstrap.yml | 3 + 23 files changed, 346 insertions(+), 370 deletions(-) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/share/param/ShareRegisterParam.java diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/common/dto/MemberDataDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/common/dto/MemberDataDTO.java index 7e1481a2..8cf42718 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/common/dto/MemberDataDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/common/dto/MemberDataDTO.java @@ -6,14 +6,9 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; -import java.math.BigDecimal; /** - * @Description: 会员信息DTO - * @Author: jiang chao - * @Time: 2023/1/10 16:40 - * @Classname: MemberDataDTO - * @PackageName: com.hzs.system.common.dto + * 会员信息DTO */ @AllArgsConstructor @NoArgsConstructor @@ -27,10 +22,6 @@ public class MemberDataDTO implements Serializable { * 自然国ID */ private Integer pkCountry; - /** - * 自然国翻译KEY - */ - private Integer pkCountryTransaction; /** * 自然国名称 */ @@ -39,19 +30,11 @@ public class MemberDataDTO implements Serializable { * 自然国家圆形国旗 */ private String countryCircularIcon; - /** - * 自然国家方形图旗 - */ - private String countrySquareIcon; /** * 结算国ID */ private Integer pkSettleCountry; - /** - * 自然国翻译KEY - */ - private Integer pkSettleCountryTransaction; /** * 自然国名称 */ @@ -60,18 +43,6 @@ public class MemberDataDTO implements Serializable { * 结算国家圆形国旗 */ private String settleCountryCircularIcon; - /** - * 结算国家方形国旗 - */ - private String settleCountrySquareIcon; - /** - * 结算国家点亮名称 - */ - private String settleCountryLightName; - /** - * 结算国家地图 - */ - private String settleCountryImg; /** * 结算等级翻译 @@ -96,23 +67,9 @@ public class MemberDataDTO implements Serializable { */ private String awardsIcon; - /** - * 荣誉奖衔翻译 - */ - private Integer pkMaxAwards; - /** - * 荣誉奖衔图标 - */ - private String maxAwardsIcon; - /** * 币种图标 */ private String currencyIcon; - /** - * 汇率 - */ - private BigDecimal exchangeRate; - } diff --git a/bd-business/bd-business-common/src/main/java/com/hzs/common/service/ITransactionCommonService.java b/bd-business/bd-business-common/src/main/java/com/hzs/common/service/ITransactionCommonService.java index 27cef9b4..cb4b2d97 100644 --- a/bd-business/bd-business-common/src/main/java/com/hzs/common/service/ITransactionCommonService.java +++ b/bd-business/bd-business-common/src/main/java/com/hzs/common/service/ITransactionCommonService.java @@ -4,11 +4,7 @@ import java.util.Collection; import java.util.Map; /** - * @Description: 翻译公用操作 - * @Author: jiang chao - * @Time: 2022/10/22 11:58 - * @Classname: ITransactionCommonService - * @PackageName: com.hzs.common.service + * 翻译公用操作 */ public interface ITransactionCommonService { diff --git a/bd-business/bd-business-common/src/main/java/com/hzs/common/service/impl/TransactionCommonServiceImpl.java b/bd-business/bd-business-common/src/main/java/com/hzs/common/service/impl/TransactionCommonServiceImpl.java index f3ccf294..426efa17 100644 --- a/bd-business/bd-business-common/src/main/java/com/hzs/common/service/impl/TransactionCommonServiceImpl.java +++ b/bd-business/bd-business-common/src/main/java/com/hzs/common/service/impl/TransactionCommonServiceImpl.java @@ -12,11 +12,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 翻译公用操作 - * @Author: jiang chao - * @Time: 2022/10/22 11:58 - * @Classname: TransactionCommonServiceImpl - * @PackageName: com.hzs.common.service.impl + * 翻译公用操作 */ @Service public class TransactionCommonServiceImpl implements ITransactionCommonService { 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 2ea5cc5b..1d355a3a 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 @@ -59,7 +59,6 @@ public interface CuMemberMapper extends BaseMapper { /* * 根据条件查询会员信息,查询单表 - * @param: null null **/ List queryMemberByCondition(CuMember cuMember); 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 daf0e855..0e814d08 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 @@ -19,6 +19,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.share.param.ShareRegisterParam; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import java.math.BigDecimal; @@ -1012,4 +1013,13 @@ public interface ICuMemberService extends IService { AjaxResult setRegion(MemberRegionParam param); + /** + * 分享注册会员 + * + * @param registerParam 分享注册入参 + * @return + */ + CuMember shareRegisterMember(ShareRegisterParam registerParam); + + } 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 12f21731..a2b662c9 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 @@ -55,6 +55,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.share.param.ShareRegisterParam; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.IBdAwardsRegionConfigServiceApi; import com.hzs.system.base.ICountryServiceApi; @@ -138,20 +139,18 @@ public class CuMemberServiceImpl extends ServiceImpl i @Override public Boolean saveMember(CuMember cuMember) { - boolean save = false; try { if (cuMember.getIsMakerGift() == null) { cuMember.setIsMakerGift(EYesNo.NO.getIntValue()); } - Integer saveRow = baseMapper.insertCuMember(cuMember); - if (saveRow > 0) { - save = true; + if (baseMapper.insertCuMember(cuMember) > 0) { + return true; } } catch (Exception e) { - e.printStackTrace(); + log.error("保存会员失败", e); throw new RuntimeException(e); } - return save; + return false; } @Override @@ -1897,7 +1896,6 @@ public class CuMemberServiceImpl extends ServiceImpl i tree.putExtra("settleCountryName", allCountryData.get(treeNode.getPkSettleCountry()).getName()); tree.putExtra("settleCountryUrl", allCountryData.get(treeNode.getPkSettleCountry()).getNationalFlag1()); tree.putExtra("settleCountryUrl2", allCountryData.get(treeNode.getPkSettleCountry()).getNationalFlag2()); - } for (BdAwards date : awardsDto.getData()) { if (date.getPkId().equals(treeNode.getPkAwards())) { @@ -1910,7 +1908,6 @@ public class CuMemberServiceImpl extends ServiceImpl i tree.putExtra("countryName", allCountryData.get(treeNode.getPkCountry()).getName()); tree.putExtra("countryUrl", allCountryData.get(treeNode.getPkCountry()).getNationalFlag1()); tree.putExtra("countryUrl2", allCountryData.get(treeNode.getPkCountry()).getNationalFlag2()); - } CuMember member = this.getMember(treeNode.getPkMember()); if (member != null) { @@ -3392,24 +3389,24 @@ public class CuMemberServiceImpl extends ServiceImpl i // 如果达标至BD_AWARDS_REGION_CONFIG获取可选择的配置 CuMemberExt cuMember = this.getMemberById(userId); Map awardsMap = iAwardsServiceApi.getAwards().getData(); - BdAwards bdAwards = awardsMap.entrySet().stream().filter( o -> o.getValue().getPkId().equals(cuMember.getPkAwards())).findFirst().get().getValue(); + BdAwards bdAwards = awardsMap.entrySet().stream().filter(o -> o.getValue().getPkId().equals(cuMember.getPkAwards())).findFirst().get().getValue(); // BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); R> r = iBdAwardsRegionConfigServiceApi.getMatchList(bdAwards.getAwardsValue()); List regionConfigList = null; - if(r.isSuccess()){ + if (r.isSuccess()) { regionConfigList = r.getData(); } BigDecimal smallPv = getSmallPV(userId); - if(CollUtil.isNotEmpty(regionConfigList)){ + if (CollUtil.isNotEmpty(regionConfigList)) { // 匹配到的区域配置 for (BdAwardsRegionConfig config : regionConfigList) { // BdAwards configAwards = iAwardsServiceApi.getAwardsOne(config.getPkAwards().intValue()).getData(); - BdAwards configAwards = awardsMap.entrySet().stream().filter( o -> o.getValue().getAwardsValue().equals(config.getAwardsValue())).findFirst().get().getValue(); + BdAwards configAwards = awardsMap.entrySet().stream().filter(o -> o.getValue().getAwardsValue().equals(config.getAwardsValue())).findFirst().get().getValue(); // 判断业绩 CheckRegionDetailVO regionDetail = baseMapper.getSelectRegionDetail(userId, config.getAreaType()); - if(bdAwards.getAwardsValue() >= config.getAwardsValue()){ - switch (config.getAreaType()){ + if (bdAwards.getAwardsValue() >= config.getAwardsValue()) { + switch (config.getAreaType()) { case 1: checkRegionVO.setProvince(smallPv.compareTo(configAwards.getSmallAssess()) >= 0); checkRegionVO.getData().setProvinceData(regionDetail); @@ -3422,7 +3419,8 @@ public class CuMemberServiceImpl extends ServiceImpl i checkRegionVO.setCounty(smallPv.compareTo(configAwards.getSmallAssess()) >= 0); checkRegionVO.getData().setCountyData(regionDetail); break; - default: break; + default: + break; } } } @@ -3466,9 +3464,9 @@ public class CuMemberServiceImpl extends ServiceImpl i BigDecimal todayDataASum = ObjectUtil.isEmpty(todayData) ? BigDecimal.ZERO : todayData.getANewPv(); BigDecimal todayDataBSum = ObjectUtil.isEmpty(todayData) ? BigDecimal.ZERO : todayData.getBNewPv(); BigDecimal smallSumPv; - if(smallFlag == 1){ + if (smallFlag == 1) { smallSumPv = yesterdayASum.add(todayDataASum); - }else{ + } else { smallSumPv = yesterdayBSum.add(todayDataBSum); } return smallSumPv; @@ -3486,10 +3484,10 @@ public class CuMemberServiceImpl extends ServiceImpl i if (null == province) { return AjaxResult.error("选择区域省不存在,请重新选择"); } - if(param.getType() == 1 && checkRegionVO.isProvince()){ + if (param.getType() == 1 && checkRegionVO.isProvince()) { param.setCity(0); param.setCounty(0); - }else if(param.getType() == 2 && checkRegionVO.isCity()){ + } else if (param.getType() == 2 && checkRegionVO.isCity()) { // 校验市是否存在 if (!param.getCity().equals(0)) { BdArea city = iAreaServiceApi.getArea(param.getCity()).getData(); @@ -3498,7 +3496,7 @@ public class CuMemberServiceImpl extends ServiceImpl i } } param.setCounty(0); - }else if(param.getType() == 3 && checkRegionVO.isCounty()){ + } else if (param.getType() == 3 && checkRegionVO.isCounty()) { // 校验区是否存在 if (!param.getCounty().equals(0)) { BdArea county = iAreaServiceApi.getArea(param.getCounty()).getData(); @@ -3507,7 +3505,7 @@ public class CuMemberServiceImpl extends ServiceImpl i } } } - if(ObjectUtil.isNotEmpty(cuMemberRegionExt)){ + if (ObjectUtil.isNotEmpty(cuMemberRegionExt)) { param.setPkId(cuMemberRegionExt.getPkId()); } param.setPkMember(userId); @@ -3522,48 +3520,114 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error(str); } - public static int getSmallFlag(CuMemberSettleExt lastMonthData, CuMemberSettleExt yesterdayData, CuMemberSettleExt todayData){ + public static int getSmallFlag(CuMemberSettleExt lastMonthData, CuMemberSettleExt yesterdayData, CuMemberSettleExt todayData) { int smallFlag = 1; // left-1, right-2 - if(ObjectUtil.isNotEmpty(todayData)){ - if(ObjectUtil.isNotEmpty(todayData.getASumPv()) + if (ObjectUtil.isNotEmpty(todayData)) { + if (ObjectUtil.isNotEmpty(todayData.getASumPv()) && ObjectUtil.isNotEmpty(todayData.getBSumPv()) - ){ - if(todayData.getASumPv().compareTo(todayData.getBSumPv()) >= 0){ + ) { + if (todayData.getASumPv().compareTo(todayData.getBSumPv()) >= 0) { smallFlag = 2; - }else{ + } else { smallFlag = 1; } } } - if(ObjectUtil.isNotEmpty(yesterdayData)){ - if(ObjectUtil.isNotEmpty(yesterdayData.getASumPv()) + if (ObjectUtil.isNotEmpty(yesterdayData)) { + if (ObjectUtil.isNotEmpty(yesterdayData.getASumPv()) && ObjectUtil.isNotEmpty(yesterdayData.getBSumPv()) - ){ - if(yesterdayData.getASumPv().compareTo(yesterdayData.getBSumPv()) >= 0){ + ) { + if (yesterdayData.getASumPv().compareTo(yesterdayData.getBSumPv()) >= 0) { smallFlag = 2; - }else{ + } else { smallFlag = 1; } } } - if(ObjectUtil.isNotEmpty(lastMonthData)){ - if(ObjectUtil.isNotEmpty(lastMonthData.getASumPv()) + if (ObjectUtil.isNotEmpty(lastMonthData)) { + if (ObjectUtil.isNotEmpty(lastMonthData.getASumPv()) && ObjectUtil.isNotEmpty(lastMonthData.getBSumPv()) - ){ - if(lastMonthData.getASumPv().compareTo(lastMonthData.getBSumPv()) >= 0){ + ) { + if (lastMonthData.getASumPv().compareTo(lastMonthData.getBSumPv()) >= 0) { smallFlag = 2; - }else{ + } else { smallFlag = 1; } } } return smallFlag; } - public static LocalDate getLastDayOfLastMonthLegacy() { - Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.MONTH, -1); // 减1个月 - calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); - return LocalDate.of(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.DAY_OF_MONTH)); + + @Transactional(rollbackFor = Exception.class) + @Override + public CuMember shareRegisterMember(ShareRegisterParam registerParam) { + // 处理等级 + GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.START_UP.getValue(), CountryConstants.CHINA_COUNTRY).getData(); + if (null == gradeDTO) { + return null; + } + // 新会员信息 + CuMember cuMember = packageCuMember(registerParam, registerParam.getParentMember()); + cuMember.setPkRegisterGrade(gradeDTO.getPkId()); + cuMember.setPkSettleGrade(gradeDTO.getPkId()); + cuMember.setPkAwards(gradeDTO.getPkAwards()); + + // 保存会员 + this.saveMember(cuMember); + // 新会员生成账户,保存账户 + CuMemberAccount cuMemberAccount = CuMemberAccount.builder() + .pkMember(cuMember.getPkId()) + .build(); + cuMemberAccount.setPkCreator(cuMember.getPkCreator()); + cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); + iCuMemberAccountService.save(cuMemberAccount); + // 用户注册信息 + CuMemberRegister cuMemberRegister = BeanUtil.copyProperties(cuMember, CuMemberRegister.class); + cuMemberRegister.setPkMember(cuMember.getPkId()); + iCuMemberRegisterService.save(cuMemberRegister); + return cuMember; } + private CuMember packageCuMember(ShareRegisterParam registerParam, CuMember parentMember) { + // 获取新的订单编号 + CuMember cuMember = CuMember.builder() + .memberName(registerParam.getMemberName()) + .nickName(registerParam.getMemberName()) + .phone(registerParam.getPhone()) + .pkSettleCountry(CountryConstants.CHINA_COUNTRY) + .loginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)) + .loginPassword(SysConstants.LOGIN_PASSWORD) + .payPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)) + .payPassword(SysConstants.PAY_PASSWORD) + .source(registerParam.getSource() == null ? EDataSource.H5.getValue() : registerParam.getSource()) + .pkParent(parentMember.getPkId()) + .accountStatus(EAccountStatus.NORMAL.getValue()) + .pkCenterCode(parentMember.getPkId()) + // 这个时候是待支付,等支付的时候变为支付,可以跟待支付公用 + .payStatus(EPayStatus.UNPAID.getValue()) + .category(ECategory.NORMAL.getValue()) + .orderSource(EOrderSource.SOLID.getValue()) + .consumeMoney(BigDecimal.ZERO) + .consumeAchieve(BigDecimal.ZERO) + .registerAuthority(ERegistrationAuthority.ORDINARY.getValue()) + .customerType(ECustomerType.NORMAL.getValue()) + .pkVertex(parentMember.getPkVertex()) + .systemType(ESystemType.DEFAULT.getValue()) + .build(); + cuMember.setPkCountry(parentMember.getPkSettleCountry()); + cuMember.setCreationTime(new Date()); + // 2024.05.29 会员续约需求,【有效期】为购买时间次年的上月最后一天 + cuMember.setExpireDate(DateUtils.beforeMonthLastDate(DateUtils.addYears(cuMember.getCreationTime(), 1))); + // 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员) + cuMember.setStopDate(DateUtils.addMonths(cuMember.getExpireDate(), 6)); + + // 获取会员编号、会员主键 + cuMember.setPkId(baseMapper.createMemberId()); + CountryDTO countryDTO = iCountryServiceApi.getCountry(CountryConstants.CHINA_COUNTRY).getData(); + cuMember.setMemberCode(this.createMemberCode(countryDTO.getCode(), null)); + cuMember.setPkCreator(cuMember.getPkId()); + return cuMember; + } + + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/MemberInfoServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/MemberInfoServiceImpl.java index 49b24565..6fb591e1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/MemberInfoServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/MemberInfoServiceImpl.java @@ -39,11 +39,7 @@ public class MemberInfoServiceImpl implements IMemberInfoService { private ICuMemberService iCuMemberService; @Autowired private ICuMemberChangeLogService iCuMemberChangeLogService; - @Autowired - private ITransactionCommonService iTransactionCommonService; - @DubboReference - ICurrencyServiceApi iCurrencyServiceApi; @DubboReference ICommonServiceApi iCommonServiceApi; @@ -61,33 +57,19 @@ public class MemberInfoServiceImpl implements IMemberInfoService { .pkSettleCountry(cuMember.getPkSettleCountry()) .pkGrade(cuMember.getPkSettleGrade()) .pkAwards(cuMember.getPkAwards()) -// .pkMaxAwards(cuMember.getPkMaxAwards()) .build()) .getData(); BigDecimal consumeAchieve = cuMember.getConsumeAchieve(); - if (CountryConstants.CHINA_COUNTRY.equals(cuMember.getPkSettleCountry())) { - // 中国会员,汇率处理 - consumeAchieve = consumeAchieve.multiply(memberDataDTO.getExchangeRate()); - } // 会员名称,优先取昵称,没有取名称 String memberName = StringUtils.isNotEmpty(cuMember.getNickName()) ? cuMember.getNickName() : cuMember.getMemberName(); - // 自然国家 - String pkCountryVal = memberDataDTO.getPkCountryVal(); - // 结算国家 - String pkSettleCountryVal = memberDataDTO.getPkSettleCountryVal(); - // 国家翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBFromPkId(Arrays.asList(memberDataDTO.getPkCountryTransaction(), memberDataDTO.getPkSettleCountryTransaction())); - if (null != transactionMap.get(memberDataDTO.getPkCountryTransaction())) { - pkCountryVal = transactionMap.get(memberDataDTO.getPkCountryTransaction()); - } - if (null != transactionMap.get(memberDataDTO.getPkSettleCountryTransaction())) { - pkSettleCountryVal = transactionMap.get(memberDataDTO.getPkSettleCountryTransaction()); - } - // 特殊登录处理(两个特殊账号,登录之后单独处理) + // 特殊登录处理 int loginType = 0; + if (null == cuMember.getPkPlaceParent()) { + loginType = 1; + } // 封装返回信息 return MemberInfoVO.builder() @@ -95,25 +77,17 @@ public class MemberInfoServiceImpl implements IMemberInfoService { .memberName(memberName) .registerTime(cuMember.getPayTime()) .pkCountry(cuMember.getPkCountry()) - .pkCountryVal(pkCountryVal) + .pkCountryVal(memberDataDTO.getPkCountryVal()) .countryCircularIcon(memberDataDTO.getCountryCircularIcon()) - .countrySquareIcon(memberDataDTO.getCountrySquareIcon()) .pkSettleCountry(cuMember.getPkSettleCountry()) - .pkSettleCountryVal(pkSettleCountryVal) + .pkSettleCountryVal(memberDataDTO.getPkSettleCountryVal()) .settleCountryCircularIcon(memberDataDTO.getSettleCountryCircularIcon()) - .settleCountrySquareIcon(memberDataDTO.getSettleCountrySquareIcon()) - .settleCountryLightName(memberDataDTO.getSettleCountryLightName()) - .settleCountryImg(memberDataDTO.getSettleCountryImg()) .pkGradeId(cuMember.getPkSettleGrade()) .pkGrade(memberDataDTO.getPkGrade()) - .gradeIcon(memberDataDTO.getGradeIcon()) .pkAwardsId(cuMember.getPkAwards()) .pkAwards(memberDataDTO.getPkAwards()) .pkAwardsValue(memberDataDTO.getPkAwardsValue()) .awardsIcon(memberDataDTO.getAwardsIcon()) -// .pkMaxAwardsId(cuMember.getPkMaxAwards()) -// .pkMaxAwards(memberDataDTO.getPkMaxAwards()) -// .maxAwardsIcon(memberDataDTO.getMaxAwardsIcon()) .currencyIcon(memberDataDTO.getCurrencyIcon()) .registerAuthority(cuMember.getRegisterAuthority()) .headPath(cuMember.getHeadPath()) @@ -137,24 +111,6 @@ public class MemberInfoServiceImpl implements IMemberInfoService { memberDataVO.setPhone(DesensitizedUtil.mobilePhone(memberDataVO.getPhone())); // 证件号码脱敏 memberDataVO.setIdCardAuth(DesensitizedUtil.idCardNum(memberDataVO.getIdCardAuth(), 6, 6)); - - if (CountryConstants.CHINA_COUNTRY.equals(memberDataVO.getPkSettleCountry())) { - // 汇率 - CurrencyDTO currencyDTO = iCurrencyServiceApi.getCurrency(memberDataVO.getPkSettleCountry()).getData(); - - // 中国会员,汇率处理 - memberDataVO.setConsumeAchieve(memberDataVO.getConsumeAchieve().multiply(currencyDTO.getInExchangeRate())); - } - - // 国家翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBFromPkId(Arrays.asList(memberDataVO.getPkCountryTransaction(), memberDataVO.getPkSettleCountryTransaction())); - if (null != transactionMap.get(memberDataVO.getPkCountryTransaction())) { - memberDataVO.setCountryName(transactionMap.get(memberDataVO.getPkCountryTransaction())); - } - if (null != transactionMap.get(memberDataVO.getPkSettleCountryTransaction())) { - memberDataVO.setSettleCountryName(transactionMap.get(memberDataVO.getPkSettleCountryTransaction())); - } - return memberDataVO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDataVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDataVO.java index 29da7d2e..d54ed6a4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDataVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberDataVO.java @@ -1,7 +1,6 @@ package com.hzs.member.base.vo; import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.Data; @@ -10,11 +9,7 @@ import java.math.BigDecimal; import java.util.Date; /** - * @Description: 会员资料VO - * @Author: jiang chao - * @Time: 2023/1/11 15:15 - * @Classname: MemberDataVO - * @PackageName: com.hzs.member.base.vo + * 会员资料VO */ @Data public class MemberDataVO { @@ -48,10 +43,6 @@ public class MemberDataVO { * 自然国家 */ private Integer pkCountry; - /** - * 自然国家翻译 - */ - private Integer pkCountryTransaction; /** * 自然国家名称 */ @@ -61,10 +52,6 @@ public class MemberDataVO { * 结算国家 */ private Integer pkSettleCountry; - /** - * 结算国家翻译 - */ - private Integer pkSettleCountryTransaction; /** * 结算国家名称 */ @@ -90,16 +77,6 @@ public class MemberDataVO { */ private String settleGradeVal; - /** - * 代理等级 - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_GRADE) - private Integer agentGrade; - /** - * 代理等级显示 - */ - private String agentGradeVal; - /** * 真实奖衔 */ @@ -110,16 +87,6 @@ public class MemberDataVO { */ private String awardsVal; - /** - * 荣誉奖衔 - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD) - private Integer maxAwards; - /** - * 荣誉奖衔显示 - */ - private String maxAwardsVal; - /** * 创建日期 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberInfoVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberInfoVO.java index b8d79906..5ad00c48 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberInfoVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberInfoVO.java @@ -12,11 +12,7 @@ import java.math.BigDecimal; import java.util.Date; /** - * @Description: 会员登录信息 - * @Author: jiang chao - * @Time: 2023/1/10 15:23 - * @Classname: MemberInfo - * @PackageName: com.hzs.member.base.vo + * 会员登录信息 */ @AllArgsConstructor @NoArgsConstructor @@ -51,10 +47,6 @@ public class MemberInfoVO { * 自然国家圆形国旗 */ private String countryCircularIcon; - /** - * 自然国家方形图旗 - */ - private String countrySquareIcon; /** * 结算国ID @@ -68,18 +60,6 @@ public class MemberInfoVO { * 结算国家圆形国旗 */ private String settleCountryCircularIcon; - /** - * 结算国家方形国旗 - */ - private String settleCountrySquareIcon; - /** - * 结算国家点亮名称 - */ - private String settleCountryLightName; - /* - * 结算国家地图 - */ - private String settleCountryImg; /** * 等级ID @@ -94,10 +74,6 @@ public class MemberInfoVO { * 等级名称 */ private String pkGradeVal; - /** - * 等级图标 - */ - private String gradeIcon; /** * 奖衔ID @@ -118,26 +94,6 @@ public class MemberInfoVO { */ private String awardsIcon; - /** - * 荣誉奖衔ID - */ - private Integer pkMaxAwardsId; - /** - * 荣誉奖衔翻译ID - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD) - private Integer pkMaxAwards; - /** - * 荣誉奖衔名称 - */ - private String pkMaxAwardsVal; - /** - * 荣誉奖衔图标 - */ - private String maxAwardsIcon; - - - /** * 币种图标 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberShare.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberShare.java index 2c8648e7..bc073980 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberShare.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberShare.java @@ -7,13 +7,6 @@ import lombok.NoArgsConstructor; import java.io.Serializable; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/15 11:07 - * @Classname: MemberShare - * @PackageName: com.hzs.member.base.vo - */ @Data @Builder @AllArgsConstructor @@ -69,4 +62,10 @@ public class MemberShare implements Serializable { */ private String android; + /** + * 自动登录uuid + */ + private String uuid; + + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/controller/MemberTokenController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/controller/MemberTokenController.java index b599d0ad..3465872c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/controller/MemberTokenController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/controller/MemberTokenController.java @@ -3,8 +3,10 @@ package com.hzs.member.login.controller; import cn.hutool.core.codec.Base64Decoder; import com.hzs.common.auth.LoginBody; import com.hzs.common.core.annotation.RepeatSubmitSimple; +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; @@ -21,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import javax.validation.Valid; /** * 会员端 token 控制 @@ -38,6 +41,8 @@ public class MemberTokenController { @Autowired private IMemberLoginService iMemberLoginService; + @Autowired + private RedisService redisService; /** * 会员登录 @@ -113,4 +118,22 @@ public class MemberTokenController { return AjaxResult.error(); } + /** + * 0元会员自动登录 + */ + @RepeatSubmitSimple + @PostMapping("/share-login") + public AjaxResult shareLogin(@Valid @RequestBody AutoLoginParam param) { + String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); + if (!param.getUuid().equals(tmpUuid)) { + // 没有自动登录标记 或者 标记不对,则不能自动登录 + return AjaxResult.error("当前会员已不能快速登录"); + } + + // 用户登录 + LoginMember loginMember = iMemberLoginService.login(param.getUsername(), param.getPassword()); + // 获取登录token + return AjaxResult.success(memberTokenService.createToken(loginMember)); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/param/AutoLoginParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/param/AutoLoginParam.java index 28b738ea..fb740d05 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/param/AutoLoginParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/param/AutoLoginParam.java @@ -2,8 +2,11 @@ package com.hzs.member.login.param; import lombok.Data; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Size; + /** - * 海粉自动注册登录入参 + * 自动注册登录入参 */ @Data public class AutoLoginParam { @@ -13,4 +16,25 @@ public class AutoLoginParam { */ private String pkParent; + /** + * 会员编号 + */ + @NotEmpty(message = "会员编号不能为空") + @Size(message = "会员编号不能超过{max}位", max = 20) + private String username; + + /** + * 登录密码 + */ + @NotEmpty(message = "登录密码不能为空") + @Size(message = "登录密码不能超过{max}位", max = 20) + private String password; + + /** + * 自动登录标记 + */ + @NotEmpty(message = "缺少参数") + private String uuid; + + } 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 0e962cb0..deb90aa3 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 @@ -106,9 +106,12 @@ public class MemberLoginServiceImpl implements IMemberLoginService { // 用户未支付状态 if (EPayStatus.UNPAID.getValue() == member.getPayStatus()) { - recordLoginLog(null, EStatus.NO, username + " 登录用户不存在"); - // 登录用户: %s 不存在 - throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_NOT_EXIST, username)); + if (null != member.getPkPlaceParent()) { + // 兼容0元注册,有安置的为正常会员需要判断支付状态 + recordLoginLog(null, EStatus.NO, username + " 登录用户不存在"); + // 登录用户: %s 不存在 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_NOT_EXIST, username)); + } } // 非正常点位(死点、已注销),不能登录 if (ECategory.NORMAL.getValue() != member.getCategory()) { 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 729bde9e..b822b002 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 @@ -1,20 +1,37 @@ package com.hzs.member.share.controller.api; +import cn.hutool.core.codec.Base64Decoder; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +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.CountryConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.ECategory; +import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EShareType; +import com.hzs.common.core.enums.ESystemConfig; +import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.sign.Base64Util; +import com.hzs.common.core.utils.uuid.IdUtils; 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.member.base.service.ICuMemberService; +import com.hzs.member.base.vo.MemberShare; +import com.hzs.member.share.param.ShareRegisterParam; +import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.third.share.IShareServiceApi; import com.hzs.third.share.dto.ShareServiceDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import javax.validation.Valid; import java.util.HashMap; import java.util.Map; +import java.util.concurrent.TimeUnit; /** * 会员分享相关控制器 @@ -24,29 +41,16 @@ import java.util.Map; @RequestMapping("/api/share") public class ApiShareController { + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private RedisService redisService; + @DubboReference IShareServiceApi iShareServiceApi; + @DubboReference + ISystemConfigServiceApi iSystemConfigServiceApi; -// /** -// * 获取海粉分享码 -// * -// * @return -// */ -// @GetMapping("/fans-code") -// public AjaxResult fansCode() { -// Long userId = SecurityUtils.getUserId(); -// // 海粉注册分享人就是自己 -// R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() -// .eShareType(EShareType.FANS) -// .pkBusiness(userId) -// .pkCountry(SecurityUtils.getPkCountry()) -// .userId(userId) -// .build()); -// if (resultR.isSuccess()) { -// return AjaxResult.success("", resultR.getData()); -// } -// return AjaxResult.error(); -// } /** * 获取188分享码(H5) @@ -73,50 +77,77 @@ public class ApiShareController { return AjaxResult.error(); } -// /** -// * 获取分享专区分享码 -// * -// * @return -// */ -// @GetMapping("/share-code") -// public AjaxResult shareCode() { -// Long userId = SecurityUtils.getUserId(); -// // 分享专区分享人就是自己 -// R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() -// .eShareType(EShareType.SHARE) -// .pkBusiness(userId) -// .pkCountry(SecurityUtils.getPkCountry()) -// .userId(userId) -// .build()); -// if (resultR.isSuccess()) { -// return AjaxResult.success("", resultR.getData()); -// } -// return AjaxResult.error(); -// } -// -// /** -// * 获取分享专区分享码(H5) -// * -// * @return -// */ -// @GetMapping("/share-code-h5") -// public AjaxResult shareCodeH5() { -// Long userId = SecurityUtils.getUserId(); -// // 分享专区分享人就是自己 -// R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() -// .eShareType(EShareType.SHARE) -// .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(); -// } + + ////////////////////////////// 0元注册 ////////////////////////////// + + + /** + * 分享查询推荐人编号 -- 不需要登录 + * + * @param parentCode 推荐人(加密) + * @return + */ + @GetMapping("/find-share-code/{parentCode}") + public AjaxResult findShareCode(@PathVariable("parentCode") String parentCode) { + CuMember cuMember = iCuMemberService.getMemberById(Long.parseLong(new String(Base64Decoder.decode(parentCode)))); + if (null != cuMember) { + return AjaxResult.success("", cuMember.getMemberCode()); + } + return AjaxResult.error(); + } + + /** + * 分享注册 -- 不需要登录 + * + * @param registerParam 分享注册入参 + * @return + */ + @RepeatSubmitSimple + @PostMapping("/share-register") + public AjaxResult shareRegister(@Valid @RequestBody ShareRegisterParam registerParam, + @RequestHeader("Source") Integer source) { + // 设置数据来源 + registerParam.setSource(source); + + // 验证推荐人 + CuMember parentMember = iCuMemberService.getMember(registerParam.getParentCode()); + if (null == parentMember) { + return AjaxResult.error("推荐编号不存在"); + } + registerParam.setParentMember(parentMember); + + // 手机号注册次数 + String value = iSystemConfigServiceApi.getBonusSystemConfig(CountryConstants.CHINA_COUNTRY, ESystemConfig.REGISTER_NUMBER.getKey()).getData(); + int phoneCount = iCuMemberService.count(Wrappers.lambdaQuery() + .eq(CuMember::getPhone, registerParam.getPhone()) + .eq(CuMember::getDelFlag, EDelFlag.UN_DELETE.getValue()) + .eq(CuMember::getCategory, ECategory.NORMAL.getValue()) + ); + if (phoneCount > Integer.parseInt(value)) { + return AjaxResult.error("会员信息已存在"); + } + + CuMember newCuMember = iCuMemberService.shareRegisterMember(registerParam); + if (null != newCuMember) { + // 自动登录 uuid 标记 + String uuid = IdUtils.simpleUUID(); + // 根据会员编号放一个登录 uuid 做为自动登录校验使用(60分钟有效) + redisService.setCacheObject(CacheConstants.AUTO_LOGIN + newCuMember.getMemberCode(), uuid, CacheConstants.LOGIN_TOKEN_REFRESH_TIME, TimeUnit.MINUTES); + + MemberShare memberShare = MemberShare.builder() + .memberCode(newCuMember.getMemberCode()) + .memberName(newCuMember.getMemberName()) + .phone(newCuMember.getPhone()) + .loginPassword(newCuMember.getLoginPassword()) + .payPassword(newCuMember.getPayPassword()) + .urlAddress(BdConfig.getPc()) + .uuid(uuid) + .build(); + return AjaxResult.success(memberShare); + } else { + return AjaxResult.error("注册失败,请重试"); + } + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/param/ShareRegisterParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/param/ShareRegisterParam.java new file mode 100644 index 00000000..a66e050e --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/param/ShareRegisterParam.java @@ -0,0 +1,47 @@ +package com.hzs.member.share.param; + +import com.hzs.common.domain.member.base.CuMember; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Size; +import java.io.Serializable; + +/** + * 分享注册入参 + */ +@Data +public class ShareRegisterParam implements Serializable { + + /** + * 推荐编号 + */ + @NotEmpty(message = "推荐编号不能为空") + @Size(max = 20, message = "推荐编号不能超过20位") + private String parentCode; + + /** + * 会员姓名 + */ + @NotEmpty(message = "会员姓名不能为空") + @Size(max = 40, message = "会员姓名不能超过40位") + private String memberName; + + /** + * 联系方式 + */ + @NotEmpty(message = "联系方式不能为空") + @Size(max = 40, message = "联系方式不能超过40位") + private String phone; + + /** + * 推荐会员 + */ + private CuMember parentMember; + + /** + * 数据来源 -- EDataSource + */ + private Integer source; + +} 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 7297fb21..bf47f935 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 @@ -89,6 +89,10 @@ public class MemberStructureController extends BaseController { CuMember member = iCuMemberService.getMemberByCode(memberCode); if (null != member) { pkMember = member.getPkId(); + if (null == member.getPkPlaceParent()) { + // 0元会员返回为空 + return AjaxResult.success(); + } } } if (null == pkMember) { 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 efcf7eb9..957677f9 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 @@ -1044,9 +1044,7 @@ ba.pk_transaction awards, bam.pk_transaction max_awards, bc.short_name country_name, - bc.pk_transaction pk_country_transaction, bcs.short_name settle_country_name, - bcs.pk_transaction pk_settle_country_transaction, cmau.id_card id_card_auth from cu_member cm left join BD_GRADE bgr diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/common/provider/CommonServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/common/provider/CommonServiceProvider.java index 770dfb55..a2c37c41 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/common/provider/CommonServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/common/provider/CommonServiceProvider.java @@ -7,7 +7,6 @@ import com.hzs.common.domain.system.base.BdCurrency; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.base.service.IBdCountryService; import com.hzs.system.base.service.IBdCurrencyService; import com.hzs.system.common.ICommonServiceApi; @@ -18,11 +17,7 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @Description: 公用dubbo接口 - * @Author: jiang chao - * @Time: 2023/1/10 16:10 - * @Classname: CommonServiceProvider - * @PackageName: com.hzs.system.common.provider + * 公用dubbo接口 */ @DubboService public class CommonServiceProvider implements ICommonServiceApi { @@ -35,20 +30,15 @@ public class CommonServiceProvider implements ICommonServiceApi { private IBdAwardsService iBdAwardsService; @Autowired private IBdCurrencyService iBdCurrencyService; - @Autowired - private ICurrencyServiceApi iCurrencyServiceApi; @Override public R getMemberData(MemberDataDTO memberDataDTO) { - // 自然国 if (null != memberDataDTO.getPkCountry()) { BdCountry bdCountry = iBdCountryService.getCountry(memberDataDTO.getPkCountry()); if (null != bdCountry) { memberDataDTO.setPkCountryVal(bdCountry.getShortName()); memberDataDTO.setCountryCircularIcon(bdCountry.getNationalFlag1()); - memberDataDTO.setCountrySquareIcon(bdCountry.getNationalFlag2()); - memberDataDTO.setPkCountryTransaction(bdCountry.getPkTransaction()); } } // 结算国 @@ -57,17 +47,8 @@ public class CommonServiceProvider implements ICommonServiceApi { if (null != bdSettleCountry) { memberDataDTO.setPkSettleCountryVal(bdSettleCountry.getShortName()); memberDataDTO.setSettleCountryCircularIcon(bdSettleCountry.getNationalFlag1()); - memberDataDTO.setSettleCountrySquareIcon(bdSettleCountry.getNationalFlag2()); - memberDataDTO.setSettleCountryLightName(bdSettleCountry.getLightName()); - memberDataDTO.setSettleCountryImg(bdSettleCountry.getImg()); - memberDataDTO.setPkSettleCountryTransaction(bdSettleCountry.getPkTransaction()); } - - // 汇率 - CurrencyDTO currencyDTO = iCurrencyServiceApi.getCurrency(memberDataDTO.getPkSettleCountry()).getData(); - memberDataDTO.setExchangeRate(currencyDTO.getInExchangeRate()); } - // 等级 if (null != memberDataDTO.getPkGrade()) { BdGrade bdGrade = iBdGradeService.getBdGrade(memberDataDTO.getPkGrade()); @@ -89,17 +70,6 @@ public class CommonServiceProvider implements ICommonServiceApi { } } } -// // 荣誉奖衔 -// if (null != memberDataDTO.getPkMaxAwards()) { -// BdAwards bdAwards = iBdAwardsService.getBdAwardsOne(memberDataDTO.getPkMaxAwards()); -// if (null != bdAwards) { -// memberDataDTO.setPkMaxAwards(bdAwards.getPkTransaction()); -// if (EAwards.MEMBER.getValue() != bdAwards.getAwardsValue()) { -// // 奖衔如果是会员级别不返回图标 -// memberDataDTO.setMaxAwardsIcon(bdAwards.getImage()); -// } -// } -// } // 币种 if (null != memberDataDTO.getPkSettleCountry()) { BdCurrency bdCurrency = iBdCurrencyService.getCurrency(memberDataDTO.getPkSettleCountry()); 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 7babdd00..32fafeeb 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 @@ -325,4 +325,9 @@ public class CacheConstants { */ public final static String RETAIL_REGION = CACHE_PREFIX + "retail:region:%s:%s:%s"; + /** + * 自动登录缓存KEY + */ + public final static String AUTO_LOGIN = CACHE_PREFIX + "auth:login:"; + } diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAccountStatus.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAccountStatus.java index d6e3a706..72c5b48f 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAccountStatus.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EAccountStatus.java @@ -6,8 +6,6 @@ import lombok.Getter; /** * 账户状态(会员登录账号状态) - * - * @author: hzs */ @AllArgsConstructor @Getter 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 af381f2d..45f9ce04 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 @@ -11,10 +11,6 @@ import lombok.Getter; @Getter public enum EAwards { -// /** -// * -1=海粉 -// */ -// SEA_FLOUR(0,-1, "海粉", 1, EnumsPrefixConstants.AWARDS + "-1"), /** * 0=会员 -- Q0 */ @@ -114,28 +110,4 @@ public enum EAwards { */ private final String key; - public static String getAwards(int value) { - for (EAwards eAwards : EAwards.values()) { - if (eAwards.value == value) { - return eAwards.label; - } - } - return null; - } - 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/ERegistrationAuthority.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERegistrationAuthority.java index e7344c78..bd7c4419 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERegistrationAuthority.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ERegistrationAuthority.java @@ -6,8 +6,6 @@ import lombok.Getter; /** * 注册权限枚举类 - * - * @author hzs */ @AllArgsConstructor @Getter diff --git a/bd-gateway/src/main/resources/bootstrap.yml b/bd-gateway/src/main/resources/bootstrap.yml index 5b27e7c1..babacc75 100644 --- a/bd-gateway/src/main/resources/bootstrap.yml +++ b/bd-gateway/src/main/resources/bootstrap.yml @@ -182,6 +182,9 @@ security: - /member/api/member/fans-order/* # 库存商品同步 - /sale/api/all-product/sync-data + # 0元注册白名单 + - /member/api/share/find-share-code/* + - /member/api/share/share-register # 日志配置 logging: From 8ca12af0bbf0770b6067eeb26509762f6a67cf78 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 10 Sep 2025 14:33:36 +0800 Subject: [PATCH 05/11] =?UTF-8?q?##=20=E5=88=A0=E9=99=A4=E6=AD=BB=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../account/mapper/CuMemberAccountMapper.java | 2 + .../service/ICuMemberAccountService.java | 1 + .../impl/CuMemberAccountServiceImpl.java | 5 ++ .../manage/DeleteDeadLockController.java | 48 ++++++++++++++++ .../member/base/mapper/CuMemberMapper.java | 4 ++ .../base/param/DeleteDeadLockParam.java | 26 +++++++++ .../base/service/DeleteDeadLockService.java | 13 +++++ .../impl/DeleteDeadLockServiceImpl.java | 55 +++++++++++++++++++ .../hzs/member/base/vo/DeleteDeadLockVO.java | 48 ++++++++++++++++ .../member/account/CuMemberAccountMapper.xml | 8 +++ .../mapper/member/base/CuMemberMapper.xml | 44 +++++++++++++++ .../core/constant/msg/MemberMsgConstants.java | 4 ++ 12 files changed, 258 insertions(+) create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/DeleteDeadLockParam.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/DeleteDeadLockService.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java create mode 100644 bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DeleteDeadLockVO.java 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 9b6bff2d..965fa3cf 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 @@ -14,6 +14,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; +import java.util.Date; import java.util.List; /** @@ -217,4 +218,5 @@ public interface CuMemberAccountMapper extends BaseMapper { */ CuMemberAccountExt queryAccountSummaryByVertex(@Param("pkVertex") Long pkVertex, @Param("pkCountry") Integer pkCountry); + void deleteCuMemberAccountByMemberCode(@Param("userId") Long userId, @Param("date")Date date, @Param("memberCode")String memberCode); } 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 87d3c1b7..f1f01edb 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 @@ -284,4 +284,5 @@ public interface ICuMemberAccountService extends IService { */ CuMemberAccountExt queryAccountSummaryByVertex(Long pkVertex, Integer pkCountry); + void deleteCuMemberAccountByMemberCode(Long userId, Date date, String memberCode); } 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 207b7797..d22c5a19 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 @@ -804,5 +804,10 @@ public class CuMemberAccountServiceImpl extends ServiceImpl DeleteDeadLockList = deleteDeadLockService.queryDeleteDeadLockList(deleteDeadLockParam.getMemberCode()); + return getDataTable(DeleteDeadLockList); + } + + /** + * 删除死点 + */ + @PostMapping("delete") + public AjaxResult delete(DeleteDeadLockParam deleteDeadLockParam) { + String check = deleteDeadLockService.deleteDeadLockMember(deleteDeadLockParam); + if (check == null) { + return AjaxResult.success(); + } + return AjaxResult.error(check); + } +} 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 1d355a3a..c7cbd78f 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 @@ -796,4 +796,8 @@ public interface CuMemberMapper extends BaseMapper { CheckRegionDetailVO getSelectRegionDetail(@Param("userId") Long userId, @Param("type") Integer type); List getRegionList(@Param("userId") Long userId, @Param("type") Integer type); + + List queryDeleteDeadLockList(@Param("memberCode") String memberCode); + + Integer queryIsDeadMember(@Param("memberCode") String memberCode); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/DeleteDeadLockParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/DeleteDeadLockParam.java new file mode 100644 index 00000000..16e345f2 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/DeleteDeadLockParam.java @@ -0,0 +1,26 @@ +package com.hzs.member.base.param; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.NotNull; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class DeleteDeadLockParam { + + /** + * 会员编号 + */ + @NotNull(message = "会员编号不可为空") + private String memberCode; + + /** + * 所属国家 + */ + private Integer PkCountry; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/DeleteDeadLockService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/DeleteDeadLockService.java new file mode 100644 index 00000000..cc3db73e --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/DeleteDeadLockService.java @@ -0,0 +1,13 @@ +package com.hzs.member.base.service; + +import com.hzs.member.base.param.DeleteDeadLockParam; +import com.hzs.member.base.vo.DeleteDeadLockVO; + +import java.util.List; + +public interface DeleteDeadLockService { + List queryDeleteDeadLockList(String memberCode); + + String deleteDeadLockMember(DeleteDeadLockParam deleteDeadLockParam); + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java new file mode 100644 index 00000000..e6f213f2 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java @@ -0,0 +1,55 @@ +package com.hzs.member.base.service.impl; + +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.msg.MemberMsgConstants; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.member.account.service.ICuMemberAccountService; +import com.hzs.member.base.mapper.CuMemberMapper; +import com.hzs.member.base.param.DeleteDeadLockParam; +import com.hzs.member.base.service.DeleteDeadLockService; +import com.hzs.member.base.vo.DeleteDeadLockVO; +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; + +@Service +public class DeleteDeadLockServiceImpl extends ServiceImpl implements DeleteDeadLockService { + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + + @Override + public List queryDeleteDeadLockList(String memberCode) { + return baseMapper.queryDeleteDeadLockList(memberCode); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public String deleteDeadLockMember(DeleteDeadLockParam deleteDeadLockParam) { + if (deleteDeadLockParam.getMemberCode() == null) { + return MemberMsgConstants.REQUIRED_NOT_EMPTY; + } + // 查询安置伞下和推荐伞下未删除会员数量,如果未删除会员数量为0返回true + Integer isNoDeadNum = baseMapper.queryIsDeadMember(deleteDeadLockParam.getMemberCode()); + if(isNoDeadNum == 0){ + // 删除操作 + Long userId = SecurityUtils.getUserId(); + Date date=new Date();//此时date为当前的时间 + // 删除会员 + baseMapper.update(null,new LambdaUpdateWrapper() + .eq(CuMember::getMemberCode,deleteDeadLockParam.getMemberCode()) + .set(CuMember::getPkModified,userId) + .set(CuMember::getModifiedTime,date) + .set(CuMember::getDelFlag,1)); + // 删除会员账户 + iCuMemberAccountService.deleteCuMemberAccountByMemberCode(userId,date,deleteDeadLockParam.getMemberCode()); + } else { + return MemberMsgConstants.NOT_DEAD_MEMBER; + } + return null; + } +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DeleteDeadLockVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DeleteDeadLockVO.java new file mode 100644 index 00000000..26eafa6c --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/DeleteDeadLockVO.java @@ -0,0 +1,48 @@ +package com.hzs.member.base.vo; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@EqualsAndHashCode(callSuper = false) +@AllArgsConstructor +@NoArgsConstructor +public class DeleteDeadLockVO { + + /** + * 会员编号 + */ + private String memberCode; + + /** + * 会员姓名 + */ + private String memberName; + /** + * 结算等级 + */ + private Integer pkSettleGrade; + /** + * 推荐人编号 + */ + private String parMemberCode; + /** + * 安置人编号 + */ + private String placeMemberCode; + /** + * 安置位置 + */ + private String placeDept; + /** + * 注册时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date creationTime; +} 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 68ef0e40..6ccdb12d 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 @@ -69,6 +69,14 @@ + + update cu_member_account cma + set cma.del_flag = 1,cma.PK_MODIFIED = #{userId},cma.MODIFIED_TIME = #{date} + where cma.pk_member in + (select cm.pk_id + from cu_member cm + where cm.member_code = #{memberCode}) + + + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/MemberMsgConstants.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/MemberMsgConstants.java index 2e921b37..ba328736 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/MemberMsgConstants.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/constant/msg/MemberMsgConstants.java @@ -287,5 +287,9 @@ public class MemberMsgConstants { * 已超最大门票销售数量,不能购买! */ public static final String NOT_CHECK_AC_ACTIVITY = "门票数量已售罄,请稍后再试!"; + /** + * 会员安置伞下和推荐伞下还有未删除会员,不可删除 + */ + public static final String NOT_DEAD_MEMBER = "会员安置伞下和推荐伞下还有未删除会员,不可删除"; } From 53ec7d39d3d29f0b9a4bb19246b68183194714af Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 10 Sep 2025 16:13:54 +0800 Subject: [PATCH 06/11] =?UTF-8?q?##=20bug373=20=E5=8F=8C=E8=BD=A8=E7=9A=84?= =?UTF-8?q?=E4=B8=9A=E7=BB=A9=E6=B1=87=E6=80=BB=20=E5=A4=8D=E8=B4=AD?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E5=8A=A0=E7=A7=92=E6=9D=80=E7=9A=84=E4=B8=9A?= =?UTF-8?q?=E7=BB=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/CuMemberServiceImpl.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 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 a2b662c9..79df2c67 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 @@ -2603,7 +2603,16 @@ public class CuMemberServiceImpl extends ServiceImpl i // 特殊复购 BigDecimal specialRepurchaseAmount = BigDecimal.ZERO; BigDecimal specialRepurchaseAchieve = BigDecimal.ZERO; + // 秒杀金额 + BigDecimal mallAmount = BigDecimal.ZERO; + // 秒杀业绩 + BigDecimal mallAchieve = BigDecimal.ZERO; // 3 10, 7 , 27 ,12 , 14,19 ,22 ,26 + + if (memberMeritsSummaryMap.get(EOrderType.MALL_ORDER.getValue()) != null) { + mallAmount = memberMeritsSummaryMap.get(EOrderType.MALL_ORDER.getValue()).getAmount(); + mallAchieve = memberMeritsSummaryMap.get(EOrderType.MALL_ORDER.getValue()).getAchieve(); + } if (memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()) != null) { // 复购 repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.REPURCHASE_ORDER.getValue()).getAmount(); @@ -2621,13 +2630,13 @@ public class CuMemberServiceImpl extends ServiceImpl i } // 复购金额+海粉金额+海粉升级+直播订单+合作订单+特殊复购 BigDecimal amount = repurchaseAmount.add(fansAmount).add(haiFunUpgradeAmount) - .add(mallOrderAmount).add(cooperateAmount).add(specialRepurchaseAmount); + .add(mallOrderAmount).add(cooperateAmount).add(specialRepurchaseAmount).add(mallAmount); censusSummaryVo.setRepurchaseAmount(computeChinaExchangeRate(loginUserCountry, amount, inExchangeRate, chinaInExchangeRate)); censusSummaryVo.setRepurchaseAmountDollar(computeUSDExchangeRate(amount, inExchangeRate)); censusSummaryVo.setRepurchaseAmountLocality(checkIsDecimalNull(amount)); BigDecimal repurchasePvSum = repurchaseAchieve.add(fansAchieve).add(haiFunUpgradeAchieve) - .add(mallOrderAchieve).add(cooperateAchieve).add(specialRepurchaseAchieve); + .add(mallOrderAchieve).add(cooperateAchieve).add(specialRepurchaseAchieve).add(mallAchieve); censusSummaryVo.setRepurchasePv(computeUSDToRMBRate(repurchasePvSum, chinaInExchangeRate)); censusSummaryVo.setRepurchasePvDollar(checkIsDecimalNull(repurchasePvSum)); From a749c22b620d59ea3bad0af3c6f3c884213d27e6 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 11 Sep 2025 10:43:19 +0800 Subject: [PATCH 07/11] =?UTF-8?q?##=20=E5=88=A0=E9=99=A4=E6=AD=BB=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/DeleteDeadLockController.java | 7 ++--- .../mapper/member/base/CuMemberMapper.xml | 29 ++++++++----------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java index 85c3fd25..0b45ccc0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java @@ -9,10 +9,7 @@ import com.hzs.member.base.param.DeleteDeadLockParam; import com.hzs.member.base.service.DeleteDeadLockService; import com.hzs.member.base.vo.DeleteDeadLockVO; 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 org.springframework.web.bind.annotation.*; import java.util.List; @@ -38,7 +35,7 @@ public class DeleteDeadLockController extends BaseController { * 删除死点 */ @PostMapping("delete") - public AjaxResult delete(DeleteDeadLockParam deleteDeadLockParam) { + public AjaxResult delete(@RequestBody DeleteDeadLockParam deleteDeadLockParam) { String check = deleteDeadLockService.deleteDeadLockMember(deleteDeadLockParam); if (check == null) { return AjaxResult.success(); 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 f6f4ab5d..3b08b904 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 @@ -3218,7 +3218,7 @@ WHERE cu.DEL_FLAG = 0 AND cu.CATEGORY = 2 - + AND cu.MEMBER_CODE = #{memberCode} @@ -3230,23 +3230,18 @@ SELECT MEMBER_CODE FROM - ( - SELECT - MEMBER_CODE - FROM - CU_MEMBER START WITH MEMBER_CODE = #{memberCode} CONNECT BY PRIOR PK_ID = PK_PARENT - AND MEMBER_CODE = #{memberCode} - AND DEL_FLAG = 0 UNION - SELECT - MEMBER_CODE - FROM - CU_MEMBER START WITH MEMBER_CODE = #{memberCode} CONNECT BY PRIOR PK_ID = PK_PLACE_PARENT - AND MEMBER_CODE = #{memberCode} - AND DEL_FLAG = 0 - ) t + CU_MEMBER WHERE - t.MEMBER_CODE != #{memberCode} - ) + DEL_FLAG = 0 START WITH MEMBER_CODE = #{memberCode} CONNECT BY PRIOR PK_ID = PK_PARENT UNION ALL + SELECT + MEMBER_CODE + FROM + CU_MEMBER + WHERE + DEL_FLAG = 0 START WITH MEMBER_CODE = #{memberCode} CONNECT BY PRIOR PK_ID = PK_PLACE_PARENT + ) t + WHERE + t.MEMBER_CODE != #{memberCode} From df7575c53dcdd1dc853facd56887f63451c12097 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 11 Sep 2025 13:52:38 +0800 Subject: [PATCH 08/11] =?UTF-8?q?##=20=E5=88=A0=E9=99=A4=E6=AD=BB=E7=82=B9?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/manage/DeleteDeadLockController.java | 5 +++++ .../member/base/service/impl/DeleteDeadLockServiceImpl.java | 3 +++ .../java/com/hzs/common/core/enums/EOperationModule.java | 2 ++ 3 files changed, 10 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java index 0b45ccc0..fa15741f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/DeleteDeadLockController.java @@ -1,6 +1,9 @@ package com.hzs.member.base.controller.manage; +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.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -23,6 +26,7 @@ public class DeleteDeadLockController extends BaseController { /** * 删除死点列表 */ + @Log(module = EOperationModule.DELETE_DEAD_LOCK, method = EOperationMethod.SELECT) @GetMapping("list") public TableDataInfo list(DeleteDeadLockParam deleteDeadLockParam) { startPage(); @@ -34,6 +38,7 @@ public class DeleteDeadLockController extends BaseController { /** * 删除死点 */ + @Log(module = EOperationModule.DELETE_DEAD_LOCK, method = EOperationMethod.DELETE) @PostMapping("delete") public AjaxResult delete(@RequestBody DeleteDeadLockParam deleteDeadLockParam) { String check = deleteDeadLockService.deleteDeadLockMember(deleteDeadLockParam); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java index e6f213f2..ea11891c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java @@ -10,6 +10,7 @@ import com.hzs.member.base.mapper.CuMemberMapper; import com.hzs.member.base.param.DeleteDeadLockParam; import com.hzs.member.base.service.DeleteDeadLockService; import com.hzs.member.base.vo.DeleteDeadLockVO; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -18,6 +19,7 @@ import java.util.Date; import java.util.List; @Service +@Slf4j public class DeleteDeadLockServiceImpl extends ServiceImpl implements DeleteDeadLockService { @Autowired private ICuMemberAccountService iCuMemberAccountService; @@ -35,6 +37,7 @@ public class DeleteDeadLockServiceImpl extends ServiceImpl Date: Fri, 12 Sep 2025 09:15:42 +0800 Subject: [PATCH 09/11] =?UTF-8?q?##=20=E5=88=A0=E9=99=A4=E6=AD=BB=E7=82=B9?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/base/service/impl/DeleteDeadLockServiceImpl.java | 3 ++- .../resources/mapper/member/account/CuMemberAccountMapper.xml | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java index ea11891c..15b3da6e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/DeleteDeadLockServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.member.base.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.msg.MemberMsgConstants; +import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.service.ICuMemberAccountService; @@ -47,7 +48,7 @@ public class DeleteDeadLockServiceImpl extends ServiceImpl - + update cu_member_account cma set cma.del_flag = 1,cma.PK_MODIFIED = #{userId},cma.MODIFIED_TIME = #{date} where cma.pk_member in (select cm.pk_id from cu_member cm where cm.member_code = #{memberCode}) - +