Browse Source

收料单检验上传

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

+ 3 - 3
src/main/java/com/uas/platform/b2b/dao/SaleSendItemDao.java

@@ -43,12 +43,12 @@ public interface SaleSendItemDao extends JpaSpecificationExecutor<SaleSendItem>,
 	public void updateByReply(@Param("id") long id, @Param("qty") double qty, @Param("remark") String remark);
 	
 	/**
-	 * 更新客户收料数量
+	 * 更新客户收料数量、合格数、不合格数
 	 * @param id
 	 * @param verifyQty
 	 */
 	@Modifying(clearAutomatically = true)
-	@Query("update SaleSendItem s set s.verifyQty = :verifyQty where s.id= :id")
-	public void updateByVerify(@Param("id") long id, @Param("verifyQty") double verifyQty);
+	@Query(nativeQuery = true, value = "update sale$senditem si set (si_verifyqty, si_okqty, si_notokqty) = (select sum(siv_qty), sum(siv_okqty), sum(siv_notokqty) from SALE$SENDITEMVERIFY siv where siv.SIV_SENDITEMID = si.SI_ID ) where si.si_id= :id")
+	public void updateByVerify(@Param("id") long id);
 
 }

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

@@ -0,0 +1,16 @@
+package com.uas.platform.b2b.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+import com.uas.platform.b2b.model.SaleSendItemVerify;
+
+@Repository
+public interface SaleSendItemVerifyDao extends JpaSpecificationExecutor<SaleSendItemVerify>, JpaRepository<SaleSendItemVerify, Long> {
+	
+	public List<SaleSendItemVerify> findByCustUUAndSourceId(Long custUU, Long sourceId);
+
+}

+ 1 - 1
src/main/java/com/uas/platform/b2b/erp/controller/PurchaseNotifyController.java

