Selaa lähdekoodia

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@221 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d

administrator 11 vuotta sitten
vanhempi
commit
c4cc4657ec

+ 23 - 0
src/main/java/com/uas/platform/b2b/dao/ProductDao.java

@@ -0,0 +1,23 @@
+package com.uas.platform.b2b.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+import com.uas.platform.b2b.model.Product;
+
+@Repository
+public interface ProductDao extends JpaSpecificationExecutor<Product>, JpaRepository<Product, Long> {
+
+	/**
+	 * 按所属企业的ID和产品的编号查找产品
+	 * 
+	 * @param enUU
+	 * @param code
+	 * @return
+	 */
+	public List<Product> findByEnUUAndCode(long enUU, String code);
+
+}

+ 6 - 0
src/main/java/com/uas/platform/b2b/erp/model/PurchaseDetail.java

@@ -2,7 +2,9 @@ package com.uas.platform.b2b.erp.model;
 
 import java.sql.Date;
 
+import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.PurchaseOrderAllItem;
+import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.model.Status;
 
 /**
@@ -99,6 +101,10 @@ public class PurchaseDetail {
 		item.setQty(this.pd_qty);
 		item.setTaxrate(this.pd_rate);
 		item.setStatus((short) Status.NOT_REPLY.value());
+		Product product = new Product();
+		product.setCode(this.pd_code);
+		product.setEnUU(SystemSession.getUser().getEnterprise().getUu());
+		item.setProduct(product);
 		return item;
 	}
 

+ 21 - 2
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseServiceImpl.java

@@ -3,22 +3,41 @@ package com.uas.platform.b2b.erp.service.impl;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
+import com.uas.platform.b2b.dao.ProductDao;
 import com.uas.platform.b2b.erp.model.Purchase;
 import com.uas.platform.b2b.erp.model.PurchaseReply;
 import com.uas.platform.b2b.erp.service.PurchaseService;
+import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.PurchaseOrderAll;
+import com.uas.platform.b2b.model.PurchaseOrderAllItem;
 import com.uas.platform.b2b.model.PurchaseOrderReply;
 
 @Service
 public class PurchaseServiceImpl implements PurchaseService {
 
+	@Autowired
+	private ProductDao productDao;
+
 	@Override
 	public List<PurchaseOrderAll> convertPurchase(List<Purchase> purchases) {
 		List<PurchaseOrderAll> orders = new ArrayList<PurchaseOrderAll>();
-		for(Purchase purchase:purchases)
-			orders.add(purchase.convert());
+		for (Purchase purchase : purchases) {
+			PurchaseOrderAll order = purchase.convert();
+			// 取平台的产品ID
+			if (!CollectionUtils.isEmpty(order.getOrderItems())) {
+				for (PurchaseOrderAllItem item : order.getOrderItems()) {
+					Product product = item.getProduct();
+					List<Product> products = productDao.findByEnUUAndCode(product.getEnUU(), product.getCode());
+					if (products.size() > 0)
+						item.setProduct(products.get(0));
+				}
+			}
+			orders.add(order);
+		}
 		return orders;
 	}