diff --git a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java index e29ff8ce..aa025d1d 100644 --- a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java @@ -7,6 +7,8 @@ import com.alipay.api.internal.util.AlipaySignature; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.peanut.common.utils.CopyUtils; import com.peanut.common.utils.OrderUtils; +import com.peanut.modules.book.dao.ShopProductBookDao; +import com.peanut.modules.book.dao.UserEbookBuyDao; import com.peanut.modules.book.entity.*; import com.peanut.modules.book.service.*; import com.peanut.modules.pay.alipay.config.AliPayConfig; @@ -20,10 +22,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; -import java.util.Date; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; +import java.util.*; /** * 支付宝支付实现 @@ -46,6 +45,10 @@ public class AliPayServiceImpl implements AliPayService { private PayPaymentOrderService payPaymentOrderService; @Autowired private BuyOrderService buyOrderService; + @Autowired + private ShopProductBookDao shopProductBookDao; + @Autowired + private UserEbookBuyDao userEbookBuyDao; @Override public String pay(AlipayDTO payDto) { @@ -188,6 +191,27 @@ public class AliPayServiceImpl implements AliPayService { if (bigDecimal.compareTo(realMoney) == 0) { buyOrderService.updateOrderStatus(Integer.valueOf(customerid),oldPayZfbOrderEntity.getRelevanceoid(),"0"); } + + /* 记录用户购买的书籍 */ + // 查询订单的所有 book_id + List orderBookIdList = shopProductBookDao.getOrderBookId(orderEntity.getOrderSn()); + // 去重 + Set set = new HashSet<>(orderBookIdList); + orderBookIdList.clear(); + orderBookIdList.addAll(set); + // 查询用户的所有 book_id + List userBookIdList = userEbookBuyDao.getUserBookId(orderEntity.getUserId()); + // 取差集 + orderBookIdList.removeAll(userBookIdList); + // 为用户添加书籍 + for (Integer bookId : orderBookIdList) { + UserEbookBuyEntity entity = new UserEbookBuyEntity(); + entity.setUserId(orderEntity.getUserId()); + entity.setBookId(bookId); + userEbookBuyDao.insert(entity); + } + + }