Ver código fonte

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

administrator 11 anos atrás
pai
commit
eb95d6a793

+ 6 - 0
src/main/java/com/uas/platform/b2b/dao/PurchaseOrderItemDao.java

@@ -1,9 +1,11 @@
 package com.uas.platform.b2b.dao;
 
+import java.util.Date;
 import java.util.List;
 
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
@@ -43,4 +45,8 @@ public interface PurchaseOrderItemDao extends JpaSpecificationExecutor<PurchaseO
 	 */
 	@Query("from PurchaseOrderItem d where d.order.vendUU = :vendUU and d.endStatus = :endStatus")
 	public List<PurchaseOrderItem> findByVendUUAndEndStatus(@Param("vendUU") long vendUU, @Param("endStatus") short endStatus);
+
+	@Modifying(clearAutomatically = true)
+	@Query("update PurchaseOrderItem p set p.replyQty=p.replyQty+ :qty,p.replyDelivery= :delivery,p.replyRemark= :remark where p.id= :id")
+	public void updateByReply(@Param("qty") double qty, @Param("delivery") Date delivery, @Param("remark") String remark);
 }

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

@@ -122,14 +122,14 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 		Double replyQty = item.getReplyQty();
 		replyQty = replyQty == null ? 0 : replyQty;
 		item.setReplyQty(replyQty + reply.getQty());
-		item.setReplyDelivery(reply.getDelivery());
-		item.setReplyRemark(reply.getRemark());
+//		item.setReplyDelivery(reply.getDelivery());
+//		item.setReplyRemark(reply.getRemark());
 		if (item.getReplyQty() > item.getQty())
 			throw new IllegalOperatorException("回复的数量合计超过了订单数量");
 		// 该行回复状态
 		item.setStatus((short) (Double.compare(item.getReplyQty(), item.getQty()) == 0 ? Status.REPLIED.value() : Status.NOT_REPLY.value()));
 		purchaseOrderReplyDao.save(reply);
-		purchaseOrderItemDao.save(item);
+		purchaseOrderItemDao.updateByReply(reply.getQty(), reply.getDelivery(), reply.getRemark());
 		// 订单主记录状态
 		List<PurchaseOrderItem> notReply = purchaseOrderItemDao.findByOrderIdAndStatus(item.getOrder().getId(),
 				(short) Status.NOT_REPLY.value());