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

Commit dd8186b2 authored by 张国柄's avatar 张国柄

~API:商品编辑:SKU编辑:购买人员名单限制逻辑调整;

parent e2db9c6e
......@@ -359,17 +359,18 @@ public class GoblinStoreMgtGoodsController {
@ApiOperationSupport(order = 7)
@ApiOperation(value = "商品编辑:SKU编辑", notes = "只修改单品信息,不包含商品信息")
@PostMapping("edit_sku")
public ResponseDto<Object> editSku(@Valid @RequestBody GoblinStoreMgtGoodsEditSkuParam storeMgtGoodsEditSkuParam) {
String currentUid = CurrentUtil.getCurrentUid();
if (!goblinRedisUtils.hasStoreId(currentUid, storeMgtGoodsEditSkuParam.getStoreId())) {
public ResponseDto<Object> editSku(@Valid @RequestBody GoblinStoreMgtGoodsEditSkuParam mgtGoodsEditSkuParam) {
String currentUid = CurrentUtil.getCurrentUid(), storeId = mgtGoodsEditSkuParam.getStoreId();
if (!goblinRedisUtils.hasStoreId(currentUid, storeId)) {
return ResponseDto.failure(ErrorMapping.get("149002"));
}
// TODO: 2022/1/5 zhanggb +分类-ISBN校验
GoblinGoodsSkuInfoVo mgtGoodsSkuInfoVo = goblinRedisUtils.getGoodsSkuInfoVo(storeMgtGoodsEditSkuParam.getSkuId());
if (StringUtils.isBlank(storeMgtGoodsEditSkuParam.getSkuId())
|| null == mgtGoodsSkuInfoVo || !mgtGoodsSkuInfoVo.getDelFlg().equals("0")
|| !mgtGoodsSkuInfoVo.getStoreId().equals(storeMgtGoodsEditSkuParam.getStoreId())) {
String paramSkuId = mgtGoodsEditSkuParam.getSkuId();
GoblinGoodsSkuInfoVo mgtGoodsSkuInfoVo;
if (StringUtils.isBlank(paramSkuId)
|| null == (mgtGoodsSkuInfoVo = goblinRedisUtils.getGoodsSkuInfoVo(paramSkuId)) || !mgtGoodsSkuInfoVo.getDelFlg().equals("0")
|| !mgtGoodsSkuInfoVo.getStoreId().equals(storeId)) {
return ResponseDto.failure(ErrorMapping.get("149011"));
}
GoblinGoodsInfoVo goodsInfoVo = goblinRedisUtils.getGoodsInfoVo(mgtGoodsSkuInfoVo.getSpuId());
......@@ -378,12 +379,11 @@ public class GoblinStoreMgtGoodsController {
}
if (log.isDebugEnabled()) {
log.debug("商品管理:商品编辑:SKU编辑:[GoblinStoreMgtGoodsEditSkuParam={}]", JsonUtils.toJson(storeMgtGoodsEditSkuParam));
log.debug("商品管理:商品编辑:SKU编辑:[GoblinStoreMgtGoodsEditSkuParam={}]", JsonUtils.toJson(mgtGoodsEditSkuParam));
}
storeMgtGoodsEditSkuParam.setStock(mgtGoodsSkuInfoVo.getStock());
storeMgtGoodsEditSkuParam.setSkuStock(mgtGoodsSkuInfoVo.getSkuStock());
String paramSkuId = storeMgtGoodsEditSkuParam.getSkuId();
Integer operStock = storeMgtGoodsEditSkuParam.getOperStock();
mgtGoodsEditSkuParam.setStock(mgtGoodsSkuInfoVo.getStock());
mgtGoodsEditSkuParam.setSkuStock(mgtGoodsSkuInfoVo.getSkuStock());
Integer operStock = mgtGoodsEditSkuParam.getOperStock();
if (null != operStock && operStock != 0) {// 处理库存
int operStockVal = Math.abs(operStock);
Integer stock = mgtGoodsSkuInfoVo.getSkuStock();// 总库存
......@@ -395,19 +395,19 @@ public class GoblinStoreMgtGoodsController {
goblinRedisUtils.incrSkuStock(null, paramSkuId, operStockVal);
return ResponseDto.failure(ErrorMapping.get("149012"));
} else {
storeMgtGoodsEditSkuParam.setSkuStock(skuStock - operStockVal);
storeMgtGoodsEditSkuParam.setStock(stock - operStockVal);
mgtGoodsEditSkuParam.setSkuStock(skuStock - operStockVal);
mgtGoodsEditSkuParam.setStock(stock - operStockVal);
}
} else if (operStock > 0) {// 增加
goblinRedisUtils.incrSkuStock(null, paramSkuId, operStockVal);
storeMgtGoodsEditSkuParam.setSkuStock(skuStock + operStockVal);
storeMgtGoodsEditSkuParam.setStock(stock + operStockVal);
mgtGoodsEditSkuParam.setSkuStock(skuStock + operStockVal);
mgtGoodsEditSkuParam.setStock(stock + operStockVal);
} else {
return ResponseDto.failure(ErrorMapping.get("149012"));
}
}
List<GoblinGoodsSpecDto> paramSkuSpecList = storeMgtGoodsEditSkuParam.getSkuSpecList();
List<GoblinGoodsSpecDto> paramSkuSpecList = mgtGoodsEditSkuParam.getSkuSpecList();
List<String> skuIdList = goodsInfoVo.getSkuIdList();
Map<String, List<GoblinGoodsSpecDto>> otherSkuSpecListMap = new HashMap<>();
Map<String, String> delSpuSpecMap = CollectionUtil.mapStringString();
......@@ -486,7 +486,11 @@ public class GoblinStoreMgtGoodsController {
return ResponseDto.failure(ErrorMapping.get("149015"));
}
}
if (goblinstoreMgtGoodsService.goodsEditSku(currentUid, storeMgtGoodsEditSkuParam, goodsInfoVo, delSpuSpecMap, beUpdateSpuSpecFlg)) {
String buyRoster = mgtGoodsEditSkuParam.getBuyRoster(), befBuyRoster = mgtGoodsSkuInfoVo.getBuyRoster();
if (!mgtGoodsEditSkuParam.getBuyFactor().equals("2") || StringUtils.equals(befBuyRoster, buyRoster) || !buyRoster.startsWith("http")) {
mgtGoodsEditSkuParam.setBuyRoster(null);
}
if (goblinstoreMgtGoodsService.goodsEditSku(currentUid, mgtGoodsEditSkuParam, goodsInfoVo, delSpuSpecMap, beUpdateSpuSpecFlg)) {
mgtGoodsSkuInfoVo = goblinRedisUtils.getGoodsSkuInfoVo(paramSkuId);
mgtGoodsSkuInfoVo.setSurplusStock(goblinRedisUtils.getSkuStock(null, paramSkuId));
return ResponseDto.success(mgtGoodsSkuInfoVo);
......
......@@ -620,7 +620,7 @@ public class GoblinStoreMgtGoodsServiceImpl implements IGoblinstoreMgtGoodsServi
updateGoodsObjs.add(new Object[]{priceGe, priceLe, uid, now, spuId});
}
String buyRoster = mgtGoodsEditSkuParam.getBuyRoster();
if (mgtGoodsEditSkuParam.getBuyFactor().equals("2") && StringUtils.isNotBlank(buyRoster) && buyRoster.startsWith("http")) {
if (StringUtils.isNotEmpty(buyRoster)) {
queueUtils.sendMsgByRedisXls(buyRoster, mgtGoodsEditSkuParam.getBuyRosterType(), skuId);
}
......
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