diff --git a/framework/pom.xml b/framework/pom.xml
index 952d1c71..7b6af4cb 100644
--- a/framework/pom.xml
+++ b/framework/pom.xml
@@ -15,6 +15,11 @@
jar
+
+ org.springframework.boot
+ spring-boot-properties-migrator
+ runtime
+
org.junit.vintage
junit-vintage-engine
@@ -161,6 +166,12 @@
com.aliyun
dysmsapi20170525
${aliyun-sdk-dysms-version}
+
+
+ org.jacoco.agent
+ org.jacoco
+
+
@@ -172,6 +183,12 @@
org.apache.rocketmq
rocketmq-spring-boot-starter
${rocketmq-version}
+
+
+ fastjson
+ com.alibaba
+
+
@@ -220,6 +237,10 @@
groovy
org.codehaus.groovy
+
+ commons-collections4
+ org.apache.commons
+
@@ -248,6 +269,20 @@
com.alipay.sdk
alipay-sdk-java
${alipay-sdk-version}
+
+
+ bcprov-jdk15on
+ org.bouncycastle
+
+
+ commons-logging
+ commons-logging
+
+
+ xml-apis
+ xml-apis
+
+
@@ -314,6 +349,12 @@
com.googlecode.owasp-java-html-sanitizer
owasp-java-html-sanitizer
${owasp-java-html-sanitizer}
+
+
+ guava
+ com.google.guava
+
+
diff --git a/framework/src/main/java/cn/lili/common/utils/SnowFlake.java b/framework/src/main/java/cn/lili/common/utils/SnowFlake.java
index 18379ea7..e3cb3d70 100644
--- a/framework/src/main/java/cn/lili/common/utils/SnowFlake.java
+++ b/framework/src/main/java/cn/lili/common/utils/SnowFlake.java
@@ -33,7 +33,6 @@ public class SnowFlake {
*/
public static void initialize(long workerId, long datacenterId) {
snowflake = IdUtil.getSnowflake(workerId, datacenterId);
- log.error(workerId+""+datacenterId);
}
public static long getId() {
diff --git a/framework/src/main/java/cn/lili/modules/goods/event/GeneratorEsGoodsIndexEvent.java b/framework/src/main/java/cn/lili/modules/goods/event/GeneratorEsGoodsIndexEvent.java
new file mode 100644
index 00000000..ff5da90f
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/goods/event/GeneratorEsGoodsIndexEvent.java
@@ -0,0 +1,19 @@
+package cn.lili.modules.goods.event;
+
+import lombok.Data;
+import org.springframework.context.ApplicationEvent;
+
+/**
+ * @author paulG
+ * @since 2022/1/19
+ **/
+@Data
+public class GeneratorEsGoodsIndexEvent extends ApplicationEvent {
+
+ private String goodsId;
+
+ public GeneratorEsGoodsIndexEvent(Object source, String goodsId) {
+ super(source);
+ this.goodsId = goodsId;
+ }
+}
diff --git a/framework/src/main/java/cn/lili/modules/goods/listener/GeneratorEsGoodsIndexListener.java b/framework/src/main/java/cn/lili/modules/goods/listener/GeneratorEsGoodsIndexListener.java
new file mode 100644
index 00000000..7c5b95ba
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/goods/listener/GeneratorEsGoodsIndexListener.java
@@ -0,0 +1,38 @@
+package cn.lili.modules.goods.listener;
+
+import cn.lili.common.properties.RocketmqCustomProperties;
+import cn.lili.modules.goods.event.GeneratorEsGoodsIndexEvent;
+import cn.lili.rocketmq.RocketmqSendCallbackBuilder;
+import cn.lili.rocketmq.tags.GoodsTagsEnum;
+import org.apache.rocketmq.spring.core.RocketMQTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.event.TransactionPhase;
+import org.springframework.transaction.event.TransactionalEventListener;
+
+/**
+ * @author paulG
+ * @since 2022/1/19
+ **/
+@Component
+public class GeneratorEsGoodsIndexListener {
+
+ /**
+ * rocketMq
+ */
+ @Autowired
+ private RocketMQTemplate rocketMQTemplate;
+ /**
+ * rocketMq配置
+ */
+ @Autowired
+ private RocketmqCustomProperties rocketmqCustomProperties;
+
+ @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT)
+ public void generatorEsGoodsIndex(GeneratorEsGoodsIndexEvent esGoodsIndexEvent) {
+ String destination = rocketmqCustomProperties.getGoodsTopic() + ":" + GoodsTagsEnum.GENERATOR_GOODS_INDEX.name();
+ //发送mq消息
+ rocketMQTemplate.asyncSend(destination, esGoodsIndexEvent.getGoodsId(), RocketmqSendCallbackBuilder.commonCallback());
+ }
+
+}
diff --git a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java
index 90ebd4c4..6a68590a 100644
--- a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsServiceImpl.java
@@ -383,6 +383,7 @@ public class GoodsServiceImpl extends ServiceImpl implements
}
@Override
+ @Transactional(rollbackFor = Exception.class)
public void updateStock(String goodsId, Integer quantity) {
LambdaUpdateWrapper lambdaUpdateWrapper = Wrappers.lambdaUpdate();
lambdaUpdateWrapper.set(Goods::getQuantity, quantity);
diff --git a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java
index 2cc0f9e4..40cc4192 100644
--- a/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/goods/serviceimpl/GoodsSkuServiceImpl.java
@@ -22,6 +22,7 @@ import cn.lili.modules.goods.entity.vos.GoodsSkuSpecVO;
import cn.lili.modules.goods.entity.vos.GoodsSkuVO;
import cn.lili.modules.goods.entity.vos.GoodsVO;
import cn.lili.modules.goods.entity.vos.SpecValueVO;
+import cn.lili.modules.goods.event.GeneratorEsGoodsIndexEvent;
import cn.lili.modules.goods.mapper.GoodsSkuMapper;
import cn.lili.modules.goods.service.CategoryService;
import cn.lili.modules.goods.service.GoodsGalleryService;
@@ -48,10 +49,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationEventPublisher;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.event.TransactionPhase;
-import org.springframework.transaction.event.TransactionalEventListener;
import java.util.*;
import java.util.stream.Collectors;
@@ -109,6 +109,9 @@ public class GoodsSkuServiceImpl extends ServiceImpl i
@Autowired
private PromotionGoodsService promotionGoodsService;
+ @Autowired
+ private ApplicationEventPublisher applicationEventPublisher;
+
@Override
public void add(List