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

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

脚本增加锁逻辑

parent 7d1a82b9
...@@ -1016,17 +1016,18 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -1016,17 +1016,18 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
@Override @Override
public boolean checkOrderTime(String userId) { public boolean checkOrderTime(String userId) {
String lock = "order_lock:checkOrderTime:" + userId; String lock = "order_lock:checkOrderTime:" + userId;
try {
if (redisLockUtil.tryLock(lock, 1, 3600)) { if (redisLockUtil.tryLock(lock, 1, 3600)) {
try {
List<OrderScriptDto> dtoData = orderTicketsMapper.orderScriptDto(userId); List<OrderScriptDto> dtoData = orderTicketsMapper.orderScriptDto(userId);
HashMap<String, Integer> map2 = new HashMap<>(); HashMap<String, Integer> map2 = new HashMap<>();
Integer count = 0; Integer count = 0;
Integer mqCount = 0; Integer mqCount = 0;
Integer Acount = 0; Integer Acount = 0;
Integer Ecount = 0;
for (OrderScriptDto item : dtoData) { for (OrderScriptDto item : dtoData) {
count += 1; count += 1;
LinkedList<String> sqls = new LinkedList<>(); LinkedList<String> sqls = new LinkedList<>();
if (item.getStatus() == KylinTableStatusConst.ORDER_STATUS0) { if (item.getStatus().equals(KylinTableStatusConst.ORDER_STATUS0)) {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
try { try {
KylinOrderTicketVo vo = dataUtils.getOrderTicketVo(item.getOrderTicketsId()); KylinOrderTicketVo vo = dataUtils.getOrderTicketVo(item.getOrderTicketsId());
...@@ -1065,9 +1066,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -1065,9 +1066,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
mongoVoUtils.resetOrderListVo(item.getUserId(), 2, item.getOrderTicketsId(), vo); mongoVoUtils.resetOrderListVo(item.getUserId(), 2, item.getOrderTicketsId(), vo);
Acount += 1; Acount += 1;
// List<KylinOrderTicketEntities> entities = entitiesMapper.selectList(new UpdateWrapper<KylinOrderTicketEntities>().eq("order_id", item.getOrderTicketsId()));
List<KylinOrderTicketEntitiesVo> entities = vo.getEntitiesVoList(); List<KylinOrderTicketEntitiesVo> entities = vo.getEntitiesVoList();
// entitiesMapper.selectList(new UpdateWrapper<KylinOrderTicketEntities>().eq("order_id", item.getOrderTicketsId()));
for (int i = 0; i < entities.size(); i++) { for (int i = 0; i < entities.size(); i++) {
KylinOrderTicketEntitiesVo items = entities.get(i); KylinOrderTicketEntitiesVo items = entities.get(i);
dataUtils.changeBuyInfo(items.getUserId(), items.getEnterIdCode(), items.getPerformanceId(), items.getTicketId(), -1); dataUtils.changeBuyInfo(items.getUserId(), items.getEnterIdCode(), items.getPerformanceId(), items.getTicketId(), -1);
...@@ -1092,23 +1091,25 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM ...@@ -1092,23 +1091,25 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
e.printStackTrace(); e.printStackTrace();
return false; return false;
} }
}else{
Ecount+=1;
} }
} }
log.debug("COUNT 1 = " + count); log.debug("COUNT 1 = " + count);
log.debug("COUNT 2 = " + mqCount); log.debug("COUNT 2 = " + mqCount);
log.debug("COUNT 3 = " + Acount); log.debug("COUNT 3 = " + Acount);
log.debug("COUNT 4 = " + Ecount);
for (Map.Entry<String, Integer> entry : map2.entrySet()) { for (Map.Entry<String, Integer> entry : map2.entrySet()) {
dataUtils.changeSurplusGeneral(entry.getKey(), entry.getValue()); dataUtils.changeSurplusGeneral(entry.getKey(), entry.getValue());
} }
} else {
log.debug("WARNING LOCKING" );
}
} catch (Exception e) { } catch (Exception e) {
redisLockUtil.unlock(lock); e.printStackTrace();
return false;
} finally { } finally {
redisLockUtil.unlock(lock); redisLockUtil.unlock(lock);
} }
} else {
log.debug("WARNING LOCKING");
}
return true; return true;
} }
......
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