|
@@ -2332,11 +2332,12 @@ public class OrderServiceImpl implements OrderService {
|
|
|
// 当前出区数
|
|
|
Integer exitRegionNumber = goodsDto.getExitRegionNumber();
|
|
|
// 保税仓库存 + 门店库存 - 出区数 > 购买数
|
|
|
- if (!((warehouseStock + stockNum) - exitRegionNumber > sellVolume)) {
|
|
|
+ if (!((warehouseStock + stockNum) - exitRegionNumber > sellVolume) || sellVolume > stockNum) {
|
|
|
// 库存不足
|
|
|
LOGGER.error("sku:【{}】库存不足,门店可用库存:【{}】,仓库可用库存:【{}】,购买数量:【{}】", sku, stockNum, warehouseStock, sellVolume);
|
|
|
throw new ServiceException(String.format("sku:【%s】库存不足,门店可用库存:【%s】,仓库可用库存:【%s】,购买数量:【%s】", sku, stockNum, warehouseStock, sellVolume));
|
|
|
}
|
|
|
+ sellVolume -= 1;
|
|
|
// TODO 库存变化记录新增字段:订单号、门店编号
|
|
|
// 门店库存变化记录
|
|
|
StoreMngChangeEntity storeMngChangeEntity = new StoreMngChangeEntity();
|
|
@@ -2793,7 +2794,7 @@ public class OrderServiceImpl implements OrderService {
|
|
|
LOGGER.info("----------------------------------------------------------------------------");
|
|
|
return resultObj;
|
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
+ LOGGER.error("下单出现异常:" + e);
|
|
|
resultObj.put("errno", 400);
|
|
|
resultObj.put("errmsg", "订单异常------" + e.getMessage());
|
|
|
throw new RuntimeException(e);
|
|
@@ -3350,26 +3351,28 @@ public class OrderServiceImpl implements OrderService {
|
|
|
haiKongMemberScoreChangeRecordEntity.setResendStatus(HaiKongMemberOrderResendStatusEnum.NON_RESEND.getStatus());
|
|
|
haiKongMemberScoreChangeRecordService.save(haiKongMemberScoreChangeRecordEntity);
|
|
|
}
|
|
|
- LOGGER.info("保存会员系统积分变动详情记录中......");
|
|
|
- List<HaiKongMemberScoreChangeDetailRecordEntity> recordEntityList = goodsList.stream().distinct().map(goodsEntity -> {
|
|
|
- HaiKongMemberScoreChangeDetailRecordEntity entity = new HaiKongMemberScoreChangeDetailRecordEntity();
|
|
|
- String sku = goodsEntity.getSku();
|
|
|
- OrderGiftScoreRulesVo orderGiftScoreRulesVo = giftGoodsScoreDetailMap.get(sku);
|
|
|
- if (Objects.nonNull(orderGiftScoreRulesVo)) {
|
|
|
- entity.setGenerateRatio(orderGiftScoreRulesVo.getGenerateRatio());
|
|
|
- entity.setGenerateRules(orderGiftScoreRulesVo.getGenerateType());
|
|
|
- entity.setGiftScore(orderGiftScoreRulesVo.getGiftScore());
|
|
|
- }
|
|
|
- entity.setOrderSn(order.getOrder_sn());
|
|
|
- entity.setRetailPrice(goodsEntity.getRetailPrice());
|
|
|
- entity.setActualPrice(goodsEntity.getTotalPrice());
|
|
|
- entity.setProductBarcode(goodsEntity.getProdBarcode());
|
|
|
- entity.setSellVolume(goodsEntity.getSellVolume());
|
|
|
- entity.setSku(sku);
|
|
|
- entity.setDeductionScore(goodsEntity.getDeductionScore());
|
|
|
- return entity;
|
|
|
- }).collect(Collectors.toList());
|
|
|
- haiKongMemberScoreChangeDetailRecordService.saveBatch(recordEntityList);
|
|
|
+ if (changeEvent.equals(HaiKongMemberScoreChangeEventEnum.ADD.getEvent())) {
|
|
|
+ LOGGER.info("保存会员系统积分变动详情记录中......");
|
|
|
+ List<HaiKongMemberScoreChangeDetailRecordEntity> recordEntityList = goodsList.stream().distinct().map(goodsEntity -> {
|
|
|
+ HaiKongMemberScoreChangeDetailRecordEntity entity = new HaiKongMemberScoreChangeDetailRecordEntity();
|
|
|
+ String sku = goodsEntity.getSku();
|
|
|
+ OrderGiftScoreRulesVo orderGiftScoreRulesVo = giftGoodsScoreDetailMap.get(sku);
|
|
|
+ if (Objects.nonNull(orderGiftScoreRulesVo)) {
|
|
|
+ entity.setGenerateRatio(orderGiftScoreRulesVo.getGenerateRatio());
|
|
|
+ entity.setGenerateRules(orderGiftScoreRulesVo.getGenerateType());
|
|
|
+ entity.setGiftScore(orderGiftScoreRulesVo.getGiftScore());
|
|
|
+ }
|
|
|
+ entity.setOrderSn(order.getOrder_sn());
|
|
|
+ entity.setRetailPrice(goodsEntity.getRetailPrice());
|
|
|
+ entity.setActualPrice(goodsEntity.getTotalPrice());
|
|
|
+ entity.setProductBarcode(goodsEntity.getProdBarcode());
|
|
|
+ entity.setSellVolume(goodsEntity.getSellVolume());
|
|
|
+ entity.setSku(sku);
|
|
|
+ entity.setDeductionScore(goodsEntity.getDeductionScore());
|
|
|
+ return entity;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ haiKongMemberScoreChangeDetailRecordService.saveBatch(recordEntityList);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private boolean orderQuery(OrderVo order, OrderProcessRecordEntity processRecordEntity) {
|