From 60a099a7edfd81a3b10c766e113c019cdef6cd3d Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 13 五月 2020 16:08:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div
---
fanli/src/main/java/com/yeshi/fanli/service/impl/order/msg/MsgOrderDetailServiceImpl.java | 34 +++++++++++++++++++++++++++++++++-
1 files changed, 33 insertions(+), 1 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/msg/MsgOrderDetailServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/msg/MsgOrderDetailServiceImpl.java
index 14cc7c9..6b734b7 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/msg/MsgOrderDetailServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/msg/MsgOrderDetailServiceImpl.java
@@ -8,12 +8,16 @@
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.msg.MsgOrderDetailMapper;
+import com.yeshi.fanli.entity.bus.msg.MsgExtra;
import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail;
+import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail.MsgTypeOrderTypeEnum;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.exception.msg.MsgOrderDetailException;
+import com.yeshi.fanli.service.inter.msg.MsgExtraService;
import com.yeshi.fanli.service.inter.msg.UserMsgReadStateService;
import com.yeshi.fanli.service.inter.order.msg.MsgOrderDetailService;
import com.yeshi.fanli.util.Constant;
+import com.yeshi.fanli.util.StringUtil;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
@@ -29,13 +33,27 @@
@Resource
private JedisPool jedisPool;
+
+ @Resource
+ private MsgExtraService msgExtraService;
+
@Override
public void addMsgOrderDetail(MsgOrderDetail detail, boolean needNotify) throws MsgOrderDetailException {
if (detail == null)
throw new MsgOrderDetailException(1, "娑堟伅涓虹┖");
- if (detail.getOrderId() == null || detail.getType() == null || detail.getUser() == null)
+ if (detail.getOrderId() == null || detail.getType() == null || detail.getUser() == null
+ || StringUtil.isNullOrEmpty(detail.getExtraInfo()))
throw new MsgOrderDetailException(2, "娑堟伅涓嶅畬鏁�");
+
+ if (detail.getType() == MsgTypeOrderTypeEnum.businessRunning) {
+ MsgOrderDetail msgOrderDetail = msgOrderDetailMapper.getByUniqueKey(detail.getUniquekey());
+ if (msgOrderDetail != null) {
+ return;
+ }
+ }
+
+
// 閿佷綇璁㈠崟鍙�
Jedis jedis = jedisPool.getResource();
try {
@@ -49,6 +67,8 @@
detail.setUpdateTime(new Date());
detail.setRead(false);
msgOrderDetailMapper.insertSelective(detail);
+ // 娑堟伅鍐呭
+ msgExtraService.addMsgExtra(detail.getId(), detail.getExtraInfo(), MsgExtra.MSG_TYPE_ORDER);
} else {
MsgOrderDetail update = new MsgOrderDetail();
update.setId(old.getId());
@@ -59,6 +79,7 @@
update.setRead(false);
update.setBeiZhu(detail.getBeiZhu());
msgOrderDetailMapper.updateByPrimaryKeySelective(update);
+ msgExtraService.addMsgExtra(update.getId(), detail.getExtraInfo(), MsgExtra.MSG_TYPE_ORDER);
}
if (needNotify)
userMsgReadStateService.addOrderMsgUnReadCount(detail.getUser().getId(), 1);
@@ -118,4 +139,15 @@
return msgOrderDetailMapper.listByOrderId(orderId);
}
+ @Override
+ public MsgOrderDetail selectByPrimaryKey(Long id) {
+ return msgOrderDetailMapper.selectByPrimaryKey(id);
+ }
+
+ @Override
+ public void deleteByPrimaryKey(Long id) {
+ msgOrderDetailMapper.deleteByPrimaryKey(id);
+ msgExtraService.deleteByPidAndType(id, MsgExtra.MSG_TYPE_ORDER);
+ }
+
}
--
Gitblit v1.8.0