|
@@ -1140,9 +1140,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
StringBuilder goodsName = new StringBuilder();
|
|
StringBuilder goodsName = new StringBuilder();
|
|
|
StringBuilder retrieval = new StringBuilder();
|
|
StringBuilder retrieval = new StringBuilder();
|
|
|
List<Long> goodsId = order.getOrderItemsList().stream().map(PjOrderItems::getGoodsId).distinct().collect(Collectors.toList());
|
|
List<Long> goodsId = order.getOrderItemsList().stream().map(PjOrderItems::getGoodsId).distinct().collect(Collectors.toList());
|
|
|
- if (goodsId.size() != order.getOrderItemsList().size()) {
|
|
|
|
|
|
|
+ List<String> goodsNames = order.getOrderItemsList().stream().map(PjOrderItems::getGoodsName).distinct().collect(Collectors.toList());
|
|
|
|
|
+ /*if (goodsId.size() != order.getOrderItemsList().size()) {
|
|
|
throw new RuntimeException("明细存在重复商品,请修改明细数据");
|
|
throw new RuntimeException("明细存在重复商品,请修改明细数据");
|
|
|
- }
|
|
|
|
|
|
|
+ }*/
|
|
|
List<PjStockDesc> pjStockDescList = stockDescService.list(new LambdaQueryWrapper<PjStockDesc>()
|
|
List<PjStockDesc> pjStockDescList = stockDescService.list(new LambdaQueryWrapper<PjStockDesc>()
|
|
|
.eq(ObjectUtils.isNotNull(order.getStorageId()), PjStockDesc::getStorageId, order.getStorageId())
|
|
.eq(ObjectUtils.isNotNull(order.getStorageId()), PjStockDesc::getStorageId, order.getStorageId())
|
|
|
.eq(PjStockDesc::getTenantId, AuthUtil.getTenantId())
|
|
.eq(PjStockDesc::getTenantId, AuthUtil.getTenantId())
|
|
@@ -1158,12 +1159,15 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
for (PjOrderItems item : order.getOrderItemsList()) {
|
|
for (PjOrderItems item : order.getOrderItemsList()) {
|
|
|
- item.setBillKey(item.getGoodsId() + item.getGoodsNo() + item.getDot());
|
|
|
|
|
|
|
+ item.setBillKey(item.getGoodsId() + item.getDot());
|
|
|
}
|
|
}
|
|
|
List<PjOrderItems> reducelList = order.getOrderItemsList().stream().filter(distinctByKey(PjOrderItems::getBillKey)).collect(Collectors.toList());
|
|
List<PjOrderItems> reducelList = order.getOrderItemsList().stream().filter(distinctByKey(PjOrderItems::getBillKey)).collect(Collectors.toList());
|
|
|
if (reducelList.size() != order.getOrderItemsList().size()) {
|
|
if (reducelList.size() != order.getOrderItemsList().size()) {
|
|
|
throw new RuntimeException("明细数据存在重复商品,请先处理后再保存");
|
|
throw new RuntimeException("明细数据存在重复商品,请先处理后再保存");
|
|
|
}
|
|
}
|
|
|
|
|
+ if (goodsId.size() != goodsNames.size()){
|
|
|
|
|
+ throw new RuntimeException("明细数据存在改名并重名商品,请联系管理员处理");
|
|
|
|
|
+ }
|
|
|
for (PjOrderItems item : order.getOrderItemsList()) {
|
|
for (PjOrderItems item : order.getOrderItemsList()) {
|
|
|
BigDecimal balanceQuantity = new BigDecimal("0.00");
|
|
BigDecimal balanceQuantity = new BigDecimal("0.00");
|
|
|
BigDecimal inventoryAmount = new BigDecimal("0.00");
|
|
BigDecimal inventoryAmount = new BigDecimal("0.00");
|
|
@@ -1417,6 +1421,18 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
.eq(PjOrderItems::getPid, pjOrder.getId());
|
|
.eq(PjOrderItems::getPid, pjOrder.getId());
|
|
|
List<PjOrderItems> itemsList = orderItemsService.list(itemsLambdaQueryWrapper);
|
|
List<PjOrderItems> itemsList = orderItemsService.list(itemsLambdaQueryWrapper);
|
|
|
if (ObjectUtil.isNotEmpty(itemsList)) {
|
|
if (ObjectUtil.isNotEmpty(itemsList)) {
|
|
|
|
|
+ List<Long> goodsId = itemsList.stream().map(PjOrderItems::getGoodsId).distinct().collect(Collectors.toList());
|
|
|
|
|
+ List<String> goodsNames = itemsList.stream().map(PjOrderItems::getGoodsName).distinct().collect(Collectors.toList());
|
|
|
|
|
+ for (PjOrderItems item : order.getOrderItemsList()) {
|
|
|
|
|
+ item.setBillKey(item.getGoodsId() + item.getDot());
|
|
|
|
|
+ }
|
|
|
|
|
+ List<PjOrderItems> reducelList = order.getOrderItemsList().stream().filter(distinctByKey(PjOrderItems::getBillKey)).collect(Collectors.toList());
|
|
|
|
|
+ if (reducelList.size() != order.getOrderItemsList().size()) {
|
|
|
|
|
+ throw new RuntimeException("明细数据存在重复商品,请先处理后再保存");
|
|
|
|
|
+ }
|
|
|
|
|
+ if (goodsId.size() != goodsNames.size()){
|
|
|
|
|
+ throw new RuntimeException("明细数据存在改名并重名商品,请联系管理员处理");
|
|
|
|
|
+ }
|
|
|
itemsList.forEach(e -> {
|
|
itemsList.forEach(e -> {
|
|
|
LambdaQueryWrapper<PjProductLaunch> queryWrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<PjProductLaunch> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
queryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
|
|
queryWrapper.eq(PjProductLaunch::getTenantId, AuthUtil.getTenantId())
|
|
@@ -1667,6 +1683,26 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, PjOrder> implemen
|
|
|
pjOrder.setGenerateTask(OrderTypeEnum.SCRW.getType());
|
|
pjOrder.setGenerateTask(OrderTypeEnum.SCRW.getType());
|
|
|
baseMapper.updateById(pjOrder);
|
|
baseMapper.updateById(pjOrder);
|
|
|
|
|
|
|
|
|
|
+ LambdaQueryWrapper<PjOrderItems> itemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
+ itemsLambdaQueryWrapper.eq(PjOrderItems::getTenantId, AuthUtil.getTenantId())
|
|
|
|
|
+ .eq(PjOrderItems::getIsDeleted, 0)
|
|
|
|
|
+ .eq(PjOrderItems::getPid, pjOrder.getId());
|
|
|
|
|
+ List<PjOrderItems> itemsList = orderItemsService.list(itemsLambdaQueryWrapper);
|
|
|
|
|
+ if (ObjectUtil.isNotEmpty(itemsList)) {
|
|
|
|
|
+ List<Long> goodsId = itemsList.stream().map(PjOrderItems::getGoodsId).distinct().collect(Collectors.toList());
|
|
|
|
|
+ List<String> goodsNames = itemsList.stream().map(PjOrderItems::getGoodsName).distinct().collect(Collectors.toList());
|
|
|
|
|
+ for (PjOrderItems item : order.getOrderItemsList()) {
|
|
|
|
|
+ item.setBillKey(item.getGoodsId() + item.getDot());
|
|
|
|
|
+ }
|
|
|
|
|
+ List<PjOrderItems> reducelList = order.getOrderItemsList().stream().filter(distinctByKey(PjOrderItems::getBillKey)).collect(Collectors.toList());
|
|
|
|
|
+ if (reducelList.size() != order.getOrderItemsList().size()) {
|
|
|
|
|
+ throw new RuntimeException("明细数据存在重复商品,请先处理后再保存");
|
|
|
|
|
+ }
|
|
|
|
|
+ if (goodsId.size() != goodsNames.size()) {
|
|
|
|
|
+ throw new RuntimeException("明细数据存在改名并重名商品,请联系管理员处理");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
LocalDateTime now = LocalDateTime.now();
|
|
LocalDateTime now = LocalDateTime.now();
|
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
String formatted = now.format(formatter);
|
|
String formatted = now.format(formatter);
|