|
|
@@ -45,34 +45,45 @@ public class UsoftFxServiceImpl implements UsoftFxService{
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ // 数据转换为指定格式
|
|
|
List<FxPurOrder> fxPurOrders = new ArrayList<>();
|
|
|
List<PurchaseOrderItem> orderItems = new ArrayList<>();
|
|
|
for (PurchaseAcceptItem needAcceptItem : acceptItems) {
|
|
|
if (!StringUtils.isEmpty(needAcceptItem.getOrderItem())) {
|
|
|
PurchaseOrderItem orderItem = needAcceptItem.getOrderItem();
|
|
|
PurchaseOrder order = orderItem.getOrder();
|
|
|
+ // 判断fxPurOrders是否存在该订单
|
|
|
boolean exit = false;
|
|
|
for (FxPurOrder fxPurOrder : fxPurOrders) {
|
|
|
if (order.getId().equals(fxPurOrder.getId())) {
|
|
|
exit = true;
|
|
|
}
|
|
|
}
|
|
|
+ // 判断fxPurOrders.orderItems是否存在该订单明细
|
|
|
boolean exitOrderItem = false;
|
|
|
for (PurchaseOrderItem orderItem1 : orderItems) {
|
|
|
- if (orderItem1.getId().equals(orderItem1.getId())) {
|
|
|
+ if (orderItem.getId().equals(orderItem1.getId())) {
|
|
|
exitOrderItem =true;
|
|
|
}
|
|
|
}
|
|
|
orderItems.add(orderItem);
|
|
|
+ // 不存在该订单,则新增
|
|
|
if (!exit) {
|
|
|
fxPurOrders.add(new FxPurOrder(order,orderItem,needAcceptItem));
|
|
|
} else {
|
|
|
+ // 存在则找出该订单
|
|
|
for (FxPurOrder fxPurOrder : fxPurOrders) {
|
|
|
if (order.getId().equals(fxPurOrder.getId())) {
|
|
|
+ // 不存在该明细,新增
|
|
|
if (!exitOrderItem) {
|
|
|
- fxPurOrder.setTotal(fxPurOrder.getTotal()+orderItem.getAmount());
|
|
|
+ Double orderItemAmout = 0d ;
|
|
|
+ if (!StringUtils.isEmpty(orderItem.getQty()) && !StringUtils.isEmpty(orderItem.getPrice())) {
|
|
|
+ orderItemAmout = orderItem.getQty()*orderItem.getPrice();
|
|
|
+ }
|
|
|
+ fxPurOrder.setTotal(fxPurOrder.getTotal() + orderItemAmout);
|
|
|
fxPurOrder.getOrderItems().add(new FxPurcOrderItem(orderItem,needAcceptItem));
|
|
|
} else {
|
|
|
+ // 存在该明细,找出并把验收明细插入到该明细
|
|
|
for (FxPurcOrderItem fxPurcOrderItem :fxPurOrder.getOrderItems()) {
|
|
|
if (fxPurcOrderItem.getId().equals(orderItem.getId())) {
|
|
|
fxPurcOrderItem.getAcceptItems().add(new FxPurcAcceptItem(needAcceptItem));
|