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;
- }
}
From 1fb311af015acef08e8a5e4b194cde3b712ef1a5 Mon Sep 17 00:00:00 2001
From: cabbage <281119120@qq.com>
Date: Thu, 4 Sep 2025 16:06:16 +0800
Subject: [PATCH 17/78] =?UTF-8?q?##=201980=E5=8D=87=E7=BA=A7=E7=9A=849900?=
=?UTF-8?q?=E5=8F=AF=E4=BB=A5=E5=86=8D=E8=B4=AD=E4=B9=B09900=E4=BD=86?=
=?UTF-8?q?=E6=98=AF=E7=AD=89=E7=BA=A7=E4=B8=8D=E5=8F=98=EF=BC=88363?=
=?UTF-8?q?=EF=BC=89=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 | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
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 735e357d..aa424efb 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
@@ -874,15 +874,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl
String upgradeWay = querySystemConfigByKey(saOrderExt.getPkCountry(), ESystemConfig.UPGRADE_WAY.getKey());
boolean checkUpgrade = false;
if (oldGradeDTO.getGradeValue() >= cuMember.getPkSettleGradeValue() && !Objects.equals(Integer.toString(EUpgradeWay.TOTAL.getValue()), upgradeWay)) {
+ checkUpgrade = true;
if (EGrade.VIP.getValue() == oldGradeDTO.getGradeValue()) {
SaOrderExt gradeOrder = baseMapper.getLastOrderGrade(cuMember.getPkId());
if (EGrade.MAKER.getValue() == gradeOrder.getGradeValue()) {
// 如果是1980赠送升级的9900,可以再买一个9900,但是等级不变
- checkUpgrade = true;
+ checkUpgrade = false;
}
}
}
- if (!checkUpgrade) {
+ if (checkUpgrade) {
return false;
}
// 封装保存订单数据
From 74c2c955f00da136fff13d27e4920c1ac040e647 Mon Sep 17 00:00:00 2001
From: sangelxiu1 <15781802@163.com>
Date: Fri, 5 Sep 2025 16:24:33 +0800
Subject: [PATCH 18/78] =?UTF-8?q?##=20Opt=20-=20=E9=AA=8C=E8=AF=81?=
=?UTF-8?q?=E4=BA=AC=E4=B8=9C=E5=93=8D=E5=BA=94=E4=BD=93=E5=86=85-?=
=?UTF-8?q?=E6=94=AF=E4=BB=98=E5=B7=A5=E5=85=B7=E5=B1=9E=E6=80=A7?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/hzs/third/pay/service/impl/JdPayServiceImpl.java | 6 +++++-
1 file changed, 5 insertions(+), 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 7ef499e6..d8d06007 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
@@ -1,6 +1,7 @@
package com.hzs.third.pay.service.impl;
import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.hzs.common.core.config.BdConfig;
@@ -370,7 +371,10 @@ public class JdPayServiceImpl implements IJdPayService {
// 订单金额
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());
+ Integer payType = null;
+ if(StrUtil.isNotEmpty(response.getPayTool())){
+ payType = convertPayType(response.getPayTool());
+ }
// 支付后续业务处理
if (iPayService.notifyHandle(tOnlinePayment.getBusinessType().toString() , thirdOrderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) {
return AjaxResult.success();
From 93cfed0941cc72dd15047d63f25113c8a870c47f Mon Sep 17 00:00:00 2001
From: sangelxiu1 <15781802@163.com>
Date: Fri, 5 Sep 2025 18:16:46 +0800
Subject: [PATCH 19/78] =?UTF-8?q?##=20Opt=20-=20=E6=89=8B=E5=8A=A8?=
=?UTF-8?q?=E8=A1=A5=E5=81=BF=E5=BC=82=E5=B8=B8=E5=9B=9E=E8=B0=83-?=
=?UTF-8?q?=E9=AA=8C=E8=AF=81=E7=8A=B6=E6=80=81?=
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 d8d06007..d813651a 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
@@ -353,7 +353,7 @@ public class JdPayServiceImpl implements IJdPayService {
return AjaxResult.success("已支付订单 无需补偿回调!");
}
log.info("queryOrder : {}", JSONUtil.toJsonStr(response));
- {
+ if ("FINI".equals(response.getTradeStatus())){
// 支付成功处理
// 商户订单号
From 77813f30d663726bd166eca22e135f98de751fd5 Mon Sep 17 00:00:00 2001
From: sangelxiu1 <15781802@163.com>
Date: Mon, 18 Aug 2025 09:20:48 +0800
Subject: [PATCH 20/78] =?UTF-8?q?##=20Opt=20-=20=E8=B0=83=E7=94=A8?=
=?UTF-8?q?=E4=BA=AC=E4=B8=9C=E6=94=AF=E4=BB=98=E5=87=8F=E5=B0=91=E8=BF=87?=
=?UTF-8?q?=E7=A8=8B=E6=97=A5=E5=BF=97=E8=BE=93=E5=87=BA.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/hzs/third/pay/jdpay/sdk/JdPayHttpClientProxy.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
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);
From 9bd687944c5914a08e8f418ad023e4f6df86419c Mon Sep 17 00:00:00 2001
From: cabbage <281119120@qq.com>
Date: Tue, 9 Sep 2025 09:30:54 +0800
Subject: [PATCH 21/78] =?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 dfb32bc3890ce5bd9e8758884ae34abab53a9617 Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Tue, 9 Sep 2025 14:33:55 +0800
Subject: [PATCH 22/78] =?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 c872fc80fe9619e3d214435cdf6fc43d7997d1b7 Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Wed, 10 Sep 2025 10:18:42 +0800
Subject: [PATCH 23/78] =?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 11a5a8f75832c528397231ab65a28e3bf8431419 Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Wed, 10 Sep 2025 14:33:36 +0800
Subject: [PATCH 24/78] =?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 2ea5cc5b..1a59f631 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
@@ -797,4 +797,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 d133aa0e5fcb97a34f913f9dcd9633a13b6c96b8 Mon Sep 17 00:00:00 2001
From: cabbage <281119120@qq.com>
Date: Wed, 10 Sep 2025 14:48:30 +0800
Subject: [PATCH 25/78] =?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 1a59f631..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
@@ -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 255d0574..f6f4ab5d 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 69e092e5bc05b046ef5bbe3e46a8e0beef6648b3 Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Wed, 10 Sep 2025 16:13:54 +0800
Subject: [PATCH 26/78] =?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 bd04f6d688f344fa7e60dab9764971ad6195d2bb Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Thu, 11 Sep 2025 10:43:19 +0800
Subject: [PATCH 27/78] =?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 33842b6d15d0a9be9e29e81c530ac0b45145e58a Mon Sep 17 00:00:00 2001
From: zhangheng
Date: Thu, 11 Sep 2025 13:52:38 +0800
Subject: [PATCH 28/78] =?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 29/78] =?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})
-
+