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

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

修改逻辑

parent 2ce4b3c3
...@@ -107,27 +107,9 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService { ...@@ -107,27 +107,9 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
Long time3 = System.currentTimeMillis(); Long time3 = System.currentTimeMillis();
String skuId = skuParam.getSkuId(); String skuId = skuParam.getSkuId();
int number = skuParam.getNumber(); int number = skuParam.getNumber();
GoblinGoodsSkuInfoVo skuVo = redisUtils.getGoodsSkuInfoVo(skuId);
log.error("获取skuVo" + (System.currentTimeMillis() - time3) + "ms");
if (!(skuVo.getStatus().equals("3") && skuVo.getShelvesStatus().equals("3")) || skuVo.getDelFlg().equals("1")) {
throw new Exception("不可购买");
}
// 判断库存
time3 = System.currentTimeMillis();
String pre = GoblinStatusConst.MarketPreStatus.getPre(skuId); String pre = GoblinStatusConst.MarketPreStatus.getPre(skuId);
int limitCount = skuVo.getBuyLimit() == 0 ? Integer.MAX_VALUE : skuVo.getBuyLimit(); // GoblinGoodsSkuInfoVo skuVo = redisUtils.getGoodsSkuInfoVo(skuId);
//判断限购 log.error("获取skuVo" + (System.currentTimeMillis() - time3) + "ms");
if (noZhengzaiOrder(uid)) {
String res1 = orderUtils.judgeOrderLimit(uid, skuId, number, limitCount);
if (!res1.equals("")) {
throw new Exception("已超出限购数量");
}
//权限限购
Boolean res2 = orderUtils.judgeOrderRose(isMember, skuId, StringUtils.defaultString(((String) CurrentUtil.getTokenClaims().get("mobile")), ""), Integer.parseInt(skuVo.getBuyFactor()));
if (!res2) {
throw new Exception("无权购买");
}
}
int surplusGeneral = redisUtils.decrSkuStock(pre, skuId, number); int surplusGeneral = redisUtils.decrSkuStock(pre, skuId, number);
skuAndPreListAndNumber.add(skuId + "," + pre + "," + number); skuAndPreListAndNumber.add(skuId + "," + pre + "," + number);
log.error("判断逻辑 " + (System.currentTimeMillis() - time3) + "ms"); log.error("判断逻辑 " + (System.currentTimeMillis() - time3) + "ms");
...@@ -167,7 +149,6 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService { ...@@ -167,7 +149,6 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
if (noZhengzaiOrder(uid)) { if (noZhengzaiOrder(uid)) {
redisUtils.decrSkuCountByUid(uid, skuId, number); redisUtils.decrSkuCountByUid(uid, skuId, number);
} }
// log.error("回滚库存 skuId:{}", skuId);
} }
//回退平台券 //回退平台券
for (String platformCode : platformCodeList) { for (String platformCode : platformCodeList) {
...@@ -236,8 +217,24 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService { ...@@ -236,8 +217,24 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
Long time3 = System.currentTimeMillis(); Long time3 = System.currentTimeMillis();
GoblinGoodsSkuInfoVo skuVo = redisUtils.getGoodsSkuInfoVo(skuParam.getSkuId()); GoblinGoodsSkuInfoVo skuVo = redisUtils.getGoodsSkuInfoVo(skuParam.getSkuId());
GoblinGoodsInfoVo spuVo = redisUtils.getGoodsInfoVo(skuParam.getSpuId()); GoblinGoodsInfoVo spuVo = redisUtils.getGoodsInfoVo(skuParam.getSpuId());
if (!(skuVo.getStatus().equals("3") && skuVo.getShelvesStatus().equals("3")) || skuVo.getDelFlg().equals("1")) {
throw new Exception("不可购买");
}
// 判断库存
int limitCount = skuVo.getBuyLimit() == 0 ? Integer.MAX_VALUE : skuVo.getBuyLimit();
//判断限购
if (noZhengzaiOrder(uid)) {
String res1 = orderUtils.judgeOrderLimit(uid, skuParam.getSkuId(), skuParam.getNumber(), limitCount);
if (!res1.equals("")) {
throw new Exception("已超出限购数量");
}
//权限限购
Boolean res2 = orderUtils.judgeOrderRose(isMember, skuParam.getSkuId(), StringUtils.defaultString(((String) CurrentUtil.getTokenClaims().get("mobile")), ""), Integer.parseInt(skuVo.getBuyFactor()));
if (!res2) {
throw new Exception("无权购买");
}
}
log.error("获取会员sku&spu:"+(System.currentTimeMillis()-time3)+"ms"); log.error("获取会员sku&spu:"+(System.currentTimeMillis()-time3)+"ms");
//todo
if (!spuVo.getStoreId().equals(storeParam.getStoreId()) || !skuVo.getStoreId().equals(storeParam.getStoreId())) { if (!spuVo.getStoreId().equals(storeParam.getStoreId()) || !skuVo.getStoreId().equals(storeParam.getStoreId())) {
throw new Exception("非法参数"); throw new Exception("非法参数");
} }
...@@ -253,7 +250,6 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService { ...@@ -253,7 +250,6 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
price = skuVo.getPriceMember(); price = skuVo.getPriceMember();
} }
//活动价格 //活动价格
time3 = System.currentTimeMillis();
// if (pre != null) { // if (pre != null) {
// GoblinGoodsSkuInfoVo skuMarketVo = redisUtils.getGoodsSkuInfoVo(skuParam.getSkuId().split(pre)[0]); // GoblinGoodsSkuInfoVo skuMarketVo = redisUtils.getGoodsSkuInfoVo(skuParam.getSkuId().split(pre)[0]);
// priceBase = skuMarketVo.getPrice(); // priceBase = skuMarketVo.getPrice();
......
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