1.库存预警提示语修改

2.库存预警30分钟内只推送一次
3.点歌支付成功同步保存平台订单号
This commit is contained in:
2024-07-11 09:36:26 +08:00
parent 4b2996adb3
commit 9c9c7d8608
10 changed files with 100 additions and 105 deletions

View File

@@ -460,9 +460,16 @@ public class CartService {
) {
List<TbShopOpenId> shopOpenIds = shopOpenIdMapper.selectByShopId(Integer.valueOf(product.getShopId()));
shopOpenIds.forEach(item -> {
wechatUtil.sendStockWarnMsg(shopInfo.getShopName(), product.getName(),
product.getIsDistribute() == 1 ? String.valueOf(product.getStockNumber() - num) : String.valueOf(productSku.getStockNumber() - num),
"耗材库存不足,请及时补充。", item.getOpenId());
String message = redisUtil.getMessage(RedisCst.SEND_STOCK_WARN_MSG + product.getId() + ":" + item.getOpenId());
if (message == null) {
wechatUtil.sendStockWarnMsg(shopInfo.getShopName(), product.getName(),
product.getIsDistribute() == 1 ? String.valueOf(product.getStockNumber() - num) : String.valueOf(productSku.getStockNumber() - num),
"商品库存不足,请及时补充。", item.getOpenId());
redisUtil.saveMessage(RedisCst.SEND_STOCK_WARN_MSG + product.getId() + ":" + item.getOpenId(), product.getId().toString(), 60 * 30L);
}else {
log.info("{}已在30分钟内推送过消息跳过发送", item.getOpenId());
}
});
}
}

View File

@@ -1205,30 +1205,7 @@ public class PayService {
PushToClientChannelHandlerAdapter.getInstance().AppSendInfoV1(orderInfo.getShopId(), orderInfo.getOrderNo(), client);
}
/**
* 点歌支付成功
*
* @param mchOrderNo 商户订单编号
* @param orderNo
* @return
*/
public String songPaySuccess(String mchOrderNo, String orderNo) {
TbMemberIn memberIn = tbMemberInMapper.selectByOrderNo(mchOrderNo);
if (ObjectUtil.isEmpty(memberIn)) {
return "充值记录不存在";
}
if (!"7".equals(memberIn.getStatus())) {
return "订单已处理";
}
memberIn.setTradeNo(orderNo);
memberIn.setStatus("0");
memberIn.setUpdateTime(new Date());
tbMemberInMapper.updateByPrimaryKeySelective(memberIn);
shopSongOrderService.successPay(orderNo);
return "success";
}
public Result paySongOrder(String openId, String shopId, Integer orderId, String ip, TbMerchantThirdApply thirdApply) throws JsonProcessingException {
if (ObjectUtil.isEmpty(openId) || Objects.isNull(openId)) {
@@ -1237,7 +1214,7 @@ public class PayService {
TbShopSongOrder songOrder = tbShopSongOrderMapper.selectByPrimaryKey(Long.valueOf(orderId));
if (songOrder.getState() != 0 && songOrder.getState() != -1) {
if (songOrder == null || songOrder.getState() != 0 && songOrder.getState() != -1) {
return Result.fail("订单状态异常,不允许支付");
}
@@ -1287,14 +1264,14 @@ public class PayService {
}
@Transactional(rollbackFor = Exception.class)
public String songOrderSuccess(String mchOrderNo, String orderNo) {
public String songOrderSuccess(String mchOrderNo, String tradeNo) {
TbShopSongOrder songOrder = tbShopSongOrderMapper.selectByOrderNo(mchOrderNo);
if (ObjectUtil.isEmpty(songOrder)) {
return "订单信息不存在";
}
log.info("更新点歌订单:{}", songOrder);
shopSongOrderService.successPay(mchOrderNo);
shopSongOrderService.successPay(mchOrderNo, tradeNo);
return "SUCCESS";
}

View File

@@ -7,7 +7,7 @@ package com.chaozhanggui.system.cashierservice.service;
*/
public interface TbShopSongOrderService {
void successPay(String orderNo);
void successPay(String orderNo, String tradeNo);
void clearExpireOrder();
}

View File

@@ -26,13 +26,14 @@ public class TbShopSongOrderServiceImpl
}
@Override
public void successPay(String orderNo) {
public void successPay(String orderNo, String tradeNo) {
TbShopSongOrder shopSongOrder = shopSongOrderMapper.selectByOrderNo(orderNo);
if (shopSongOrder.getState().equals(1)) {
log.warn("点歌支付成功,重复支付,订单编号:{}", orderNo);
return;
}
shopSongOrder.setState(1);
shopSongOrder.setPayOrderId(tradeNo);
shopSongOrder.setRealMoney(shopSongOrder.getPayMoney());
shopSongOrderMapper.updateByPrimaryKeySelective(shopSongOrder);
shopSongMapper.incrNum(1, shopSongOrder.getSongId());