diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java index 94530fe5..46adad4d 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java @@ -27,7 +27,6 @@ import com.dxhy.order.baseservice.utils.BaseServiceBeanTransitionUtils; import com.dxhy.order.constant.*; import com.dxhy.order.consumer.dao.GroupCommodityCodeMapper; import com.dxhy.order.consumer.dao.GsClientMapper; -import com.dxhy.order.consumer.dao.OrderBatchRequestMapper; import com.dxhy.order.consumer.dao.OrderProcessInfoMapper; import com.dxhy.order.consumer.model.OderDetailInfo; import com.dxhy.order.consumer.model.PageOrderExt; @@ -36,8 +35,8 @@ import com.dxhy.order.consumer.modules.order.model.PageInvoiceItem; import com.dxhy.order.consumer.modules.order.model.PageKySlReq; import com.dxhy.order.consumer.modules.order.model.PageKySlRsp; import com.dxhy.order.consumer.modules.order.model.bo.YwlxCountTotalBO; -import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoVo; import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoTotalAmountVO; +import com.dxhy.order.consumer.modules.order.model.vo.OrderInfoVo; import com.dxhy.order.consumer.modules.order.service.*; import com.dxhy.order.consumer.modules.validate.service.ValidateOrderInfoService; import com.dxhy.order.consumer.openapi.service.CommonInterfaceService; @@ -2027,13 +2026,16 @@ public class OrderInfoServiceImpl implements OrderInfoService { return R.error("根据订单号未查询到明细行信息"); } List collect ; + int itemCount = -1; if(itemList != null){ + itemCount = itemList.size(); collect = orderItemInfos.stream().filter(t -> itemList.contains(t.getId()) && StringUtils.isNotBlank(t.getSpbm()) && StringUtils.isNotBlank(t.getZxbm())).collect(Collectors.toList()); }else{ + itemCount = orderItemInfos.size(); collect = orderItemInfos.stream().filter(t -> StringUtils.isNotBlank(t.getSpbm()) && StringUtils.isNotBlank(t.getZxbm())).collect(Collectors.toList()); } //税编为空的不允许合并 - if(itemList.size() != collect.size()){ + if(itemCount != collect.size()){ return R.error("税收编码为空的不允许合并,请先更新税收编码"); } TaxEquipmentInfo taxEquipmentInfo = simsBackService.queryTaxEquipment(orderInfo.getNsrsbh(), entId); @@ -2060,10 +2062,10 @@ public class OrderInfoServiceImpl implements OrderInfoService { try { R r = mergeOrderItem(entId,orderInfoId, null); if(!ConfigureConstant.STRING_0000.equals(r.getCode())){ - return R.error(String.format("结算单号%s明细行合并失败",ddh)); + return r; } } catch (Exception e) { - log.error("批量合并报错orderInfoId:{},entId:{},报错信息:{}",orderInfoId,entId,e.getMessage()); + log.error("批量合并报错orderInfoId:{},entId:{},报错信息:{}",orderInfoId,entId,e); return R.error(String.format("结算单号%s明细行合并失败",ddh)); } } diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderMergeServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderMergeServiceImpl.java index c228660e..0a7329b1 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderMergeServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderMergeServiceImpl.java @@ -953,7 +953,10 @@ public class OrderMergeServiceImpl implements OrderMergeService { List deleteItem = new ArrayList<>(); log.debug("明细合并前明细数据,{}",JSONObject.toJSONString(orderItemInfos)); for (List value : collect1.values()) { - if(value.size() == 1){continue;} + if(value.size() == 1){ + mergeOutItem.add(value.get(0)); + continue; + } BigDecimal xmsl = new BigDecimal("0"); BigDecimal xmje = new BigDecimal("0"); BigDecimal se = new BigDecimal("0");