记得上下班打卡 | git大法好,push需谨慎

Commit b133e874 authored by 胡佳晨's avatar 胡佳晨

修复 限购未回滚的bug

parent 590355c0
...@@ -237,7 +237,8 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin ...@@ -237,7 +237,8 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin
HashMap<String, String[]> map = getMixMasterCode(orderCode); HashMap<String, String[]> map = getMixMasterCode(orderCode);
String[] nft = map.get("nft"); String[] nft = map.get("nft");
String[] goblin = map.get("goblin"); String[] goblin = map.get("goblin");
String mixId = "";
String uid = "";
for (String orderId : goblin) { for (String orderId : goblin) {
if ("".equals(orderId)) { if ("".equals(orderId)) {
break; break;
...@@ -257,8 +258,10 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin ...@@ -257,8 +258,10 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin
setGoblinOrderSku(skuVo.getOrderSkuId(), skuVo); setGoblinOrderSku(skuVo.getOrderSkuId(), skuVo);
//库存&限购&&待支付订单 //库存&限购&&待支付订单
int count = incrSkuStock(orderVo.getMixId(), skuVo.getSkuId(), skuVo.getNum()); int count = incrSkuStock(orderVo.getMixId(), skuVo.getSkuId(), skuVo.getNum());
int limit = decrMixLimit(orderVo.getMixId(),orderVo.getUserId()); if ("".equals(mixId) && "".equals(uid)) {
log.debug("count {} limit {}",count,limit); mixId = orderVo.getMixId();
uid = orderVo.getUserId();
}
//mysql //mysql
sqlDataSku.add(new Object[]{ sqlDataSku.add(new Object[]{
skuVo.getStatus(), now, skuVo.getOrderSkuId(), now, now skuVo.getStatus(), now, skuVo.getOrderSkuId(), now, now
...@@ -293,9 +296,14 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin ...@@ -293,9 +296,14 @@ public abstract class AbstractOrderCloseReceiver implements StreamListener<Strin
if ("".equals(orderId)) { if ("".equals(orderId)) {
break; break;
} }
if ("".equals(mixId) && "".equals(uid)) {
GoblinNftOrderVo nftOrder = goblinNftUtils.getNftOrder(orderId);
mixId = nftOrder.getMixId();
uid = nftOrder.getUserId();
}
checkNftOrderTime(orderId); checkNftOrderTime(orderId);
} }
int limit = decrMixLimit(mixId, uid);
} catch (Exception e) { } catch (Exception e) {
log.error("MIX库存回滚异常valueData={}", orderCode, e); log.error("MIX库存回滚异常valueData={}", orderCode, e);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment