Browse Source

MRB

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

+ 29 - 0
src/main/java/com/uas/platform/b2b/service/PurchaseMRBService.java

@@ -0,0 +1,29 @@
+package com.uas.platform.b2b.service;
+
+import java.util.List;
+
+import com.uas.platform.b2b.model.PurchaseMRB;
+
+public interface PurchaseMRBService {
+
+	/**
+	 * 批量保存、修改客户不良品入库单
+	 * 
+	 * @param changeItems
+	 * @return
+	 */
+	public void save(List<PurchaseMRB> purchaseMRBs);
+	
+	/**
+	 * 获取需要上传(到卖方)的未上传不良品入库单
+	 * @return
+	 */
+	public List<PurchaseMRB> findNotUpload();
+	
+	/**
+	 * 上传好需要上传的客户不良品入库单后修改单据的上传状态
+	 * @param idArray
+	 */
+	public void onUploadSuccess(String[] idArray);
+
+}

+ 59 - 0
src/main/java/com/uas/platform/b2b/service/impl/PurchaseMRBServiceImpl.java

@@ -0,0 +1,59 @@
+package com.uas.platform.b2b.service.impl;
+
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.uas.platform.b2b.dao.PurchaseMRBDao;
+import com.uas.platform.b2b.model.PurchaseMRB;
+import com.uas.platform.b2b.service.PurchaseMRBService;
+import com.uas.platform.b2b.support.SystemSession;
+import com.uas.platform.b2b.support.XingePusher;
+import com.uas.platform.core.model.Status;
+
+@Service
+public class PurchaseMRBServiceImpl implements PurchaseMRBService{
+	
+	@Autowired
+	private PurchaseMRBDao purchaseMRBDao;
+	
+	@Override
+	public void save(List<PurchaseMRB> purchaseMRBs) {
+		purchaseMRBDao.save(purchaseMRBs);
+		//发送推送消息
+		Set<Long> productId = new HashSet<Long>();
+		for(PurchaseMRB purchaseMRB : purchaseMRBs) {
+			//不是每一个明细都发送,每个物料发一个
+			if( ! productId.contains(purchaseMRB.getOrderItem().getProduct().getId())){
+				XingePusher.pushSingleAccountAndroid(purchaseMRB.getOrderItem().getOrder().getVendUserUU().toString(), 
+						"物料已被客户MRB入库", "物料:" + purchaseMRB.getOrderItem().getProduct().getTitle(),
+						null);
+				XingePusher.pushSingleAccountIOS(purchaseMRB.getOrderItem().getOrder().getVendUserUU().toString(),
+						purchaseMRB.getOrderItem().getProduct().getTitle() + "已被客户MRB入库");
+				productId.add(purchaseMRB.getOrderItem().getProduct().getId());
+			}
+		}
+	}
+
+	@Override
+	public List<PurchaseMRB> findNotUpload() {
+		return purchaseMRBDao.findPurchaseMRBByVendUUAndSendStatus(SystemSession.getUser().getEnterprise().getUu(),
+				(short) Status.NOT_UPLOAD.value());
+	}
+
+	@Override
+	public void onUploadSuccess(String[] idArray) {
+		for(String id : idArray) {
+			PurchaseMRB mrb = purchaseMRBDao.findOne(Long.parseLong(id));
+			if(mrb != null) {
+				mrb.setSendStatus((short) Status.DOWNLOADED.value());
+				purchaseMRBDao.save(mrb);
+			}
+		}
+	}
+
+
+}