@@ -153,7 +153,7 @@ public class PurchaseNotifyController {
 	public void onUnVerify(@RequestParam("data") String data) throws UnsupportedEncodingException {
 		String jsonStr = URLDecoder.decode(data, "UTF-8");
 		List<AcceptNotifyVerify> verifies = FlexJsonUtils.fromJsonArray(jsonStr, AcceptNotifyVerify.class);
-		purchaseNoticeService.onVerify(purchaseNotifyService.convertAcceptUnauditVerify(verifies));
+		purchaseNoticeService.unVerify(purchaseNotifyService.convertAcceptUnauditVerify(verifies));
 		logger.log("送货提醒", "上传反审核收料单的数量", verifies.size());
 	}
 

+ 65 - 11
src/main/java/com/uas/platform/b2b/erp/model/AcceptNotifyVerify.java

@@ -1,22 +1,32 @@
 package com.uas.platform.b2b.erp.model;
 
+import java.util.Date;
+
+import com.uas.platform.b2b.model.SaleSendItemVerify;
+import com.uas.platform.b2b.support.SystemSession;
+
 /**
- * 收料单
+ * 已转检验的收料单
  * @author suntg
  *
  */
 public class AcceptNotifyVerify {
 
-	private Long va_id;
+	private Long vad_id;
 	private Long b2b_ss_id;
 	private short and_detno;
-	private Double vad_qty;
+	private Double vad_jyqty;
+	private String ve_code;
+	private Double ve_okqty;
+	private Double ve_notokqty;
+	private String ve_testman;
+	private Date ve_date;
 	
-	public Long getVa_id() {
-		return va_id;
+	public Long getVad_id() {
+		return vad_id;
 	}
-	public void setVa_id(Long va_id) {
-		this.va_id = va_id;
+	public void setVad_id(Long vad_id) {
+		this.vad_id = vad_id;
 	}
 	public Long getB2b_ss_id() {
 		return b2b_ss_id;
@@ -30,12 +40,56 @@ public class AcceptNotifyVerify {
 	public void setAnd_detno(short and_detno) {
 		this.and_detno = and_detno;
 	}
-	public Double getVad_qty() {
-		return vad_qty;
+	public Double getVad_jyqty() {
+		return vad_jyqty;
+	}
+	public void setVad_jyqty(Double vad_jyqty) {
+		this.vad_jyqty = vad_jyqty;
+	}
+	public String getVe_code() {
+		return ve_code;
+	}
+	public void setVe_code(String ve_code) {
+		this.ve_code = ve_code;
+	}
+	public Double getVe_okqty() {
+		return ve_okqty;
+	}
+	public void setVe_okqty(Double ve_okqty) {
+		this.ve_okqty = ve_okqty;
+	}
+	public Double getVe_notokqty() {
+		return ve_notokqty;
 	}
-	public void setVad_qty(Double vad_qty) {
-		this.vad_qty = vad_qty;
+	public void setVe_notokqty(Double ve_notokqty) {
+		this.ve_notokqty = ve_notokqty;
 	}
+	public String getVe_testman() {
+		return ve_testman;
+	}
+	public void setVe_testman(String ve_testman) {
+		this.ve_testman = ve_testman;
+	}
+	public Date getVe_date() {
+		return ve_date;
+	}
+	public void setVe_date(Date ve_date) {
+		this.ve_date = ve_date;
+	}
+	
+	public SaleSendItemVerify convert(){
+		SaleSendItemVerify verify = new SaleSendItemVerify();
+		verify.setCode(ve_code);
+		verify.setCustUU(SystemSession.getUser().getEnterprise().getUu());
+		verify.setDate(ve_date);
+		verify.setNotokQty(ve_notokqty);
+		verify.setOkQty(ve_okqty);
+		verify.setQty(vad_jyqty);
+		verify.setTestman(ve_testman);
+		verify.setSourceId(vad_id);
+		return verify;
+	}
+	
 
 	
 

+ 28 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderDoneItem.java

@@ -122,6 +122,18 @@ public class PurchaseOrderDoneItem {
 	 */
 	@Column(name = "pd_delivery")
 	private Date delivery;
+	
+	/**
+	 * 客户已验收数量
+	 */
+	@Column(name = "pd_acceptqty")
+	private Double acceptQty;
+
+	/**
+	 * 客户验退数量
+	 */
+	@Column(name = "pd_returnqty")
+	private Double returnQty;
 
 	public Long getId() {
 		return id;
@@ -260,4 +272,20 @@ public class PurchaseOrderDoneItem {
 	public void setOrder(PurchaseOrderDone order) {
 		this.order = order;
 	}
+
+	public Double getAcceptQty() {
+		return acceptQty;
+	}
+
+	public void setAcceptQty(Double acceptQty) {
+		this.acceptQty = acceptQty;
+	}
+
+	public Double getReturnQty() {
+		return returnQty;
+	}
+
+	public void setReturnQty(Double returnQty) {
+		this.returnQty = returnQty;
+	}
 }

+ 28 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderEndItem.java

@@ -127,6 +127,18 @@ public class PurchaseOrderEndItem {
 	@Column(name = "pd_end")
 	private Short end;
 	
+	/**
+	 * 客户已验收数量
+	 */
+	@Column(name = "pd_acceptqty")
+	private Double acceptQty;
+
+	/**
+	 * 客户验退数量
+	 */
+	@Column(name = "pd_returnqty")
+	private Double returnQty;
+	
 	public Long getId() {
 		return id;
 	}
@@ -272,4 +284,20 @@ public class PurchaseOrderEndItem {
 	public void setEnd(Short end) {
 		this.end = end;
 	}
+
+	public Double getAcceptQty() {
+		return acceptQty;
+	}
+
+	public void setAcceptQty(Double acceptQty) {
+		this.acceptQty = acceptQty;
+	}
+
+	public Double getReturnQty() {
+		return returnQty;
+	}
+
+	public void setReturnQty(Double returnQty) {
+		this.returnQty = returnQty;
+	}
 }

+ 28 - 0
src/main/java/com/uas/platform/b2b/model/SaleSendItem.java

@@ -94,6 +94,18 @@ public class SaleSendItem {
 	 */
 	@Column(name = "si_verifyqty")
 	private Double verifyQty;
+	
+	/**
+	 * 客户收料合格数
+	 */
+	@Column(name = "si_okqty")
+	private Double okQty;
+	
+	/**
+	 * 客户收料不合格数
+	 */
+	@Column(name = "si_notokqty")
+	private Double notokQty;
 
 	public Long getId() {
 		return id;
@@ -193,6 +205,22 @@ public class SaleSendItem {
 		this.verifyQty = verifyQty;
 	}
 
+	public Double getOkQty() {
+		return okQty;
+	}
+
+	public void setOkQty(Double okQty) {
+		this.okQty = okQty;
+	}
+
+	public Double getNotokQty() {
+		return notokQty;
+	}
+
+	public void setNotokQty(Double notokQty) {
+		this.notokQty = notokQty;
+	}
+
 	public void modify(double oldQty, double newQty) {
 		setReplyRemark("客户修改数量:" + oldQty + "改为" + newQty);
 		setQty(newQty);

+ 49 - 0
src/main/java/com/uas/platform/b2b/model/SaleSendItemAll.java

@@ -1,12 +1,17 @@
 package com.uas.platform.b2b.model;
 
+import java.util.Set;
+
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.FetchType;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
+import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
+import javax.persistence.OrderBy;
 import javax.persistence.Table;
 
 import org.codehaus.jackson.annotate.JsonIgnore;
@@ -89,6 +94,26 @@ public class SaleSendItemAll {
 	 */
 	@Column(name = "si_verifyqty")
 	private Double verifyQty;
+	
+	/**
+	 * 客户收料合格数
+	 */
+	@Column(name = "si_okqty")
+	private Double okQty;
+	
+	/**
+	 * 客户收料不合格数
+	 */
+	@Column(name = "si_notokqty")
+	private Double notokQty;
+
+	/**
+	 * 客户检验单
+	 */
+	@OneToMany(cascade = { CascadeType.REFRESH, CascadeType.PERSIST, CascadeType.REMOVE, CascadeType.MERGE }, fetch = FetchType.EAGER)
+	@JoinColumn(name = "siv_senditemid")
+	@OrderBy("date")
+	private Set<SaleSendItemVerify> verifies;
 
 	public Long getId() {
 		return id;
@@ -190,4 +215,28 @@ public class SaleSendItemAll {
 		this.verifyQty = verifyQty;
 	}
 
+	public Set<SaleSendItemVerify> getVerifies() {
+		return verifies;
+	}
+
+	public void setVerifies(Set<SaleSendItemVerify> verifies) {
+		this.verifies = verifies;
+	}
+
+	public Double getOkQty() {
+		return okQty;
+	}
+
+	public void setOkQty(Double okQty) {
+		this.okQty = okQty;
+	}
+
+	public Double getNotokQty() {
+		return notokQty;
+	}
+
+	public void setNotokQty(Double notokQty) {
+		this.notokQty = notokQty;
+	}
+
 }

+ 185 - 0
src/main/java/com/uas/platform/b2b/model/SaleSendItemVerify.java

@@ -0,0 +1,185 @@
+package com.uas.platform.b2b.model;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.SequenceGenerator;
+import javax.persistence.Table;
+
+import org.codehaus.jackson.annotate.JsonIgnore;
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+/**
+ * 平台里面,供应商发起的发货单明细(明细表角度)
+ * 
+ * @author yingp
+ * 
+ */
+@Table(name = "sale$senditemverify")
+@Entity
+public class SaleSendItemVerify {
+
+	@Id
+	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sale$senditemverify_gen")
+	@SequenceGenerator(name = "sale$senditemverify_gen", sequenceName = "sale$senditemverify_seq", allocationSize = 1)
+	@Column(name = "siv_id")
+	private Long id;
+
+	/**
+	 * 客户UU号(为了好查询)
+	 */
+	@Column(name = "siv_custuu")
+	private Long custUU;
+	
+	/**
+	 * 检验单号
+	 */
+	@Column(name = "siv_code")
+	private String code;
+	
+	/**
+	 * 检验数量
+	 */
+	@Column(name = "siv_qty")
+	private Double qty;
+	
+	/**
+	 * 检验合格数
+	 */
+	@Column(name = "siv_okqty")
+	private Double okQty;
+	
+	/**
+	 * 检验不合格数
+	 */
+	@Column(name = "siv_notokqty")
+	private Double notokQty;
+	
+	/**
+	 * 检验日期
+	 */
+	@Column(name = "siv_date")
+	private Date date;
+	
+	/**
+	 * 检验员
+	 */
+	@Column(name = "siv_testman")
+	private String testman;
+	
+	/**
+	 * 备注
+	 */
+	@Column(name = "siv_remark")
+	private String remark;
+	
+	/**
+	 * 来源ID(买方ERP)
+	 */
+	@Column(name = "siv_sourceid")
+	private Long sourceId;
+	
+	/**
+	 * 发货单明细ID
+	 */
+	@Column(name = "siv_senditemid")
+	private Long sendItemId;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	@JsonIgnore
+	@JSONField(serialize = false)
+	public Long getCustUU() {
+		return custUU;
+	}
+
+	public void setCustUU(Long custUU) {
+		this.custUU = custUU;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public Double getQty() {
+		return qty;
+	}
+
+	public void setQty(Double qty) {
+		this.qty = qty;
+	}
+
+	public Double getOkQty() {
+		return okQty;
+	}
+
+	public void setOkQty(Double okQty) {
+		this.okQty = okQty;
+	}
+
+	public Double getNotokQty() {
+		return notokQty;
+	}
+
+	public void setNotokQty(Double notokQty) {
+		this.notokQty = notokQty;
+	}
+
+	public Date getDate() {
+		return date;
+	}
+
+	public void setDate(Date date) {
+		this.date = date;
+	}
+
+	public String getTestman() {
+		return testman;
+	}
+
+	public void setTestman(String testman) {
+		this.testman = testman;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public Long getSourceId() {
+		return sourceId;
+	}
+
+	public void setSourceId(Long sourceId) {
+		this.sourceId = sourceId;
+	}
+
+	public Long getSendItemId() {
+		return sendItemId;
+	}
+
+	public void setSendItemId(Long sendItemId) {
+		this.sendItemId = sendItemId;
+	}
+	
+	
+	
+}