Преглед изворни кода

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

administrator пре 11 година
родитељ
комит
edddd691c2

+ 2 - 1
src/main/java/com/uas/platform/b2b/dao/VendorDao.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
 import com.uas.platform.b2b.model.Vendor;
 import com.uas.platform.b2b.model.Vendor;
@@ -20,6 +21,6 @@ public interface VendorDao extends JpaSpecificationExecutor<Vendor>, GenericRepo
 	 * @return
 	 * @return
 	 */
 	 */
 	@Query("from Vendor v where v.myEnUU = :myEnUU and v.vendorEnterprise.uu = :vendUU")
 	@Query("from Vendor v where v.myEnUU = :myEnUU and v.vendorEnterprise.uu = :vendUU")
-	public List<Vendor> findByMyEnUUAndVendUU(long myEnUU, long vendUU);
+	public List<Vendor> findByMyEnUUAndVendUU(@Param("myEnUU") long myEnUU, @Param("vendUU") long vendUU);
 
 
 }
 }

+ 15 - 32
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseServiceImpl.java

@@ -39,22 +39,12 @@ public class PurchaseServiceImpl implements PurchaseService {
 	public List<PurchaseOrderAllItem> convertPurchase(List<Purchase> purchases) {
 	public List<PurchaseOrderAllItem> convertPurchase(List<Purchase> purchases) {
 		List<PurchaseOrderAllItem> orderItems = new ArrayList<PurchaseOrderAllItem>();
 		List<PurchaseOrderAllItem> orderItems = new ArrayList<PurchaseOrderAllItem>();
 		for (Purchase purchase : purchases) {
 		for (Purchase purchase : purchases) {
-			PurchaseOrderAll order = checkVendor(purchase.convert());
+			PurchaseOrderAll order = purchase.convert();
 			List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(order.getEnUU(), order.getVendUU());
 			List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(order.getEnUU(), order.getVendUU());
 			if (vendors.size() == 0) {
 			if (vendors.size() == 0) {
-				Vendor vendor = new Vendor();
-				vendor.setMyEnUU(order.getEnUU());
-				vendor.setMyUserUU(SystemSession.getUser().getUserUU());
-				Enterprise enterprise = enterpriseDao.findOne(order.getVendUU());
-				vendor.setVendorEnterprise(enterprise);
-				if (order.getVendUserUU() != null) {
-					List<User> users = userDao.findByEnUUAndUserUU(enterprise.getUu(), order.getVendUserUU());
-					if (users.size() > 0)
-						vendor.setVendorUser(users.get(0));
-				}
-				vendorDao.save(vendor);
+				addVendor(order);
 			} else {
 			} else {
-				if (order.getVendUserUU() == null)
+				if (order.getVendUserUU() == null && vendors.get(0).getVendorUser() != null)
 					order.setVendUserUU(vendors.get(0).getVendorUser().getUserUU());
 					order.setVendUserUU(vendors.get(0).getVendorUser().getUserUU());
 			}
 			}
 			if (!CollectionUtils.isEmpty(order.getOrderItems())) {
 			if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -83,28 +73,21 @@ public class PurchaseServiceImpl implements PurchaseService {
 	}
 	}
 
 
 	/**
 	/**
-	 * 判断供应商资料、联系人资料是否有效
+	 * 添加供应商资料
 	 * 
 	 * 
 	 * @param order
 	 * @param order
 	 */
 	 */
-	private PurchaseOrderAll checkVendor(PurchaseOrderAll order) {
-		List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(order.getEnUU(), order.getVendUU());
-		if (vendors.size() == 0) {
-			Vendor vendor = new Vendor();
-			vendor.setMyEnUU(order.getEnUU());
-			vendor.setMyUserUU(SystemSession.getUser().getUserUU());
-			Enterprise enterprise = enterpriseDao.findOne(order.getVendUU());
-			vendor.setVendorEnterprise(enterprise);
-			if (order.getVendUserUU() != null) {
-				List<User> users = userDao.findByEnUUAndUserUU(enterprise.getUu(), order.getVendUserUU());
-				if (users.size() > 0)
-					vendor.setVendorUser(users.get(0));
-			}
-			vendorDao.save(vendor);
-		} else {
-			if (order.getVendUserUU() == null && vendors.get(0).getVendorUser() != null)
-				order.setVendUserUU(vendors.get(0).getVendorUser().getUserUU());
+	private void addVendor(PurchaseOrderAll order) {
+		Vendor vendor = new Vendor();
+		vendor.setMyEnUU(order.getEnUU());
+		vendor.setMyUserUU(SystemSession.getUser().getUserUU());
+		Enterprise enterprise = enterpriseDao.findOne(order.getVendUU());
+		vendor.setVendorEnterprise(enterprise);
+		if (order.getVendUserUU() != null) {
+			List<User> users = userDao.findByEnUUAndUserUU(enterprise.getUu(), order.getVendUserUU());
+			if (users.size() > 0)
+				vendor.setVendorUser(users.get(0));
 		}
 		}
-		return order;
+		vendorDao.save(vendor);
 	}
 	}
 }
 }

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/Vendor.java

@@ -64,7 +64,7 @@ public class Vendor implements Serializable {
 	/**
 	/**
 	 * 供应商联系人UU
 	 * 供应商联系人UU
 	 */
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = { CascadeType.REFRESH, CascadeType.MERGE })
 	@JoinColumn(name = "ve_venduseruu")
 	@JoinColumn(name = "ve_venduseruu")
 	@OtherUserUU
 	@OtherUserUU
 	private User vendorUser;
 	private User vendorUser;