|
|
@@ -144,7 +144,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
private final IMessageClient messageClient;//消息
|
|
|
private final IFeesDescClient feesDescClient;//费用
|
|
|
|
|
|
- private final OrderPartsMapper orderPartsMapper;
|
|
|
+ private final IOrderPartsService orderPartsService;
|
|
|
|
|
|
//租户
|
|
|
private final ITenantClient iTenantClient;
|
|
|
@@ -598,15 +598,16 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
parts.setCreateUser(SecureUtil.getUserId());
|
|
|
parts.setPid(itemId);
|
|
|
parts.setSrcPid(orderId);
|
|
|
- orderPartsMapper.insert(parts);
|
|
|
+// orderPartsMapper.insert(parts);
|
|
|
} else {
|
|
|
parts.setUpdateTime(new Date());
|
|
|
parts.setUpdateUser(SecureUtil.getUserId());
|
|
|
parts.setPid(itemId);
|
|
|
parts.setSrcPid(orderId);
|
|
|
- orderPartsMapper.updateById(parts);
|
|
|
+// orderPartsMapper.updateById(parts);
|
|
|
}
|
|
|
});
|
|
|
+ orderPartsService.saveOrUpdateBatch(orderPartsList);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -1003,7 +1004,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
if (CollectionUtils.isNotEmpty(orderList)) {
|
|
|
orderList.forEach(items -> {
|
|
|
|
|
|
- List<OrderParts> orderPartsList = orderPartsMapper.selectList(new QueryWrapper<OrderParts>().eq("pid", items.getId()).eq("is_deleted", 0)
|
|
|
+ List<OrderParts> orderPartsList = orderPartsService.list(new QueryWrapper<OrderParts>().eq("pid", items.getId()).eq("is_deleted", 0)
|
|
|
.eq("tenant_id", AuthUtil.getTenantId()).eq("status", 0));
|
|
|
for (OrderParts orderParts : orderPartsList) {
|
|
|
OrderItems orderItems = new OrderItems();
|
|
|
@@ -1252,9 +1253,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
if (checkFlag == 1) {
|
|
|
pathsActs = iCheckClient.getActsByActId(4, "status");
|
|
|
} else if (checkFlag == 2) {
|
|
|
- if (ObjectUtils.isNotNull(value) && value.equals("1")){
|
|
|
+ if (ObjectUtils.isNotNull(value) && value.equals("1")) {
|
|
|
pathsActs = iCheckClient.getActsByActId(1108, "status");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
pathsActs = iCheckClient.getActsByActId(3, "status");
|
|
|
}
|
|
|
} else if (checkFlag == 3) {
|
|
|
@@ -1273,11 +1274,11 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
salesOrder.setSpecialCheckUser(AuthUtil.getUserName());
|
|
|
salesOrder.setSpecialCheckTime(new Date());
|
|
|
} else {
|
|
|
- if (ObjectUtils.isNotNull(value) && value.equals("1")){
|
|
|
+ if (ObjectUtils.isNotNull(value) && value.equals("1")) {
|
|
|
salesOrder.setStatus(3);
|
|
|
salesOrder.setOrderStatus(OrderStatusEnum.PASS.getType());
|
|
|
salesOrder.setFudaPurchaseStatus(OrderStatusEnum.PASS.getType());
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
salesOrder.setStatus(1);
|
|
|
salesOrder.setOrderStatus(OrderStatusEnum.SUBMIT.getType());
|
|
|
salesOrder.setCheckDate(new Date());
|
|
|
@@ -1292,9 +1293,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
if (checkFlag == 1) {
|
|
|
auditPathsLevels = iCheckClient.listLevelsByActId(4, "status");
|
|
|
} else if (checkFlag == 2) {
|
|
|
- if (ObjectUtils.isNotNull(value) && value.equals("1")){
|
|
|
+ if (ObjectUtils.isNotNull(value) && value.equals("1")) {
|
|
|
auditPathsLevels = iCheckClient.listLevelsByActId(1108, "status");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
auditPathsLevels = iCheckClient.listLevelsByActId(3, "status");
|
|
|
}
|
|
|
} else {
|
|
|
@@ -5380,9 +5381,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
BigDecimal sum = new BigDecimal("0.00");
|
|
|
for (OrderItems orderItems : orderItemsList) {
|
|
|
orderItems.setFudaPurchaseStatus("待采购");
|
|
|
- orderItemsMapper.updateById(orderItems);
|
|
|
//瓶帽配件
|
|
|
- orderPartsMapper.delete(new LambdaQueryWrapper<OrderParts>().eq(OrderParts::getTenantId, AuthUtil.getTenantId()).eq(OrderParts::getPid, orderItems.getId()));
|
|
|
+ orderPartsService.remove(new LambdaQueryWrapper<OrderParts>().eq(OrderParts::getTenantId, AuthUtil.getTenantId()).eq(OrderParts::getPid, orderItems.getId()));
|
|
|
if (ObjectUtils.isNotNull(orderItems.getPartsCapValue())) {
|
|
|
JSONArray objects = JSONArray.parseArray(orderItems.getPartsCapValue());
|
|
|
List<OrderParts> categoryConstantInfos = objects.toJavaList(OrderParts.class);
|
|
|
@@ -5401,6 +5401,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
saveOrderParts(categoryConstantInfos, orderItems.getId(), "4", order.getId(), orderItems.getOrderQuantity());
|
|
|
}
|
|
|
}
|
|
|
+ orderItemsService.updateBatchById(orderItemsList);
|
|
|
selectOrder.setProductionScheduling("待采购");
|
|
|
selectOrder.setOrderStatus("待采购");
|
|
|
selectOrder.setProductionSchedulingDate(new Date());
|
|
|
@@ -5492,8 +5493,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
List<Order> orderListAll = new ArrayList<>();
|
|
|
Order order = null;
|
|
|
for (OrderItems items : itemsList) {
|
|
|
- List<PriceBank> priceBankList = priceBankClient.selectByGoodsId(items.getItemId(),AuthUtil.getTenantId());
|
|
|
- if("MX".equals(items.getDetailType())){
|
|
|
+ List<PriceBank> priceBankList = priceBankClient.selectByGoodsId(items.getItemId(), AuthUtil.getTenantId());
|
|
|
+ if ("MX".equals(items.getDetailType())) {
|
|
|
OrderItems orderItems = orderItemsMapper.selectById(items.getId());
|
|
|
if (ObjectUtils.isNotNull(orderItems)) {
|
|
|
order = baseMapper.selectById(orderItems.getPid());
|
|
|
@@ -5522,21 +5523,21 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
orderItems_.setCode(goodsDesc.getCode());
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
+ orderItems_.setActualQuantity(items.getActualQuantity());
|
|
|
+ /*if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
orderItems_.setActualQuantity(orderItems_.getOrderQuantity().subtract(orderItems_.getPurchaseQuantity()));
|
|
|
} else {
|
|
|
orderItems_.setActualQuantity(orderItems_.getOrderQuantity());
|
|
|
- }
|
|
|
- if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size()>0){
|
|
|
- if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))){
|
|
|
+ }*/
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size() > 0) {
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))) {
|
|
|
orderItems_.setPrice(priceBankList.get(0).getPrice());
|
|
|
orderItems_.setAmount(orderItems_.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
@@ -5572,20 +5573,21 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
+ /*if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
orderItems_.setActualQuantity(orderItems_.getOrderQuantity().subtract(orderItems_.getPurchaseQuantity()));
|
|
|
} else {
|
|
|
orderItems_.setActualQuantity(orderItems_.getOrderQuantity());
|
|
|
- }
|
|
|
- if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size()>0){
|
|
|
- if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))){
|
|
|
+ }*/
|
|
|
+ orderItems_.setActualQuantity(items.getActualQuantity());
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size() > 0) {
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))) {
|
|
|
orderItems_.setPrice(priceBankList.get(0).getPrice());
|
|
|
orderItems_.setAmount(orderItems_.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
@@ -5593,8 +5595,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
orderListAll.add(order);
|
|
|
}
|
|
|
}
|
|
|
- }else{
|
|
|
- OrderParts orderItems = orderPartsMapper.selectById(items.getId());
|
|
|
+ } else {
|
|
|
+ OrderParts orderItems = orderPartsService.getById(items.getId());
|
|
|
if (ObjectUtils.isNotNull(orderItems)) {
|
|
|
order = baseMapper.selectById(orderItems.getSrcPid());
|
|
|
if (ObjectUtils.isNotNull(order)) {
|
|
|
@@ -5611,7 +5613,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
orderItems_.setId(null);
|
|
|
orderItems_.setBillType("CG");
|
|
|
orderItems_.setOrderQuantity(items.getOrderQuantity());
|
|
|
- orderItems_.setDetailType(OrderTypeEnum.ITEMTYPE.getType());//明细
|
|
|
+ orderItems_.setDetailType(OrderTypeEnum.PARTSTYPE.getType());//明细
|
|
|
|
|
|
if (ObjectUtils.isNotNull(orderItems_.getCorpId())) {
|
|
|
CorpsDesc corpsDesc = corpsDescClient.getCorpId(orderItems_.getCorpId());
|
|
|
@@ -5633,20 +5635,21 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
- orderItems_.setActualQuantity(orderItems_.getOrderQuantity().subtract(orderItems_.getPurchaseQuantity()));
|
|
|
+ /*if (ObjectUtils.isNotNull(orderItems.getPurchasesNumber())) {
|
|
|
+ orderItems_.setActualQuantity(items.getOrderQuantity().subtract(orderItems.getPurchasesNumber()));
|
|
|
} else {
|
|
|
- orderItems_.setActualQuantity(orderItems_.getOrderQuantity());
|
|
|
- }
|
|
|
- if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size()>0){
|
|
|
- if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))){
|
|
|
+ orderItems_.setActualQuantity(items.getOrderQuantity());
|
|
|
+ }*/
|
|
|
+ orderItems_.setActualQuantity(items.getActualQuantity());
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size() > 0) {
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))) {
|
|
|
orderItems_.setPrice(priceBankList.get(0).getPrice());
|
|
|
- orderItems_.setAmount(orderItems_.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
- }else{
|
|
|
+ orderItems_.setAmount(items.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
@@ -5686,20 +5689,21 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (ObjectUtils.isNotNull(orderItems_.getPurchaseQuantity())) {
|
|
|
- orderItems_.setActualQuantity(orderItems_.getOrderQuantity().subtract(orderItems_.getPurchaseQuantity()));
|
|
|
+ /*if (ObjectUtils.isNotNull(orderItems.getPurchasesNumber())) {
|
|
|
+ orderItems_.setActualQuantity(items.getOrderQuantity().subtract(orderItems.getPurchasesNumber()));
|
|
|
} else {
|
|
|
- orderItems_.setActualQuantity(orderItems_.getOrderQuantity());
|
|
|
- }
|
|
|
- if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size()>0){
|
|
|
- if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))){
|
|
|
+ orderItems_.setActualQuantity(items.getOrderQuantity());
|
|
|
+ }*/
|
|
|
+ orderItems_.setActualQuantity(items.getActualQuantity());
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList) && priceBankList.size() > 0) {
|
|
|
+ if (ObjectUtils.isNotNull(priceBankList.get(0).getPrice()) && !priceBankList.get(0).getPrice().equals(new BigDecimal("0.00"))) {
|
|
|
orderItems_.setPrice(priceBankList.get(0).getPrice());
|
|
|
- orderItems_.setAmount(orderItems_.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
- }else{
|
|
|
+ orderItems_.setAmount(items.getActualQuantity().multiply(priceBankList.get(0).getPrice()));
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
orderItems_.setPrice(new BigDecimal("0.00"));
|
|
|
orderItems_.setAmount(new BigDecimal("0.00"));
|
|
|
}
|
|
|
@@ -5765,22 +5769,30 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
|
|
|
if (ObjectUtils.isNotNull(orderItemsList) && orderItemsList.size() > 0) {
|
|
|
List<Long> pidList = new ArrayList<>();
|
|
|
+ List<OrderParts> srcItemsList = new ArrayList<>();
|
|
|
+ List<OrderItems> srcOrderItemsList = new ArrayList<>();
|
|
|
for (OrderItems orderItems : orderItemsList) {
|
|
|
if (1 == order.getPurchaseStatusType()) {//排产中
|
|
|
if (ObjectUtils.isNotEmpty(orderItems.getDetailType())) {
|
|
|
if (OrderTypeEnum.PARTSTYPE.getType().equals(orderItems.getDetailType())) {
|
|
|
- //更新对应配件明细采购数量
|
|
|
- OrderParts srcItems = new OrderParts();
|
|
|
- srcItems.setId(orderItems.getSrcItemId());
|
|
|
- srcItems.setPurchasesNumber(orderItems.getActualQuantity());
|
|
|
- orderPartsMapper.updateById(srcItems);
|
|
|
+ OrderParts srcItems = orderPartsService.getById(orderItems.getSrcItemId());
|
|
|
+ if (null != srcItems) {
|
|
|
+ //更新对应配件明细采购数量
|
|
|
+ BigDecimal quantity = ObjectUtils.isNotNull(srcItems.getPurchasesNumber()) ? srcItems.getPurchasesNumber() : new BigDecimal("0.00");
|
|
|
+ srcItems.setPurchasesNumber(quantity.add(orderItems.getActualQuantity()));
|
|
|
+// orderPartsService.updateById(srcItems);
|
|
|
+ srcItemsList.add(srcItems);
|
|
|
+ }
|
|
|
} else {
|
|
|
//更新对应销售单明细采购数量
|
|
|
- OrderItems srcItems = new OrderItems();
|
|
|
- srcItems.setId(orderItems.getSrcItemId());
|
|
|
- srcItems.setPurchaseQuantity(orderItems.getActualQuantity());
|
|
|
- srcItems.setFudaPurchaseStatus("排产中");
|
|
|
- orderItemsMapper.updateById(srcItems);
|
|
|
+ OrderItems srcItems = orderItemsMapper.selectById(orderItems.getSrcItemId());
|
|
|
+ if (null != srcItems) {
|
|
|
+ BigDecimal quantity = ObjectUtils.isNotNull(srcItems.getPurchaseQuantity()) ? srcItems.getPurchaseQuantity() : new BigDecimal("0.00");
|
|
|
+ srcItems.setPurchaseQuantity(quantity.add(orderItems.getActualQuantity()));
|
|
|
+ srcItems.setFudaPurchaseStatus("排产中");
|
|
|
+// orderItemsMapper.updateById(srcItems);
|
|
|
+ srcOrderItemsList.add(srcItems);
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
//更新对应销售单明细采购数量
|
|
|
@@ -5789,14 +5801,22 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
BigDecimal quantity = ObjectUtils.isNotNull(srcItems.getPurchaseQuantity()) ? srcItems.getPurchaseQuantity() : new BigDecimal("0.00");
|
|
|
srcItems.setPurchaseQuantity(quantity.add(orderItems.getActualQuantity()));
|
|
|
srcItems.setFudaPurchaseStatus("排产中");
|
|
|
- orderItemsMapper.updateById(srcItems);
|
|
|
+// orderItemsMapper.updateById(srcItems);
|
|
|
+ srcOrderItemsList.add(srcItems);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
pidList.add(orderItems.getSrcId());
|
|
|
}
|
|
|
+ if (srcItemsList.size() > 0) {
|
|
|
+ orderPartsService.updateBatchById(srcItemsList);
|
|
|
+ }
|
|
|
+ if (srcOrderItemsList.size() > 0) {
|
|
|
+ orderItemsService.updateBatchById(srcOrderItemsList);
|
|
|
+ }
|
|
|
List<Long> pids = pidList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<Order> orderList = new ArrayList<>();
|
|
|
for (Long pid : pids) {
|
|
|
Order order1 = baseMapper.selectById(pid);
|
|
|
BigDecimal purchaseQuantity = orderItemsList.stream().filter(e -> e.getSrcId().equals(pid) && "MX".equals(e.getDetailType()))
|
|
|
@@ -5823,9 +5843,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
order1.setProductionSchedulingDate(new Date());
|
|
|
deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "货备齐");
|
|
|
}
|
|
|
- baseMapper.updateById(order1);
|
|
|
+// baseMapper.updateById(order1);
|
|
|
+ orderList.add(order1);
|
|
|
}
|
|
|
}
|
|
|
+ if (orderList.size() > 0) {
|
|
|
+ this.updateBatchById(orderList);
|
|
|
+ }
|
|
|
}
|
|
|
baseMapper.updateById(detail);
|
|
|
String[] arrs = detail.getSrcIds().split(",");
|
|
|
@@ -5924,31 +5948,46 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
|
|
|
if (ObjectUtils.isNotNull(orderItemsList) && orderItemsList.size() > 0) {
|
|
|
List<Long> pidList = new ArrayList<>();
|
|
|
+ List<OrderParts> srcItemsList = new ArrayList<>();
|
|
|
+ List<OrderItems> srcOrderItemsList = new ArrayList<>();
|
|
|
for (OrderItems orderItems : orderItemsList) {
|
|
|
- orderItemsMapper.updateById(orderItems);
|
|
|
if (ObjectUtils.isNotEmpty(orderItems.getDetailType())) {
|
|
|
if (OrderTypeEnum.PARTSTYPE.getType().equals(orderItems.getDetailType())) {//更新对应配件明细采购数量
|
|
|
- OrderParts srcItems = orderPartsMapper.selectById(orderItems.getSrcItemId());
|
|
|
- srcItems.setPurchasesNumber(srcItems.getPurchasesNumber().subtract(orderItems.getActualQuantity()));
|
|
|
- orderPartsMapper.updateById(srcItems);
|
|
|
+ OrderParts srcItems = orderPartsService.getById(orderItems.getSrcItemId());
|
|
|
+ if (ObjectUtils.isNotNull(srcItems)){
|
|
|
+ srcItems.setPurchasesNumber(srcItems.getPurchasesNumber().subtract(orderItems.getActualQuantity()));
|
|
|
+ srcItemsList.add(srcItems);
|
|
|
+ }
|
|
|
} else {
|
|
|
//更新对应销售单明细采购数量
|
|
|
- OrderItems srcItems = new OrderItems();
|
|
|
- srcItems.setId(orderItems.getSrcItemId());
|
|
|
- srcItems.setPurchaseQuantity(orderItems.getPurchaseQuantity().subtract(orderItems.getActualQuantity()));
|
|
|
- orderItemsMapper.updateById(srcItems);
|
|
|
+ OrderItems srcItems = orderItemsMapper.selectById(orderItems.getSrcItemId());
|
|
|
+ if (null != srcItems) {
|
|
|
+ BigDecimal quantity = ObjectUtils.isNotNull(srcItems.getActualQuantity()) ? srcItems.getActualQuantity() : new BigDecimal("0.00");
|
|
|
+ srcItems.setPurchaseQuantity(orderItems.getPurchaseQuantity().subtract(quantity));
|
|
|
+ srcOrderItemsList.add(srcItems);
|
|
|
+ }
|
|
|
}
|
|
|
} else {
|
|
|
//更新对应销售单明细采购数量
|
|
|
- OrderItems srcItems = new OrderItems();
|
|
|
- srcItems.setId(orderItems.getSrcItemId());
|
|
|
- srcItems.setPurchaseQuantity(orderItems.getPurchaseQuantity().subtract(orderItems.getActualQuantity()));
|
|
|
- orderItemsMapper.updateById(srcItems);
|
|
|
+ OrderItems srcItems = orderItemsMapper.selectById(orderItems.getSrcItemId());
|
|
|
+ if (null != srcItems) {
|
|
|
+ BigDecimal quantity = ObjectUtils.isNotNull(srcItems.getActualQuantity()) ? srcItems.getActualQuantity() : new BigDecimal("0.00");
|
|
|
+ srcItems.setId(orderItems.getSrcItemId());
|
|
|
+ srcItems.setPurchaseQuantity(orderItems.getPurchaseQuantity().subtract(quantity));
|
|
|
+// orderItemsMapper.updateById(srcItems);
|
|
|
+ srcOrderItemsList.add(srcItems);
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
pidList.add(orderItems.getSrcId());
|
|
|
}
|
|
|
+ if (srcItemsList.size() > 0) {
|
|
|
+ orderPartsService.updateBatchById(srcItemsList);
|
|
|
+ }
|
|
|
+ if (srcOrderItemsList.size() > 0) {
|
|
|
+ orderItemsService.updateBatchById(srcOrderItemsList);
|
|
|
+ }
|
|
|
List<Long> pids = pidList.stream().distinct().collect(Collectors.toList());
|
|
|
+ List<Order> orderList = new ArrayList<>();
|
|
|
for (Long pid : pids) {
|
|
|
Order order1 = baseMapper.selectById(pid);
|
|
|
BigDecimal purchaseQuantity = orderItemsList.stream().filter(e -> e.getSrcId().equals(pid) && "MX".equals(e.getDetailType()))
|
|
|
@@ -5961,13 +6000,18 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
order1.setProductionSchedulingDate(null);
|
|
|
order1.setPurchaseQuantity(order1.getPurchaseQuantity().subtract(purchaseQuantity));
|
|
|
order1.setPurchaseQuantityPj(order1.getPurchaseQuantityPj().subtract(purchaseQuantityPj));
|
|
|
- baseMapper.updateById(order1);
|
|
|
+// baseMapper.updateById(order1);
|
|
|
deliveryClient.saveDeliveryData(order1.getId(), order1.getOrderNo(), "待采购");
|
|
|
+ orderList.add(order1);
|
|
|
}
|
|
|
}
|
|
|
+ if (orderList.size() > 0) {
|
|
|
+ this.updateBatchById(orderList);
|
|
|
+ }
|
|
|
}
|
|
|
baseMapper.updateById(detail);
|
|
|
String[] arrs = detail.getSrcIds().split(",");
|
|
|
+ List<Order> orderList = new ArrayList<>();
|
|
|
for (String arr : arrs) {
|
|
|
Order selectOrder = baseMapper.selectById(Long.parseLong(arr));
|
|
|
if (ObjectUtils.isNotNull(selectOrder)) {
|
|
|
@@ -6013,9 +6057,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
throw new SecurityException("发送消息失败");
|
|
|
}
|
|
|
}
|
|
|
- baseMapper.updateById(selectOrder);
|
|
|
+// baseMapper.updateById(selectOrder);
|
|
|
+ orderList.add(selectOrder);
|
|
|
}
|
|
|
}
|
|
|
+ if (orderList.size() > 0) {
|
|
|
+ this.updateBatchById(orderList);
|
|
|
+ }
|
|
|
return R.data(detail);
|
|
|
}
|
|
|
|