Browse Source

【出入库单模型】+【上传出入库单据到平台】+【无Po的采购验退单处理】+【没有订单号时不关联采购单】

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@2688 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
shenj 10 years ago
parent
commit
e8a6b8e056
1 changed files with 37 additions and 19 deletions
  1. 37 19
      src/main/java/com/uas/platform/b2b/event/PurchaseReturnSaveEvent.java

+ 37 - 19
src/main/java/com/uas/platform/b2b/event/PurchaseReturnSaveEvent.java

@@ -19,8 +19,9 @@ import com.uas.platform.b2b.support.XingePusher;
  * @author yingp
  * @author yingp
  * 
  * 
  */
  */
-public class PurchaseReturnSaveEvent extends SaveEvent<PurchaseReturnIndex, PurchaseReturn> {
-	
+public class PurchaseReturnSaveEvent extends
+		SaveEvent<PurchaseReturnIndex, PurchaseReturn> {
+
 	/**
 	/**
 	 * 
 	 * 
 	 */
 	 */
@@ -39,21 +40,34 @@ public class PurchaseReturnSaveEvent extends SaveEvent<PurchaseReturnIndex, Purc
 		indexes.add(new PurchaseReturnIndex(enUU, key, saved.getCode()));
 		indexes.add(new PurchaseReturnIndex(enUU, key, saved.getCode()));
 		// 客户名称(匹配两个字以上的客户名称关键字)、客户UU号
 		// 客户名称(匹配两个字以上的客户名称关键字)、客户UU号
 		if (CollectionUtils.isEmpty(saved.getReturnItems())) {
 		if (CollectionUtils.isEmpty(saved.getReturnItems())) {
-			indexes.addAll(PurchaseReturnIndex.format(
-					enUU,
-					key,
-					SearchKeyUtils.splitToKeys(saved.getReturnItems().toArray(new PurchaseReturnItem[1])[0]
-							.getOrderItem().getOrder().getEnterprise().getEnName(), false)));
-			indexes.add(new PurchaseReturnIndex(enUU, key, saved.getReturnItems().toArray(new PurchaseReturnItem[1])[0]
-					.getOrderItem().getOrder().getEnterprise().getUu().toString()));
+			PurchaseReturnItem item = saved.getReturnItems().toArray(
+					new PurchaseReturnItem[1])[0];
+			if (item.getOrderItem() != null) {
+				indexes.addAll(PurchaseReturnIndex
+						.format(enUU, key, SearchKeyUtils.splitToKeys(item
+								.getOrderItem().getOrder().getEnterprise()
+								.getEnName(), false)));
+				indexes.add(new PurchaseReturnIndex(enUU, key, item
+						.getOrderItem().getOrder().getEnterprise().getUu()
+						.toString()));
+			}
 		}
 		}
 		// 物料(匹配完整的物料编号、两个字以上的物料名称及规格关键字)
 		// 物料(匹配完整的物料编号、两个字以上的物料名称及规格关键字)
 		for (PurchaseReturnItem item : saved.getReturnItems()) {
 		for (PurchaseReturnItem item : saved.getReturnItems()) {
-			indexes.add(new PurchaseReturnIndex(enUU, key, item.getOrderItem().getProduct().getCode()));
-			indexes.addAll(PurchaseReturnIndex.format(enUU, key,
-					SearchKeyUtils.splitToKeys(item.getOrderItem().getProduct().getTitle(), false)));
-			indexes.addAll(PurchaseReturnIndex.format(enUU, key,
-					SearchKeyUtils.splitToKeys(item.getOrderItem().getProduct().getSpec(), false)));
+			if (item.getOrderItem() != null) {
+				indexes.add(new PurchaseReturnIndex(enUU, key, item
+						.getOrderItem().getProduct().getCode()));
+				indexes.addAll(PurchaseReturnIndex.format(
+						enUU,
+						key,
+						SearchKeyUtils.splitToKeys(item.getOrderItem()
+								.getProduct().getTitle(), false)));
+				indexes.addAll(PurchaseReturnIndex.format(
+						enUU,
+						key,
+						SearchKeyUtils.splitToKeys(item.getOrderItem()
+								.getProduct().getSpec(), false)));
+			}
 		}
 		}
 		return indexes;
 		return indexes;
 	}
 	}
@@ -65,11 +79,15 @@ public class PurchaseReturnSaveEvent extends SaveEvent<PurchaseReturnIndex, Purc
 		for (PurchaseReturn re : savedList) {
 		for (PurchaseReturn re : savedList) {
 			for (PurchaseReturnItem returnItem : re.getReturnItems()) {
 			for (PurchaseReturnItem returnItem : re.getReturnItems()) {
 				// 不是每一个明细都发送,每个物料发一个
 				// 不是每一个明细都发送,每个物料发一个
-				if (!productId.contains(returnItem.getOrderItem().getProduct().getId())) {
-					XingePusher.pushByUserUU(returnItem.getOrderItem().getOrder().getVendUserUU(), "物料已被客户采购验退", "物料:" + returnItem.getOrderItem().getProduct().getTitle(), 
-							"", 
-							"");
-					productId.add(returnItem.getOrderItem().getProduct().getId());
+				if (!productId.contains(returnItem.getOrderItem().getProduct()
+						.getId())) {
+					XingePusher.pushByUserUU(returnItem.getOrderItem()
+							.getOrder().getVendUserUU(), "物料已被客户采购验退",
+							"物料:"
+									+ returnItem.getOrderItem().getProduct()
+											.getTitle(), "", "");
+					productId.add(returnItem.getOrderItem().getProduct()
+							.getId());
 				}
 				}
 			}
 			}
 		}
 		}