Browse Source

Merge remote-tracking branch 'origin/feature-201806-suntg' into feature-201806-suntg

suntg 7 years ago
parent
commit
5e4d2b28a7

+ 37 - 15
src/main/java/com/uas/platform/b2b/erp/model/InquiryMould.java

@@ -12,12 +12,12 @@ import java.util.*;
 
 /**
  * 买家ERP系统的模具询价单
- * 
  *
+ * @author hejq
+ * @date 2018-07-24 16:23
  */
-public class InquiryMould {
-	
-	
+public class InquiryMould extends KeyEntity {
+
 	/**
 	 * id
 	 */
@@ -145,10 +145,6 @@ public class InquiryMould {
 	 */
 	private String in_checksendStatus;
 
-	// private Long in_venduseruu;
-	// private String in_source;
-	// private Long in_recorderuu;
-
 	private Long b2b_im_id;
 
 	private List<Attach> attaches;
@@ -410,11 +406,6 @@ public class InquiryMould {
 		} else {
 			inquiryMould.setValid((short) 1);
 		}
-		// if (this.in_sendstatus.equals("待上传")) {
-		// inquiryMould.setSendStatus((short) Status.NOT_UPLOAD.value());
-		// } else if (this.in_sendstatus.equals("已上传")) {
-		// inquiryMould.setSendStatus((short) Status.DOWNLOADED.value());
-		// }
 		if (this.in_adoptstatus != null) {
 			if (this.in_adoptstatus.equals("已采纳")) {
 				inquiryMould.setAdoptStatus((short) 1);
@@ -447,7 +438,6 @@ public class InquiryMould {
 
 	public InquiryMould(PurchaseInquiryMould mould) {
 		this.b2b_im_id = mould.getId();
-		// this.in_attach = mould.getAttachs();
 		this.in_id = mould.getErpSourceId();
 		this.in_auditdate = mould.getAuditDate();
 		this.in_auditor = mould.getAuditor();
@@ -463,7 +453,6 @@ public class InquiryMould {
 		this.in_remark = mould.getRemark();
 		this.in_sourcecode = mould.getSourceCode();
 		this.in_sourcetype = mould.getSourceType();
-		// this.in_status = mould.getStatus();
 		this.in_statuscode = mould.getStatusCode();
 		this.in_taxrate = mould.getTaxrate();
 		if (!CollectionUtils.isEmpty(mould.getInquiryMouldItems())) {
@@ -474,4 +463,37 @@ public class InquiryMould {
 
 		}
 	}
+
+	/**
+	 * 主键值
+	 *
+	 * @return
+	 */
+	@Override
+	public Object getKey() {
+		return null;
+	}
+
+	/**
+	 * 获取物料编号
+	 * <per>
+	 * 有可能是主表带出明细数据,所以用List封装
+	 * </per>
+	 *
+	 * @return
+	 */
+	@Override
+	public List<String> getProductCode() {
+		List<String> codeStr = new ArrayList<>();
+		if (!CollectionUtils.isEmpty(items)) {
+			for (InquiryMouldDet item : items) {
+				if (!CollectionUtils.isEmpty(item.getDetails())) {
+					for (InquiryMouldDetail detail : item.getDetails()) {
+						codeStr.add(detail.getInd_prodcode());
+					}
+				}
+			}
+		}
+		return codeStr;
+	}
 }

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

@@ -1,19 +1,19 @@
 package com.uas.platform.b2b.erp.model;
 
+import com.uas.platform.b2b.model.PurchaseInquiryMouldDetail;
+import com.uas.platform.b2b.model.PurchaseInquiryMouldItem;
+import org.apache.commons.collections.CollectionUtils;
+
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.commons.collections.CollectionUtils;
-
-import com.uas.platform.b2b.model.PurchaseInquiryMouldDetail;
-import com.uas.platform.b2b.model.PurchaseInquiryMouldItem;
-
 /**
  * 买家ERP系统的模具询价明细
- * 
  *
+ * @author hejq
+ * @date 2018-07-24 16:23
  */
 public class InquiryMouldDet {
 

+ 2 - 6
src/main/java/com/uas/platform/b2b/erp/model/InquiryMouldDetail.java

@@ -5,8 +5,9 @@ import com.uas.platform.b2b.model.PurchaseInquiryMouldDetail;
 
 /**
  * 模具询价模具物料明细
- * 
  *
+ * @author hejq
+ * @date 2018-07-24 16:23
  */
 public class InquiryMouldDetail {
 
@@ -133,9 +134,6 @@ public class InquiryMouldDetail {
 		purchaseInquiryMouldDetail.setErpSourceId(this.ind_id);
 		purchaseInquiryMouldDetail.setPrice(this.ind_price);
 		purchaseInquiryMouldDetail.setProdCode(this.ind_prodcode);
-		// purchaseInquiryMouldDetail.setProdCode(product.getCode());
-		// purchaseInquiryMouldDetail.setProdTitle(product.getTitle());
-		// purchaseInquiryMouldDetail.setProdSpec(product.getSpec());
 		purchaseInquiryMouldDetail.setPsCode(this.ind_pscode);
 		purchaseInquiryMouldDetail.setPsName(this.ind_psname);
 		purchaseInquiryMouldDetail.setRemark(this.ind_remark);
@@ -154,8 +152,6 @@ public class InquiryMouldDetail {
 		this.ind_detno = detail.getDetno();
 		this.ind_price = detail.getReply();
 		this.ind_prodcode = detail.getProdCode();
-		// this.ind_proddetail = detail.getProdTitle();
-		// this.ind_prodspec = detail.getProdSpec();
 		this.ind_psname = detail.getPsName();
 		this.ind_pscode = detail.getPsCode();
 		this.ind_remark = detail.getRemark();

+ 16 - 8
src/main/java/com/uas/platform/b2b/erp/service/impl/InquiryMouldServiceImpl.java

@@ -1,13 +1,14 @@
 package com.uas.platform.b2b.erp.service.impl;
 
 import com.alibaba.dubbo.common.utils.CollectionUtils;
-import com.uas.sso.util.AccountUtils;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.InquiryMould;
 import com.uas.platform.b2b.erp.model.InquiryMouldDecide;
 import com.uas.platform.b2b.erp.service.InquiryMouldService;
 import com.uas.platform.b2b.erp.service.VendorService;
 import com.uas.platform.b2b.model.*;
+import com.uas.platform.b2b.ps.ProductUtils;
+import com.uas.platform.b2b.support.CollectionUtil;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.Status;
@@ -16,6 +17,8 @@ import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 @Service
 public class InquiryMouldServiceImpl implements InquiryMouldService {
@@ -41,12 +44,16 @@ public class InquiryMouldServiceImpl implements InquiryMouldService {
 	@Override
 	public List<PurchaseInquiryMould> convertInquiryMould(List<InquiryMould> inquiries) {
 		List<PurchaseInquiryMould> purcMould = new ArrayList<PurchaseInquiryMould>();
-		final String appId = "uas";// 应用来源
+		// 应用来源
+		final String appId = "uas";
 		long enUU = SystemSession.getUser().getEnterprise().getUu();
+        Set<String> codeStr = CollectionUtil.getProductCodeCollection(inquiries);
+        Map<String, ProductInfo> productInfoMap = ProductUtils.findByEnUUAndCodes(enUU, codeStr);
 		for (InquiryMould inquiry : inquiries) {
 			// 先进行判断是否存在
 			List<PurchaseInquiryMould> purcMoulds = purchaseInquiryMouldDao.findByEnuuAndCode(enUU, inquiry.getIn_code());
-			if (purcMoulds.size() == 0) {// 不存在新增数据
+			// 不存在新增数据
+			if (purcMoulds.size() == 0) {
 				PurchaseInquiryMould purchaseInquiryMould = inquiry.convert();
 				// 设置状态为有效
 				Vendor vendor = null;
@@ -62,7 +69,8 @@ public class InquiryMouldServiceImpl implements InquiryMouldService {
 				} else {
 					vendor = addVendor(purchaseInquiryMould);
 					if (null != vendor) {
-						vendorService.addPartnerShipRecord(vendor, appId); // 添加合作伙伴关系
+						// 添加合作伙伴关系
+						vendorService.addPartnerShipRecord(vendor, appId);
 					}
 				}
 				if (vendor != null) {
@@ -70,10 +78,10 @@ public class InquiryMouldServiceImpl implements InquiryMouldService {
 						item.setInquiryMould(purchaseInquiryMould);
 						if (!CollectionUtils.isEmpty(item.getInquiryMouldDetails())) {
 							for (PurchaseInquiryMouldDetail detail : item.getInquiryMouldDetails()) {
-								List<Product> products = productDao.findByEnUUAndCode(enUU, detail.getProdCode());
-								if (!CollectionUtils.isEmpty(products)) {
-									detail.setProdTitle(products.get(0).getTitle());
-									detail.setProdSpec(products.get(0).getSpec());
+								ProductInfo productInfo = productInfoMap.get(detail.getProdCode());
+								if (null != productInfo) {
+									detail.setProdTitle(productInfo.getTitle());
+									detail.setProdSpec(productInfo.getSpec());
 								}
 								detail.setImid(purchaseInquiryMould.getId());
 								detail.setInquiryMouldItem(item);

+ 3 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseInquiryMouldDetail.java

@@ -7,6 +7,9 @@ import javax.persistence.*;
 
 /**
  * 模具物料明细
+ * 
+ * @author hejq
+ * @date 2018-07-24 16:33
  */
 @Entity
 @Table(name = "purc$inquirymoulddetail")

+ 4 - 2
src/main/java/com/uas/platform/b2b/service/impl/BaseInfoServiceImpl.java

@@ -357,7 +357,8 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 	@Override
 	public ModelMap addNewProduct(Product prodInfo, FileUpload uploadItem) throws Exception {
 		ModelMap map = new ModelMap();
-		if (uploadItem.getFile() != null) {// 附件存在
+		// 附件存在
+		if (uploadItem.getFile() != null) {
 			Attach attach = attachService.upload(uploadItem, "productAttach", "平台客户上传物料照片或附件");
 			if (attach == null) {
 				map.put("error", "文件太大");
@@ -376,8 +377,9 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 				List<Component> cmps = componentService.findByCode(prodInfo.getCmpCode());
 				if (!CollectionUtils.isEmpty(cmps)) {
 					for (Component cmp : cmps) {
+                        // 匹配标准
 						if (cmp.getBrand().getNameEn().equals(prodInfo.getBrand())
-								&& cmp.getKind().getNameCn().equals(prodInfo.getTitle())) {// 匹配标准
+								&& cmp.getKind().getNameCn().equals(prodInfo.getTitle())) {
 							prodInfo.setPbrand(cmp.getBrand().getNameCn());
 							prodInfo.setKinden(cmp.getKind().getNameEn());
 							prodInfo.setCmpUuId(cmp.getUuid());