Browse Source

紧急处理ERP采购单价格批量更新同步到平台数据更新异常的问题

hejq 7 years ago
parent
commit
2343526538
22 changed files with 700 additions and 201 deletions
  1. 16 0
      src/main/java/com/uas/platform/b2b/dao/MakeOrderAcceptItemDao.java
  2. 16 0
      src/main/java/com/uas/platform/b2b/dao/MakeOrderReturnItemDao.java
  3. 16 0
      src/main/java/com/uas/platform/b2b/dao/PurcReturnItemDao.java
  4. 7 2
      src/main/java/com/uas/platform/b2b/dao/PurchaseAcceptItemDao.java
  5. 4 9
      src/main/java/com/uas/platform/b2b/erp/controller/PurchaseProdInOutController.java
  6. 6 0
      src/main/java/com/uas/platform/b2b/erp/model/ProdInOutRefreshPrice.java
  7. 1 1
      src/main/java/com/uas/platform/b2b/erp/service/PurchaseProdInOutService.java
  8. 9 5
      src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseProdInOutServiceImpl.java
  9. 121 0
      src/main/java/com/uas/platform/b2b/model/MakeOrderAcceptItem.java
  10. 121 0
      src/main/java/com/uas/platform/b2b/model/MakeOrderReturnItem.java
  11. 107 0
      src/main/java/com/uas/platform/b2b/model/PurcReturnItem.java
  12. 7 1
      src/main/java/com/uas/platform/b2b/model/PurchaseAcceptItem.java
  13. 27 21
      src/main/java/com/uas/platform/b2b/model/PurchaseReturnItem.java
  14. 40 26
      src/main/java/com/uas/platform/b2b/service/MakeAcceptService.java
  15. 41 28
      src/main/java/com/uas/platform/b2b/service/MakeReturnService.java
  16. 30 19
      src/main/java/com/uas/platform/b2b/service/PurchaseAcceptService.java
  17. 32 20
      src/main/java/com/uas/platform/b2b/service/PurchaseReturnService.java
  18. 27 22
      src/main/java/com/uas/platform/b2b/service/impl/MakeAcceptServiceImpl.java
  19. 22 20
      src/main/java/com/uas/platform/b2b/service/impl/MakeReturnServiceImpl.java
  20. 20 11
      src/main/java/com/uas/platform/b2b/service/impl/PurchaseAcceptServiceImpl.java
  21. 3 3
      src/main/java/com/uas/platform/b2b/service/impl/PurchaseApBillServiceImpl.java
  22. 27 13
      src/main/java/com/uas/platform/b2b/service/impl/PurchaseReturnServiceImpl.java

+ 16 - 0
src/main/java/com/uas/platform/b2b/dao/MakeOrderAcceptItemDao.java

@@ -0,0 +1,16 @@
+package com.uas.platform.b2b.dao;
+
+import com.uas.platform.b2b.model.MakeOrderAcceptItem;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 委外验收单明细
+ *
+ * @author hejq
+ * @date 2018-07-19 16:59
+ */
+@Repository
+public interface MakeOrderAcceptItemDao extends JpaSpecificationExecutor<MakeOrderAcceptItem>, JpaRepository<MakeOrderAcceptItem, Long> {
+}

+ 16 - 0
src/main/java/com/uas/platform/b2b/dao/MakeOrderReturnItemDao.java

@@ -0,0 +1,16 @@
+package com.uas.platform.b2b.dao;
+
+import com.uas.platform.b2b.model.MakeOrderReturnItem;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 委外验退单明细
+ *
+ * @author hejq
+ * @date 2018-07-19 17:07
+ */
+@Repository
+public interface MakeOrderReturnItemDao extends JpaRepository<MakeOrderReturnItem, Long>, JpaSpecificationExecutor<MakeOrderReturnItem> {
+}

+ 16 - 0
src/main/java/com/uas/platform/b2b/dao/PurcReturnItemDao.java

@@ -0,0 +1,16 @@
+package com.uas.platform.b2b.dao;
+
+import com.uas.platform.b2b.model.PurcReturnItem;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+/**
+ * 采购验退单明细
+ *
+ * @author hejq
+ * @date 2018-07-19 16:46
+ */
+@Repository
+public interface PurcReturnItemDao extends JpaRepository<PurcReturnItem, Long>, JpaSpecificationExecutor<PurcReturnItem> {
+}

+ 7 - 2
src/main/java/com/uas/platform/b2b/dao/PurchaseAcceptItemDao.java

@@ -1,13 +1,18 @@
 package com.uas.platform.b2b.dao;
 
