Browse Source

修复APBill单据传输问题

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@4025 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
suntg 10 years ago
parent
commit
e8178970d1

+ 7 - 3
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseAPBillServiceImpl.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2b.erp.service.impl;
 package com.uas.platform.b2b.erp.service.impl;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 import java.util.List;
 
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,15 +44,18 @@ public class PurchaseAPBillServiceImpl implements PurchaseAPBillService{
 			Enterprise vendor = enterpriseDao.findEnterpriseByUu(apBill.getAb_vendoruu());
 			Enterprise vendor = enterpriseDao.findEnterpriseByUu(apBill.getAb_vendoruu());
 			if(apBills2.size() == 0 && vendor != null) {
 			if(apBills2.size() == 0 && vendor != null) {
 				PurchaseApBill purchaseApBill = apBill.convert();
 				PurchaseApBill purchaseApBill = apBill.convert();
-				for(PurchaseApBillItem apBillItem : purchaseApBill.getItems()){
+				Iterator<PurchaseApBillItem> items = purchaseApBill.getItems().iterator();
+				while(items.hasNext()) {
+					PurchaseApBillItem apBillItem = items.next();
 					List<Product> products = productDao.findByEnUUAndCode(enUU, apBillItem.getProduct().getCode());
 					List<Product> products = productDao.findByEnUUAndCode(enUU, apBillItem.getProduct().getCode());
 					if(products.size() > 0) {
 					if(products.size() > 0) {
 						apBillItem.setProduct(products.get(0));
 						apBillItem.setProduct(products.get(0));
 						apBillItem.setProductId(products.get(0).getId());
 						apBillItem.setProductId(products.get(0).getId());
 						apBillItem.setaPBill(purchaseApBill);
 						apBillItem.setaPBill(purchaseApBill);
 						apBillItems.add(apBillItem);
 						apBillItems.add(apBillItem);
-					} else
-						purchaseApBill.getItems().remove(apBillItem);
+					} else {
+						items.remove();
+					}
 				}
 				}
 			}
 			}
 		}
 		}