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

Commit 3d525e46 authored by jiangxiulong's avatar jiangxiulong

Merge remote-tracking branch 'origin/dev' into dev

parents df09e086 7128369b
......@@ -89,8 +89,8 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
private OrderUtils orderUtils;
@Autowired
private OtherUtils otherUtils;
@Autowired
private RedisLockUtil redisLockUtil;
// @Autowired
// private RedisLockUtil redisLockUtil;
@Autowired
private MongoVoUtils mongoVoUtils;
@Autowired
......@@ -113,9 +113,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
boolean isDownGeneral = false;
String uid = CurrentUtil.getCurrentUid();
String lock = "userId:" + uid;
if (!redisLockUtil.tryLock(lock, 2, 2)) {
return ResponseDto.failure("请求频繁");//参数错误
}
// if (!redisLockUtil.tryLock(lock, 2, 2)) {
// return ResponseDto.failure("请求频繁");//参数错误
// }
try {
KylinPerformanceVo performanceData = dataUtils.getPerformanceVo(payOrderParam.getPerformanceId());
KylinTicketTimesVo ticketTimesData = null;
......@@ -136,16 +136,16 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
}
if (performanceData == null || ticketTimesData == null || ticketData == null) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("参数错误");//参数错误
}
if (!ticketData.getTimeId().equals(payOrderParam.getTimeId()) || !ticketTimesData.getPerformanceId().equals(payOrderParam.getPerformanceId())) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("参数错误");//参数错误List<AdamEntersVo> entersVoList
}
//判断代理
if (!checkAgent(payOrderParam.getAgentId(), ticketData)) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("无权购买");
}
......@@ -161,7 +161,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
if (ticketData.getIsExclusive() == 1) {
memberType = 2;
if (!isMember) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("非会员用户暂不可购买");//没有会员权限
}
} else {
......@@ -169,7 +169,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
// 会员购买逻辑
memberType = 1;
if (!isMember) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("非会员用户暂不可购买");//没有会员权限
}
} else {
......@@ -188,38 +188,38 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
//通用判断时间
if (isMember) {
if (DateUtil.compareStrDay(DateUtil.getNowTime(), memberTimeStart) == -1) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("未开始售卖");//未开始
}
} else {
if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeStart) == -1) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("未开始售卖");//未开始
}
}
if (DateUtil.compareStrDay(DateUtil.getNowTime(), timeEnd) == 1) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("售卖已结束");//已结束
}
//快递票判断
if (payOrderParam.getIsExpress() != null) {
if (payOrderParam.getIsExpress() == 1 && DateUtil.compareStrDay(DateUtil.getNowTime(), timeExpressEnd) == 1) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("已超过快递票截止时间");//快递票不卖
}
if (payOrderParam.getIsExpress() == 1 && payOrderParam.getAddressId().isEmpty()) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("快递票未填写收货地址");//快递票未填写收货地址
}
}
//实名判断
if (isTrueName == 1 && payOrderParam.getEnterIdList().size() <= 0) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("入场人数量错误");//需要实名 未实名
}
if (isTrueName == 1 && payOrderParam.getEnterIdList().size() != payOrderParam.getNumber()) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("入场人数量错误");//入场人数量错误
}
......@@ -227,7 +227,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
int surplusGeneral = dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), -payOrderParam.getNumber());
if (surplusGeneral < 0) {//库存回滚
dataUtils.changeSurplusGeneral(payOrderParam.getTicketId(), payOrderParam.getNumber());
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("该票种已售罄");//没抢到
} else {
isDownGeneral = true;
......@@ -241,7 +241,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
if (isStudent == 1) {
int age = IDCard.getAgeByIdCard(adamEnters.getIdCard());
if (age > 25) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("年龄不符合");//年龄超了
}
}
......@@ -259,18 +259,18 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
for (int i = 0; i < entersVoList.size(); i++) {
String res1 = orderUtils.judgeOrderLimit(performanceData.getType(), uid, entersVoList.get(i).getIdCard(), payOrderParam.getPerformanceId(), payOrderParam.getTicketId(), performanceLimit, performanceMemberLimit, ticketLimit, ticketMemberLimit, 1, 1, memberType, isTrueName);
if (!res1.equals("")) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure(res1);//乱七八糟异常
}
}
} else {
String res1 = orderUtils.judgeOrderLimit(performanceData.getType(), uid, "", payOrderParam.getPerformanceId(), payOrderParam.getTicketId(), performanceLimit, performanceMemberLimit, ticketLimit, ticketMemberLimit, payOrderParam.getNumber(), payOrderParam.getNumber(), memberType, isTrueName);
if (!res1.equals("")) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure(res1);//乱七八糟异常
}
}
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return order(payOrderParam, uid, isMember, isTrueName, performanceData, ticketData, entersVoList, isStudent, ticketTimesData);
}
} catch (Exception e) {
......@@ -279,7 +279,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
}
e.printStackTrace();
log.error("Kylin Order Pay Error = " + e.getMessage());
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return ResponseDto.failure("下单失败");//乱七八糟异常
}
}
......@@ -635,31 +635,31 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
//支付时间
LocalDateTime now = LocalDateTime.now();
String lock = "order_lock:" + syncOrderParam.getOrder_code();
if (!redisLockUtil.tryLock(lock, 240, 240)) {
return "fail";//参数错误
}
// if (!redisLockUtil.tryLock(lock, 240, 240)) {
// return "fail";//参数错误
// }
String timePay = DateUtil.Formatter.yyyyMMddHHmmss.format(now);
KylinOrderTicketVo orderTicketData = mongoTemplate.findOne(Query.query(Criteria.where("orderCode").is(syncOrderParam.getOrder_code())), KylinOrderTicketVo.class, KylinOrderTicketVo.class.getSimpleName());
if (orderTicketData == null) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return "fail";//订单不存在
}
if (orderTicketData.getStatus() != KylinTableStatusConst.ORDER_STATUS0) {
if (orderTicketData.getPayCode().equals(syncOrderParam.getCode()) && orderTicketData.getStatus() == KylinTableStatusConst.ORDER_STATUS1) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return "success";//已经支付
}
if (!orderTicketData.getPayCode().equals(syncOrderParam.getCode())) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return "fail";//重复支付
}
}
if (orderTicketData.getPriceActual().compareTo(syncOrderParam.getPrice()) != 0) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return "fail";//价格不符
}
......@@ -767,7 +767,7 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
// 大麦回调
sycDamaiOrder(orderTickets.getOrderTicketsId());
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
return "success";
}
......@@ -899,9 +899,9 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
LinkedList<String> sqls = new LinkedList<>();
for (OrderScriptDto item : dtoData) {
String lock = "order_lock:" + item.getOrderCode();
if (!redisLockUtil.tryLock(lock, 30, 240)) {
continue;
}
// if (!redisLockUtil.tryLock(lock, 30, 240)) {
// continue;
// }
if (item.getStatus() == KylinTableStatusConst.ORDER_STATUS0) {
LocalDateTime now = LocalDateTime.now();
try {
......@@ -962,12 +962,12 @@ public class KylinOrderTicketsServiceImpl extends ServiceImpl<KylinOrderTicketsM
rabbitTemplate.convertSendAndReceive(MQConst.EXCHANGES_LIQUIDNET_SQL_ORDER_CLOSE, MQConst.ROUTING_KEY_SQL_ORDER_CLOSE, SqlMapping.gets(sqls, sqlsDataA, sqlsDataB,sqlsDataC));
} catch (Exception e) {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
e.printStackTrace();
return false;
}
} else {
redisLockUtil.unlock(lock);
//redisLockUtil.unlock(lock);
}
}
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