+import com.uas.platform.b2b.model.PurchaseAcceptItem;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
-import com.uas.platform.b2b.model.PurchaseAcceptItem;
-
+/**
+ * 采购验收单
+ * 
+ * @author hejq
+ * @date 2018-07-19 15:39
+ */
 @Repository
 public interface PurchaseAcceptItemDao extends JpaSpecificationExecutor<PurchaseAcceptItem>,
 		JpaRepository<PurchaseAcceptItem, Long> {

+ 4 - 9
src/main/java/com/uas/platform/b2b/erp/controller/PurchaseProdInOutController.java

@@ -3,9 +3,7 @@ package com.uas.platform.b2b.erp.controller;
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
 import com.uas.platform.b2b.erp.model.PurchaseProdInOut;
 import com.uas.platform.b2b.erp.service.PurchaseProdInOutService;
-import com.uas.platform.b2b.erp.service.PurchaseService;
 import com.uas.platform.b2b.erp.support.ErpBufferedLogger;
-import com.uas.platform.b2b.model.PurchaseAcceptItem;
 import com.uas.platform.b2b.service.*;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
@@ -49,9 +47,6 @@ public class PurchaseProdInOutController {
 	@Autowired
 	private PurchaseReturnService returnService;
 
-	@Autowired
-	private PurchaseService purchaseService;
-
 	private final static ErpBufferedLogger logger = BufferedLoggerManager.getLogger(ErpBufferedLogger.class);
 
 	/**
@@ -99,7 +94,7 @@ public class PurchaseProdInOutController {
 		String jsonStr = URLDecoder.decode(data, "UTF-8");
 		List<ProdInOutRefreshPrice> prodInOuts = FlexJsonUtils.fromJsonArray(jsonStr, ProdInOutRefreshPrice.class);
 		// 更新采购验收单明细的价格
-		purchaseAcceptService.save(purchaseProdInOutService.convertPirceForProdIn(prodInOuts));
+		purchaseAcceptService.batchSave(purchaseProdInOutService.convertPirceForProdIn(prodInOuts));
 		// 更新关联的应付发票的价格
 		purchaseApBillService.refreshPrice(prodInOuts);
 		logger.log("批量更新采购验收单单价", "上传批量更新采购验收单单价", prodInOuts.size());
@@ -118,7 +113,7 @@ public class PurchaseProdInOutController {
 		String jsonStr = URLDecoder.decode(data, "UTF-8");
 		List<ProdInOutRefreshPrice> prodInOuts = FlexJsonUtils.fromJsonArray(jsonStr, ProdInOutRefreshPrice.class);
 		// 更新采购验退单的价格
-		returnService.save(returnService.convertPirceForProdIn(prodInOuts));
+		returnService.batchSave(returnService.convertPirceForProdIn(prodInOuts));
 		// 更新关联的应付发票的价格
 		purchaseApBillService.refreshPrice(prodInOuts);
 		logger.log("批量更新采购验退单单价", "上传批量更新采购验退单单价", prodInOuts.size());
@@ -136,7 +131,7 @@ public class PurchaseProdInOutController {
 		String jsonStr = URLDecoder.decode(data, "UTF-8");
 		List<ProdInOutRefreshPrice> prodInOuts = FlexJsonUtils.fromJsonArray(jsonStr, ProdInOutRefreshPrice.class);
 		// 更新委外验收单的价格
-		makeAcceptService.save(makeAcceptService.convertPirceForProdIn(prodInOuts));
+		makeAcceptService.batchSave(makeAcceptService.convertPirceForProdIn(prodInOuts));
 		// 更新关联的应付发票的价格
 		purchaseApBillService.refreshPrice(prodInOuts);
 		logger.log("批量更新委外验收单单价", "上传批量更新委外验收单单价", prodInOuts.size());
@@ -154,7 +149,7 @@ public class PurchaseProdInOutController {
 		String jsonStr = URLDecoder.decode(data, "UTF-8");
 		List<ProdInOutRefreshPrice> prodInOuts = FlexJsonUtils.fromJsonArray(jsonStr, ProdInOutRefreshPrice.class);
 		// 更新委外验退单的价格
-		makeReturnService.save(makeReturnService.convertPirceForProdIn(prodInOuts));
+		makeReturnService.batchSave(makeReturnService.convertPirceForProdIn(prodInOuts));
 		// 更新关联的应付发票的价格
 		purchaseApBillService.refreshPrice(prodInOuts);
 		logger.log("批量更新委外验退单单价", "上传批量更新委外验退单单价", prodInOuts.size());

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

@@ -1,5 +1,11 @@
 package com.uas.platform.b2b.erp.model;
 
+/**
+ * ERP批量更新价格信息
+ * 
+ * @author hejq
+ * @date 2018-07-19 16:56
+ */
 public class ProdInOutRefreshPrice {
 
 	/**

+ 1 - 1
src/main/java/com/uas/platform/b2b/erp/service/PurchaseProdInOutService.java

@@ -74,7 +74,7 @@ public interface PurchaseProdInOutService {
 	 * @param prodInOuts
 	 * @return
 	 */
-	List<PurchaseAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+	List<PurcAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
 
 	/**
 	 * 获取采购验收单对应的B2Bid

+ 9 - 5
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseProdInOutServiceImpl.java

@@ -13,6 +13,7 @@ import com.uas.platform.b2b.ps.ProductUtils;
 import com.uas.platform.b2b.service.NotExistOrderService;
 import com.uas.platform.b2b.support.SystemSession;
 import org.apache.axis.utils.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
@@ -345,17 +346,20 @@ public class PurchaseProdInOutServiceImpl implements PurchaseProdInOutService {
 	}
 
 	@Override
-	public List<PurchaseAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
-		List<PurchaseAcceptItem> acceptItems = new ArrayList<PurchaseAcceptItem>();
+	public List<PurcAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
+		List<PurcAcceptItem> acceptItems = new ArrayList<>();
 		List<OrderDetailPrice> detailPriceList = new ArrayList<>();
 		if (!CollectionUtils.isEmpty(prodInOuts)) {
 			for (ProdInOutRefreshPrice prod : prodInOuts) {
 				PurchaseAcceptItem acceptItem = purchaseAcceptItemDao.findByEnUUAndCodeAndNumber(
 						SystemSession.getUser().getEnterprise().getUu(), prod.getPbu_inoutno(), prod.getPbu_pdno());
 				if (null != acceptItem) {
-					acceptItem.setOrderPrice(prod.getPbu_orderprice());
-					acceptItem.setTaxrate(prod.getPbu_taxrate());
-					acceptItems.add(acceptItem);
+                    PurcAcceptItem item = new PurcAcceptItem();
+                    BeanUtils.copyProperties(acceptItem, item, PurcAcceptItem.class);
+                    item.setOrderPrice(prod.getPbu_orderprice());
+                    item.setTaxrate(prod.getPbu_taxrate());
+                    item.setAcceptId(acceptItem.getAccept().getId());
+					acceptItems.add(item);
 					if (null != acceptItem.getOrderItemId()) {
                         detailPriceList.add(new OrderDetailPrice(acceptItem.getOrderItemId(), acceptItem.getOrderPrice(), acceptItem.getTaxrate()));
 					}

+ 121 - 0
src/main/java/com/uas/platform/b2b/model/MakeOrderAcceptItem.java

@@ -0,0 +1,121 @@
+package com.uas.platform.b2b.model;
+
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+/**
+ * 委外验收单明细
+ *
+ * @author hejq
+ * @date 2018-07-19 16:57
+ */
+@Table(name = "make$acceptitem")
+@Entity
+public class MakeOrderAcceptItem implements Serializable {
+
+    /**
+     * default serialVersionUID
+     */
+	private final static long serialVersionUID = 1L;
+
+	/**
+	 * 主键ID
+	 */
+	@Id
+	@GeneratedValue(strategy = GenerationType.AUTO)
+	@Column(name = "mai_id")
+	private Long id;
+
+	/**
+	 * 序号
+	 */
+	@Column(name = "mai_number")
+	private Short number;
+
+	/**
+	 * 数量
+	 */
+	@Column(name = "mai_qty")
+	private Double qty;
+
+	/**
+	 * 委外采购单价
+	 */
+	@Column(name = "mai_orderpice")
+	private Double orderPrice;
+
+	/**
+	 * 税率
+	 */
+	@Column(name = "mai_taxrate")
+	private Double taxrate;
+
+	/**
+	 * 验收单主记录
+	 */
+	@Column(name = "mai_paid", nullable = false)
+	private Long acceptId;
+
+	/**
+	 * 委外加工单id
+	 */
+	@Column(name = "mai_odid")
+	private Long orderId;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Short getNumber() {
+        return number;
+    }
+
+    public void setNumber(Short number) {
+        this.number = number;
+    }
+
+    public Double getQty() {
+        return qty;
+    }
+
+    public void setQty(Double qty) {
+        this.qty = qty;
+    }
+
+    public Double getOrderPrice() {
+        return orderPrice;
+    }
+
+    public void setOrderPrice(Double orderPrice) {
+        this.orderPrice = orderPrice;
+    }
+
+    public Double getTaxrate() {
+        return taxrate;
+    }
+
+    public void setTaxrate(Double taxrate) {
+        this.taxrate = taxrate;
+    }
+
+    public Long getAcceptId() {
+        return acceptId;
+    }
+
+    public void setAcceptId(Long acceptId) {
+        this.acceptId = acceptId;
+    }
+
+    public Long getOrderId() {
+        return orderId;
+    }
+
+    public void setOrderId(Long orderId) {
+        this.orderId = orderId;
+    }
+}

+ 121 - 0
src/main/java/com/uas/platform/b2b/model/MakeOrderReturnItem.java

@@ -0,0 +1,121 @@
+package com.uas.platform.b2b.model;
+
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+/**
+ * 买家的委外验退单明细
+ *
+ * @author hejq
+ * @date 2018-07-19 17:05
+ */
+@Table(name = "make$returnitem")
+@Entity
+public class MakeOrderReturnItem implements Serializable {
+
+    /**
+     * default serialVersionUID
+     */
+    private final static long serialVersionUID = 1L;
+
+	/**
+	 * 主键ID
+	 */
+	@Id
+	@GeneratedValue(strategy = GenerationType.AUTO)
+	@Column(name = "mri_id")
+	private Long id;
+
+	/**
+	 * 序号
+	 */
+	@Column(name = "mri_number")
+	private Short number;
+
+	/**
+	 * 数量
+	 */
+	@Column(name = "mri_qty")
+	private Double qty;
+
+	/**
+	 * 委外采购单价
+	 */
+	@Column(name = "mri_orderpice")
+	private Double orderPrice;
+
+	/**
+	 * 税率
+	 */
+	@Column(name = "mri_taxrate")
+	private Double taxrate;
+
+	/**
+	 * 验退单主记录id
+	 */
+	@Column(name = "mri_paid", nullable = false)
+	private Long returnId;
+
+	/**
+	 * 委外加工单id
+	 */
+	@Column(name = "mri_odid")
+	private Long orderId;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Short getNumber() {
+        return number;
+    }
+
+    public void setNumber(Short number) {
+        this.number = number;
+    }
+
+    public Double getQty() {
+        return qty;
+    }
+
+    public void setQty(Double qty) {
+        this.qty = qty;
+    }
+
+    public Double getOrderPrice() {
+        return orderPrice;
+    }
+
+    public void setOrderPrice(Double orderPrice) {
+        this.orderPrice = orderPrice;
+    }
+
+    public Double getTaxrate() {
+        return taxrate;
+    }
+
+    public void setTaxrate(Double taxrate) {
+        this.taxrate = taxrate;
+    }
+
+    public Long getReturnId() {
+        return returnId;
+    }
+
+    public void setReturnId(Long returnId) {
+        this.returnId = returnId;
+    }
+
+    public Long getOrderId() {
+        return orderId;
+    }
+
+    public void setOrderId(Long orderId) {
+        this.orderId = orderId;
+    }
+}

+ 107 - 0
src/main/java/com/uas/platform/b2b/model/PurcReturnItem.java

@@ -0,0 +1,107 @@
+package com.uas.platform.b2b.model;
+
+
+import javax.persistence.*;
+import java.io.Serializable;
+
+/**
+ * 买家的采购验退单明细
+ * 
+ * @author suntg
+ * 
+ */
+@Table(name = "purc$returnitem")
+@Entity
+public class PurcReturnItem implements Serializable {
+
+	/**
+	 * default serialVersionUID
+	 */
+	private final static long serialVersionUID = 1L;
+
+	/**
+	 * id
+	 */
+	@Id
+	@GeneratedValue(strategy = GenerationType.AUTO)
+	@Column(name = "pri_id")
+	private Long id;
+
+	/**
+	 * 序号
+	 */
+	@Column(name = "pri_number")
+	private Short number;
+
+	/**
+	 * 数量
+	 */
+	@Column(name = "pri_qty")
+	private Double qty;
+
+	/**
+	 * 采购单价
+	 */
+	@Column(name = "pri_orderprice")
+	private Double orderPrice;
+
+	/**
+	 * 单价
+	 */
+	@Column(name = "pri_taxrate")
+	private Double taxrate;
+
+	/**
+	 * 验退单主记录ID
+	 */
+	@Column(name = "pri_prid", nullable = false)
+	private Long returnId;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Short getNumber() {
+        return number;
+    }
+
+    public void setNumber(Short number) {
+        this.number = number;
+    }
+
+    public Double getQty() {
+        return qty;
+    }
+
+    public void setQty(Double qty) {
+        this.qty = qty;
+    }
+
+    public Double getOrderPrice() {
+        return orderPrice;
+    }
+
+    public void setOrderPrice(Double orderPrice) {
+        this.orderPrice = orderPrice;
+    }
+
+    public Double getTaxrate() {
+        return taxrate;
+    }
+
+    public void setTaxrate(Double taxrate) {
+        this.taxrate = taxrate;
+    }
+
+    public Long getReturnId() {
+        return returnId;
+    }
+
+    public void setReturnId(Long returnId) {
+        this.returnId = returnId;
+    }
+}

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

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.annotation.JSONField;
 import org.codehaus.jackson.annotate.JsonIgnore;
 
 import javax.persistence.*;
+import java.io.Serializable;
 import java.util.*;
 
 /**
@@ -14,7 +15,12 @@ import java.util.*;
  */
 @Table(name = "purc$acceptitem")
 @Entity
-public class PurchaseAcceptItem {
+public class PurchaseAcceptItem implements Serializable {
+
+	/**
+	 * default serialVersionUID
+	 */
+	private static final long serialVersionUID = 1L;
 
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO)

+ 27 - 21
src/main/java/com/uas/platform/b2b/model/PurchaseReturnItem.java

@@ -16,14 +16,6 @@ import java.util.*;
 @Entity
 public class PurchaseReturnItem {
 
-	public Product getProduct() {
-		return product;
-	}
-
-	public void setProduct(Product product) {
-		this.product = product;
-	}
-
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO)
 	@Column(name = "pri_id")
@@ -54,7 +46,7 @@ public class PurchaseReturnItem {
 	private Double taxrate;
 
 	/**
-	 * 验单主记录
+	 * 验退单主记录
 	 */
 	@ManyToOne(cascade = CascadeType.ALL, optional = true)
 	@JoinColumn(name = "pri_prid", nullable = false)
@@ -234,22 +226,18 @@ public class PurchaseReturnItem {
 		this.erpDate = erpDate;
 	}
 
-	public static List<PurchaseReturn> distinct(List<PurchaseReturnItem> items) {
-		List<PurchaseReturn> list = new ArrayList<PurchaseReturn>();
-		Set<Long> keys = new HashSet<Long>();
-		for (PurchaseReturnItem item : items) {
-			if (!keys.contains(item.getPurchaseReturn())) {
-				list.add(item.getPurchaseReturn());
-				keys.add(item.getPurchaseReturn().getId());
-			}
-		}
-		return list;
-	}
-
 	public Long getProdId() {
 		return prodId;
 	}
 
+	public Product getProduct() {
+		return product;
+	}
+
+	public void setProduct(Product product) {
+		this.product = product;
+	}
+
 	public void setProdId(Long prodId) {
 		this.prodId = prodId;
 	}
@@ -277,4 +265,22 @@ public class PurchaseReturnItem {
 	public void setCheckQty(Integer checkQty) {
 		this.checkQty = checkQty;
 	}
+
+	/**
+	 * 采购验退单去重
+	 *
+	 * @param items 采购验退单
+	 * @return
+	 */
+	public static List<PurchaseReturn> distinct(List<PurchaseReturnItem> items) {
+		List<PurchaseReturn> list = new ArrayList<PurchaseReturn>();
+		Set<Long> keys = new HashSet<Long>();
+		for (PurchaseReturnItem item : items) {
+			if (!keys.contains(item.getPurchaseReturn())) {
+				list.add(item.getPurchaseReturn());
+				keys.add(item.getPurchaseReturn().getId());
+			}
+		}
+		return list;
+	}
 }

+ 40 - 26
src/main/java/com/uas/platform/b2b/service/MakeAcceptService.java

@@ -1,84 +1,91 @@
 package com.uas.platform.b2b.service;
 
-import java.util.List;
-
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
-import org.springframework.data.domain.Page;
-
 import com.uas.platform.b2b.model.MakeAccept;
 import com.uas.platform.b2b.model.MakeAcceptItem;
+import com.uas.platform.b2b.model.MakeOrderAcceptItem;
 import com.uas.platform.core.model.PageInfo;
+import org.springframework.data.domain.Page;
+
+import java.util.List;
 
+/**
+ * 委外验收单
+ * 
+ * @author hejq
+ * @date 2018-07-19 16:55
+ */
 public interface MakeAcceptService {
 	/**
 	 * 批量保存、委外验收单
 	 * 
-	 * @param changeItems
+	 * @param acceptItems 委外验收单
 	 * @return
 	 */
-	public void save(List<MakeAcceptItem> acceptItems);
+	void save(List<MakeAcceptItem> acceptItems);
 
 	/**
 	 * 用变更单ID查找客户委外验收
 	 * 
-	 * @param id
+	 * @param id id
 	 * @return
 	 */
-	public MakeAccept findById(Long id);
+	MakeAccept findById(Long id);
 
 	/**
 	 * 批量反过账客户委外验收单
 	 * 
-	 * @param changeItems
+	 * @param accepts 客户委外验收单
 	 * @return
 	 */
-	public void nonPosting(List<MakeAccept> accepts);
+	void nonPosting(List<MakeAccept> accepts);
 
-	/**
-	 * 分页查找委外验收单据
-	 * 
-	 * @param pageInfo
-	 * @param keyword
-	 * @return
-	 */
-	public Page<MakeAccept> findAllByPageInfo(PageInfo pageInfo, String keyword, Long fromDate, Long endDate);
+    /**
+     * 分页查找委外验收单据
+     *
+     * @param pageInfo 分页信息
+     * @param keyword 关键字
+     * @param fromDate 起始时间
+     * @param endDate 截止时间
+     * @return
+     */
+	Page<MakeAccept> findAllByPageInfo(PageInfo pageInfo, String keyword, Long fromDate, Long endDate);
 
 	/**
 	 * 获取需要上传(到卖方)的未上传验收入库单
 	 * 
 	 * @return
 	 */
-	public List<MakeAccept> findNotUpload();
+	List<MakeAccept> findNotUpload();
 
 	/**
 	 * 上传好需要上传的客户委外验收单后修改单据的上传状态
 	 * 
-	 * @param idArray
+	 * @param idArray id
 	 */
-	public void onUploadSuccess(String[] idArray);
+	void onUploadSuccess(String[] idArray);
 
 	/**
 	 * 获取需要上传(到卖方)的以反过账的验收单
 	 * 
 	 * @return
 	 */
-	public List<MakeAccept> getNonPosting();
+	List<MakeAccept> getNonPosting();
 
 	/**
 	 * 删除已上传(到卖方)的反过账验收单
 	 * 
 	 * @param idArray
 	 */
-	public void onNonPostingUploadSuccess(String[] idArray);
+	void onNonPostingUploadSuccess(String[] idArray);
 
 	/**
 	 * 获取总共客户采购单数量
 	 * 
 	 * @return
 	 */
-	public Long getAllCount();
+	Long getAllCount();
 
-    Integer getAcceptUnreadCount();
 
 	/**
 	 * 将批量更改价格转换成委外验收单
@@ -86,5 +93,12 @@ public interface MakeAcceptService {
 	 * @param prodInOuts
 	 * @return
 	 */
-	List<MakeAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+	List<MakeOrderAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+
+    /**
+     * 批量更新委外验收单
+     *
+     * @param acceptItems 委外验收单
+     */
+    void batchSave(List<MakeOrderAcceptItem> acceptItems);
 }

+ 41 - 28
src/main/java/com/uas/platform/b2b/service/MakeReturnService.java

@@ -1,90 +1,103 @@
 package com.uas.platform.b2b.service;
 
-import java.util.List;
-
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
-import org.springframework.data.domain.Page;
-
+import com.uas.platform.b2b.model.MakeOrderReturnItem;
 import com.uas.platform.b2b.model.MakeReturn;
 import com.uas.platform.b2b.model.MakeReturnItem;
 import com.uas.platform.core.model.PageInfo;
+import org.springframework.data.domain.Page;
+
+import java.util.List;
 
+/**
+ * 委外验退单
+ * 
+ * @author hejq
+ * @date 2018-07-19 17:04
+ */
 public interface MakeReturnService {
 	/**
 	 * 批量保存、修改客户委外验退单
 	 * 
-	 * @param changeItems
+	 * @param returnItems 客户委外验退单
 	 * @return
 	 */
-	public void save(List<MakeReturnItem> returnItems);
+	void save(List<MakeReturnItem> returnItems);
 
 	/**
 	 * 获取需要上传(到卖方)的未上委外验退单
 	 * 
 	 * @return
 	 */
-	public List<MakeReturn> findNotUpload();
+	List<MakeReturn> findNotUpload();
 
 	/**
 	 * 上传好需要上传的客户委外验退单后修改单据的上传状态
 	 * 
 	 * @param idArray
 	 */
-	public void onUploadSuccess(String[] idArray);
+	void onUploadSuccess(String[] idArray);
 
 	/**
 	 * 获取需要上传(到卖方)的反过账委外验退单
 	 * 
 	 * @return
 	 */
-	public List<MakeReturn> getNonPosting();
+	List<MakeReturn> getNonPosting();
 
 	/**
 	 * 删除已上传(到卖方)的反过账委外验退单
 	 * 
-	 * @param idArray
+	 * @param idArray id
 	 */
-	public void onNonPostingUploadSuccess(String[] idArray);
+	void onNonPostingUploadSuccess(String[] idArray);
 
 	/**
 	 * 批量反过账客户委外验退单
 	 * 
-	 * @param changeItems
+	 * @param returns 客户委外验退单
 	 * @return
 	 */
-	public void nonPosting(List<MakeReturn> returns);
+	void nonPosting(List<MakeReturn> returns);
 
-	/**
-	 * 分页查找委外验退单据
-	 * 
-	 * @param pageInfo
-	 * @param keyword
-	 * @return
-	 */
-	public Page<MakeReturn> findAllByPageInfo(PageInfo pageInfo, String keyword, Long fromDate, Long endDate);
+    /**
+     * 分页查找委外验退单据
+     *
+     * @param pageInfo 分页信息
+     * @param keyword 搜索关键字
+     * @param fromDate 起始时间
+     * @param endDate 截止时间
+     * @return
+     */
+	Page<MakeReturn> findAllByPageInfo(PageInfo pageInfo, String keyword, Long fromDate, Long endDate);
 
 	/**
 	 * 用变更单ID查找客户采购验收
 	 * 
-	 * @param id
+	 * @param id id
 	 * @return
 	 */
-	public MakeReturn findById(Long id);
+	MakeReturn findById(Long id);
 
 	/**
 	 * 获取总共客户委外验退单数量
 	 * 
 	 * @return
 	 */
-	public Long getAllCount();
-
-    Integer getReturnUnreadCount();
+	Long getAllCount();
 
 	/**
 	 * 批量更新价格转换成委外验退单
 	 *
-	 * @param prodInOuts
+	 * @param prodInOuts ERP批量更新数据
 	 * @return
 	 */
-	List<MakeReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+	List<MakeOrderReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+
+    /**
+     * 批量更新保存委外验退单
+     *
+     * @param returnItems 委外验退单
+     */
+    void batchSave(List<MakeOrderReturnItem> returnItems);
 }

+ 30 - 19
src/main/java/com/uas/platform/b2b/service/PurchaseAcceptService.java

@@ -1,79 +1,90 @@
 package com.uas.platform.b2b.service;
 
-import java.util.List;
-
-import org.springframework.data.domain.Page;
-
+import com.uas.platform.b2b.model.PurcAcceptItem;
 import com.uas.platform.b2b.model.PurchaseAccept;
 import com.uas.platform.b2b.model.PurchaseAcceptItem;
 import com.uas.platform.b2b.model.SearchFilter;
 import com.uas.platform.core.model.PageInfo;
+import org.springframework.data.domain.Page;
 
+import java.util.List;
+
+/**
+ * 采购验收单
+ *
+ * @author hejq
+ * @date 2018-07-19 13:44
+ */
 public interface PurchaseAcceptService {
 
 	/**
 	 * 批量保存、修改客户采购验收单
 	 * 
-	 * @param changeItems
+	 * @param acceptItems 客户采购验收单
 	 * @return
 	 */
-	public void save(List<PurchaseAcceptItem> acceptItems);
+	void save(List<PurchaseAcceptItem> acceptItems);
 	
 	/**
 	 * 批量反过账客户采购验收单
 	 * 
-	 * @param changeItems
+	 * @param accepts 客户采购验收单
 	 * @return
 	 */
-	public void nonPosting(List<PurchaseAccept> accepts);
+	void nonPosting(List<PurchaseAccept> accepts);
 	
 	/**
 	 * 获取需要上传(到卖方)的以反过账的验收单
 	 * @return
 	 */
-	public List<PurchaseAccept> getNonPosting();
+	List<PurchaseAccept> getNonPosting();
 	
 	/**
 	 * 获取需要上传(到卖方)的未上传验收入库单
 	 * @return
 	 */
-	public List<PurchaseAccept> findNotUpload();
+	List<PurchaseAccept> findNotUpload();
 
 	/**
 	 * 删除已上传(到卖方)的反过账验收单
 	 * @param idArray
 	 */
-	public void onNonPostingUploadSuccess(String[] idArray);
+	void onNonPostingUploadSuccess(String[] idArray);
 	
 	/**
 	 * 上传好需要上传的客户采购验收单后修改单据的上传状态
 	 * @param idArray
 	 */
-	public void onUploadSuccess(String[] idArray);
+	void onUploadSuccess(String[] idArray);
 	
 
 	/**
 	 * 分页查找客户采购验收,包括明细
 	 * 
-	 * @param pageInfo
-	 * @param keyword 查找关键字
+	 * @param pageInfo 分页信息
+	 * @param filter 过滤条件
 	 * @return
 	 */
-	public Page<PurchaseAccept> findAllByPageInfo(PageInfo pageInfo, SearchFilter filter);
+	Page<PurchaseAccept> findAllByPageInfo(PageInfo pageInfo, SearchFilter filter);
 	
 	/**
 	 * 用客户采购验收单ID查找客户采购验收
 	 * 
-	 * @param id
+	 * @param id 采购验收单id
 	 * @return
 	 */
-	public PurchaseAccept findById(Long id);
+	PurchaseAccept findById(Long id);
 	
 	/**
 	 * 获取客户采购验收单的条数
 	 * @return
 	 */
-	public Long getAllCount();
+	Long getAllCount();
 
-    Integer getAcceptUnreadCount();
+	/**
+	 * 批量存储采购验收单信息
+	 *
+	 * @param acceptItems 采购验收单
+	 */
+	void batchSave(List<PurcAcceptItem> acceptItems);
 }

+ 32 - 20
src/main/java/com/uas/platform/b2b/service/PurchaseReturnService.java

@@ -1,15 +1,21 @@
 package com.uas.platform.b2b.service;
 
-import java.util.List;
-
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
-import org.springframework.data.domain.Page;
-
+import com.uas.platform.b2b.model.PurcReturnItem;
 import com.uas.platform.b2b.model.PurchaseReturn;
 import com.uas.platform.b2b.model.PurchaseReturnItem;
 import com.uas.platform.b2b.model.SearchFilter;
 import com.uas.platform.core.model.PageInfo;
+import org.springframework.data.domain.Page;
 
+import java.util.List;
+
+/**
+ * 采购验退单
+ *
+ * @author hejq
+ * @date 2018-07-19 16:51
+ */
 public interface PurchaseReturnService {
 
 	/**
@@ -18,69 +24,68 @@ public interface PurchaseReturnService {
 	 * @param returnItems
 	 * @return
 	 */
-	public void save(List<PurchaseReturnItem> returnItems);
+	void save(List<PurchaseReturnItem> returnItems);
 
 	/**
 	 * 获取需要上传(到卖方)的未上传采购验退单
 	 * 
 	 * @return
 	 */
-	public List<PurchaseReturn> findNotUpload();
+	List<PurchaseReturn> findNotUpload();
 
 	/**
 	 * 上传好需要上传的客户采购验退单后修改单据的上传状态
 	 * 
 	 * @param idArray
 	 */
-	public void onUploadSuccess(String[] idArray);
+	void onUploadSuccess(String[] idArray);
 	
 
 	/**
 	 * 批量反过账客户采购验退单
 	 * 
-	 * @param changeItems
+	 * @param returns 采购验退单
 	 * @return
 	 */
-	public void nonPosting(List<PurchaseReturn> returns);
+	void nonPosting(List<PurchaseReturn> returns);
 	
 	/**
 	 * 获取需要上传(到卖方)的以反过账的采购验退单
 	 * @return
 	 */
-	public List<PurchaseReturn> getNonPosting();
+	List<PurchaseReturn> getNonPosting();
 
 	/**
 	 * 删除已上传(到卖方)的反过账采购验退单
-	 * @param idArray
+	 * @param idArray id
 	 */
-	public void onNonPostingUploadSuccess(String[] idArray);
+	void onNonPostingUploadSuccess(String[] idArray);
 	
 
 	/**
 	 * 分页查找客户采购验收,包括明细
 	 * 
-	 * @param pageInfo
+	 * @param pageInfo 分页信息
 	 * @param keyword
 	 *            查找关键词
+     * @param filter 过滤条件
 	 * @return
 	 */
-	public Page<PurchaseReturn> findAllByPageInfo(PageInfo pageInfo, String keyword, SearchFilter filter);
+	Page<PurchaseReturn> findAllByPageInfo(PageInfo pageInfo, String keyword, SearchFilter filter);
 
 	/**
 	 * 用变更单ID查找客户采购验收
 	 * 
-	 * @param id
+	 * @param id id
 	 * @return
 	 */
-	public PurchaseReturn findById(Long id);
+	PurchaseReturn findById(Long id);
 
 	/**
 	 * 获取当前用户作为供应商的客户采购验退数量
 	 * @return
 	 */
-	public Long getAllCount();
-
-    Integer getReturnUnreadCount();
+	Long getAllCount();
 
 	/**
 	 * 批量更新采购验退单单价转换成采购验退单数据
@@ -88,5 +93,12 @@ public interface PurchaseReturnService {
 	 * @param prodInOuts
 	 * @return
 	 */
-	List<PurchaseReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+	List<PurcReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts);
+
+    /**
+     * 批量保存采购验退单信息
+     *
+     * @param returnItems 采购验退单信息
+     */
+    void batchSave(List<PurcReturnItem> returnItems);
 }

+ 27 - 22
src/main/java/com/uas/platform/b2b/service/impl/MakeAcceptServiceImpl.java

@@ -3,16 +3,13 @@ package com.uas.platform.b2b.service.impl;
 import com.uas.platform.b2b.core.util.ContextUtils;
 import com.uas.platform.b2b.dao.MakeAcceptDao;
 import com.uas.platform.b2b.dao.MakeAcceptItemDao;
+import com.uas.platform.b2b.dao.MakeOrderAcceptItemDao;
 import com.uas.platform.b2b.dao.MakeOrderDao;
-import com.uas.platform.b2b.dao.PagingReleaseCountDao;
 import com.uas.platform.b2b.erp.model.OrderDetailPrice;
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
 import com.uas.platform.b2b.erp.service.MakeService;
 import com.uas.platform.b2b.event.MakeAcceptSaveReleaseEvent;
-import com.uas.platform.b2b.model.MakeAccept;
-import com.uas.platform.b2b.model.MakeAcceptItem;
-import com.uas.platform.b2b.model.MakeOrder;
-import com.uas.platform.b2b.model.OrderType;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.service.MakeAcceptService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.model.Constant;
@@ -34,6 +31,8 @@ import java.util.Date;
 import java.util.List;
 
 /**
+ * 委外验收单
+ *
  * @author US50
  */
 @Service
@@ -49,10 +48,10 @@ public class MakeAcceptServiceImpl implements MakeAcceptService {
 	private MakeAcceptDao makeAcceptDao;
 
 	@Autowired
-	private PagingReleaseCountDao pagingReleaseCountDao;
+	private MakeService makeService;
 
 	@Autowired
-	private MakeService makeService;
+    private MakeOrderAcceptItemDao acceptItemDao;
 
 	@Override
 	public void save(List<MakeAcceptItem> acceptItems) {
@@ -165,25 +164,21 @@ public class MakeAcceptServiceImpl implements MakeAcceptService {
 	}
 
 	@Override
-	public Integer getAcceptUnreadCount() {
-		return pagingReleaseCountDao.getUnreadCount(SystemSession.getUser().getEnterprise().getUu(),
-				SystemSession.getUser().getUserUU(), "sale", "MAKE$ACCEPT");
-	}
-
-	@Override
-	public List<MakeAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
-		List<MakeAcceptItem> items = new ArrayList<MakeAcceptItem>();
+	public List<MakeOrderAcceptItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
+		List<MakeOrderAcceptItem> items = new ArrayList<>();
 		List<OrderDetailPrice> detailPriceList = new ArrayList<>();
 		if (!CollectionUtils.isEmpty(prodInOuts)) {
 			for (ProdInOutRefreshPrice prod : prodInOuts) {
-				MakeAcceptItem returnItem = makeAcceptItemDao.findByEnUUAndCodeAndNumber(
+				MakeAcceptItem acceptItem = makeAcceptItemDao.findByEnUUAndCodeAndNumber(
 						SystemSession.getUser().getEnterprise().getUu(), prod.getPbu_inoutno(), prod.getPbu_pdno());
-				if (null != returnItem) {
-					returnItem.setOrderPrice(prod.getPbu_orderprice());
-					returnItem.setTaxrate(prod.getPbu_taxrate());
-					items.add(returnItem);
-					if (null != returnItem.getOrderId()) {
-						detailPriceList.add(new OrderDetailPrice(returnItem.getOrderId(), returnItem.getOrderPrice(), returnItem.getTaxrate()));
+				if (null != acceptItem) {
+                    MakeOrderAcceptItem item = new MakeOrderAcceptItem();
+                    acceptItem.setOrderPrice(prod.getPbu_orderprice());
+                    acceptItem.setTaxrate(prod.getPbu_taxrate());
+					item.setAcceptId(acceptItem.getAccept().getId());
+					items.add(item);
+					if (null != acceptItem.getOrderId()) {
+						detailPriceList.add(new OrderDetailPrice(acceptItem.getOrderId(), acceptItem.getOrderPrice(), acceptItem.getTaxrate()));
 					}
 				}
 			}
@@ -193,4 +188,14 @@ public class MakeAcceptServiceImpl implements MakeAcceptService {
         }
 		return items;
 	}
+
+    /**
+     * 批量更新委外验收单
+     *
+     * @param acceptItems 委外验收单
+     */
+    @Override
+    public void batchSave(List<MakeOrderAcceptItem> acceptItems) {
+        acceptItemDao.save(acceptItems);
+    }
 }

+ 22 - 20
src/main/java/com/uas/platform/b2b/service/impl/MakeReturnServiceImpl.java

@@ -1,16 +1,13 @@
 package com.uas.platform.b2b.service.impl;
 
 import com.uas.platform.b2b.dao.MakeOrderDao;
+import com.uas.platform.b2b.dao.MakeOrderReturnItemDao;
 import com.uas.platform.b2b.dao.MakeReturnDao;
 import com.uas.platform.b2b.dao.MakeReturnItemDao;
-import com.uas.platform.b2b.dao.PagingReleaseCountDao;
 import com.uas.platform.b2b.erp.model.OrderDetailPrice;
 import com.uas.platform.b2b.erp.model.ProdInOutRefreshPrice;
 import com.uas.platform.b2b.erp.service.MakeService;
-import com.uas.platform.b2b.model.MakeOrder;
-import com.uas.platform.b2b.model.MakeReturn;
-import com.uas.platform.b2b.model.MakeReturnItem;
-import com.uas.platform.b2b.model.OrderType;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.service.MakeReturnService;
 import com.uas.platform.b2b.support.SystemSession;
@@ -20,6 +17,7 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.PageParams;
 import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
@@ -59,7 +57,7 @@ public class MakeReturnServiceImpl implements MakeReturnService {
     private MakeService makeService;
 
 	@Autowired
-	private PagingReleaseCountDao pagingReleaseCountDao;
+	private MakeOrderReturnItemDao returnItemDao;
 
 	@Override
 	public void save(List<MakeReturnItem> returnItems) {
@@ -146,9 +144,6 @@ public class MakeReturnServiceImpl implements MakeReturnService {
 	public Page<MakeReturn> findAllByPageInfo(final PageInfo pageInfo, final String keyword, final Long fromDate,
 			final Long endDate) {
 		if (StringUtils.hasText(keyword)) {
-			// pageInfo.expression(PredicateUtils.in("id",makeReturnIndexDao.findByKeyword(SystemSession
-			// .getUser().getEnterprise().getUu(), filter.getKeyword()),
-			// false));
 			List<Object> lists = new ArrayList<>();
 			PageParams pageParams = new PageParams();
 			ModelMap map = new ModelMap();
@@ -185,23 +180,20 @@ public class MakeReturnServiceImpl implements MakeReturnService {
 	}
 
 	@Override
-	public Integer getReturnUnreadCount() {
-		return pagingReleaseCountDao.getUnreadCount(SystemSession.getUser().getEnterprise().getUu(),
-				SystemSession.getUser().getUserUU(), "sale", "MAKE$RETURN");
-	}
-
-	@Override
-	public List<MakeReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
-		List<MakeReturnItem> items = new ArrayList<MakeReturnItem>();
+	public List<MakeOrderReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
+		List<MakeOrderReturnItem> items = new ArrayList<>();
         List<OrderDetailPrice> detailPriceList = new ArrayList<>();
 		if (!CollectionUtils.isEmpty(prodInOuts)) {
 			for (ProdInOutRefreshPrice prod : prodInOuts) {
 				MakeReturnItem returnItem = makeReturnItemDao.findByEnUUAndCodeAndNumber(
 						SystemSession.getUser().getEnterprise().getUu(), prod.getPbu_inoutno(), prod.getPbu_pdno());
 				if (null != returnItem) {
-					returnItem.setOrderPrice(prod.getPbu_orderprice());
-					returnItem.setTaxrate(prod.getPbu_taxrate());
-					items.add(returnItem);
+					MakeOrderReturnItem item = new MakeOrderReturnItem();
+					BeanUtils.copyProperties(returnItem, item, MakeOrderReturnItem.class);
+					item.setOrderPrice(prod.getPbu_orderprice());
+					item.setTaxrate(prod.getPbu_taxrate());
+					item.setReturnId(returnItem.getReturn().getId());
+					items.add(item);
 					if (null != returnItem.getOrderId()) {
 						detailPriceList.add(new OrderDetailPrice(returnItem.getOrderId(), returnItem.getOrderPrice(), returnItem.getTaxrate()));
 					}
@@ -213,4 +205,14 @@ public class MakeReturnServiceImpl implements MakeReturnService {
         }
 		return items;
 	}
+
+    /**
+     * 批量更新保存委外验退单
+     *
+     * @param returnItems 委外验退单
+     */
+    @Override
+    public void batchSave(List<MakeOrderReturnItem> returnItems) {
+        returnItemDao.save(returnItems);
+    }
 }

+ 20 - 11
src/main/java/com/uas/platform/b2b/service/impl/PurchaseAcceptServiceImpl.java

@@ -1,15 +1,12 @@
 package com.uas.platform.b2b.service.impl;
 
 import com.uas.platform.b2b.core.util.ContextUtils;
-import com.uas.platform.b2b.dao.PagingReleaseCountDao;
+import com.uas.platform.b2b.dao.PurcAcceptItemDao;
 import com.uas.platform.b2b.dao.PurchaseAcceptDao;
 import com.uas.platform.b2b.dao.PurchaseAcceptItemDao;
 import com.uas.platform.b2b.dao.PurchaseOrderItemDao;
 import com.uas.platform.b2b.event.PurchaseAcceptSaveReleaseEvent;
-import com.uas.platform.b2b.model.PurchaseAccept;
-import com.uas.platform.b2b.model.PurchaseAcceptItem;
-import com.uas.platform.b2b.model.PurchaseOrderItem;
-import com.uas.platform.b2b.model.SearchFilter;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.service.PurchaseAcceptService;
 import com.uas.platform.b2b.support.SystemSession;
@@ -29,6 +26,12 @@ import org.springframework.util.StringUtils;
 import javax.persistence.criteria.*;
 import java.util.*;
 
+/**
+ * 采购验收单
+ * 
+ * @author hejq
+ * @date 2018-07-19 13:45
+ */
 @Service
 public class PurchaseAcceptServiceImpl implements PurchaseAcceptService {
 
@@ -43,12 +46,13 @@ public class PurchaseAcceptServiceImpl implements PurchaseAcceptService {
 
 	@Autowired
 	private SearchService searchService;
-	@Autowired
-	private PagingReleaseCountDao pagingReleaseCountDao;
+
+    @Autowired
+    private PurcAcceptItemDao acceptItemDao;
 
 	@Override
 	public void save(List<PurchaseAcceptItem> acceptItems) {
-		acceptItems = purchaseAcceptItemDao.save(acceptItems);
+        acceptItems = purchaseAcceptItemDao.save(acceptItems);
 		// 关联订单的验收数量
 		for (PurchaseAcceptItem acceptItem : acceptItems) {
 			if (acceptItem.getOrderItem() != null) {
@@ -191,9 +195,14 @@ public class PurchaseAcceptServiceImpl implements PurchaseAcceptService {
 		return purchaseAcceptDao.countByVendUU(SystemSession.getUser().getEnterprise().getUu());
 	}
 
+	/**
+	 * 批量存储采购验收单信息
+	 *
+	 * @param acceptItems 采购验收单
+	 */
 	@Override
-	public Integer getAcceptUnreadCount() {
-		return pagingReleaseCountDao.getUnreadCount(SystemSession.getUser().getEnterprise().getUu(),
-				SystemSession.getUser().getUserUU(), "sale", "PURC$ACCEPT");
+	public void batchSave(List<PurcAcceptItem> acceptItems) {
+        acceptItemDao.save(acceptItems);
 	}
+
 }

+ 3 - 3
src/main/java/com/uas/platform/b2b/service/impl/PurchaseApBillServiceImpl.java

@@ -168,11 +168,11 @@ public class PurchaseApBillServiceImpl implements PurchaseApBillService {
 	@Override
 	public void refreshPrice(List<ProdInOutRefreshPrice> prodInOuts) {
 		Long enuu = SystemSession.getUser().getEnterprise().getUu();
-		if(!CollectionUtils.isEmpty(prodInOuts)) {
-			for(ProdInOutRefreshPrice prod : prodInOuts) {
+		if (!CollectionUtils.isEmpty(prodInOuts)) {
+			for (ProdInOutRefreshPrice prod : prodInOuts) {
 				// 只更新一条数据,这里只能用物料编号去判断,采购单序号等无法判断
 				List<Product> prods = productDao.findByEnUUAndCode(enuu, prod.getPd_prodcode());
-				if(!CollectionUtils.isEmpty(prods)) {
+				if (!CollectionUtils.isEmpty(prods)) {
 					// 更新明细单价、税率
 					String sql = " update purc$apbillitem i,purc$apbill a set i.papi_price = " + prod.getPbu_orderprice() + ", i.papi_apamount = i.papi_thisvoqty * "
 							+ prod.getPbu_orderprice() + ", i.papi_amount = i.papi_qty * " + prod.getPbu_orderprice();

+ 27 - 13
src/main/java/com/uas/platform/b2b/service/impl/PurchaseReturnServiceImpl.java

@@ -1,6 +1,6 @@
 package com.uas.platform.b2b.service.impl;
 
-import com.uas.platform.b2b.dao.PagingReleaseCountDao;
+import com.uas.platform.b2b.dao.PurcReturnItemDao;
 import com.uas.platform.b2b.dao.PurchaseOrderItemDao;
 import com.uas.platform.b2b.dao.PurchaseReturnDao;
 import com.uas.platform.b2b.dao.PurchaseReturnItemDao;
@@ -17,6 +17,7 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.PageParams;
 import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
@@ -31,6 +32,12 @@ import javax.persistence.criteria.Root;
 import java.util.ArrayList;
 import java.util.List;
 
+/**
+ * 采购验退单
+ *  
+ * @author hejq
+ * @date 2018-07-19 16:53
+ */
 @Service
 public class PurchaseReturnServiceImpl implements PurchaseReturnService {
 
@@ -50,7 +57,7 @@ public class PurchaseReturnServiceImpl implements PurchaseReturnService {
     private PurchaseService purchaseService;
 	
 	@Autowired
-	private PagingReleaseCountDao pagingReleaseCountDao;
+	private PurcReturnItemDao returnItemDao;
 
 	@Override
 	public void save(List<PurchaseReturnItem> returnItems) {
@@ -173,23 +180,20 @@ public class PurchaseReturnServiceImpl implements PurchaseReturnService {
 	}
 
 	@Override
-	public Integer getReturnUnreadCount(){
-		return pagingReleaseCountDao.getUnreadCount(SystemSession.getUser().getEnterprise().getUu(),
-				SystemSession.getUser().getUserUU(), "sale", "PURC$RETURN");
-	}
-
-	@Override
-	public List<PurchaseReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
-		List<PurchaseReturnItem> items = new ArrayList<PurchaseReturnItem>();
+	public List<PurcReturnItem> convertPirceForProdIn(List<ProdInOutRefreshPrice> prodInOuts) {
+		List<PurcReturnItem> items = new ArrayList<>();
 		List<OrderDetailPrice> detailPriceList = new ArrayList<>();
 		if (!CollectionUtils.isEmpty(prodInOuts)) {
 			for (ProdInOutRefreshPrice prod : prodInOuts) {
 				PurchaseReturnItem returnItem = purchaseReturnItemDao.findByEnUUAndCodeAndNumber(
 						SystemSession.getUser().getEnterprise().getUu(), prod.getPbu_inoutno(), prod.getPbu_pdno());
 				if (null != returnItem) {
-					returnItem.setOrderPrice(prod.getPbu_orderprice());
-					returnItem.setTaxrate(prod.getPbu_taxrate());
-					items.add(returnItem);
+					PurcReturnItem item = new PurcReturnItem();
+					BeanUtils.copyProperties(returnItem, item, PurcReturnItem.class);
+					item.setOrderPrice(prod.getPbu_orderprice());
+					item.setTaxrate(prod.getPbu_taxrate());
+					item.setReturnId(returnItem.getPurchaseReturn().getId());
+					items.add(item);
 					if (null != returnItem.getOrderItemId()) {
 						detailPriceList.add(new OrderDetailPrice(returnItem.getOrderItemId(), returnItem.getOrderPrice(), returnItem.getTaxrate()));
 					}
@@ -201,4 +205,14 @@ public class PurchaseReturnServiceImpl implements PurchaseReturnService {
         }
 		return items;
 	}
+
+    /**
+     * 批量保存采购验退单信息
+     *
+     * @param returnItems 采购验退单信息
+     */
+    @Override
+    public void batchSave(List<PurcReturnItem> returnItems) {
+        returnItemDao.save(returnItems);
+    }
 }