|
|
@@ -1,9 +1,9 @@
|
|
|
package com.uas.ps.inquiry.service.impl;
|
|
|
|
|
|
-import com.uas.ps.inquiry.dao.PublicInquiryItemDao;
|
|
|
-import com.uas.ps.inquiry.dao.PurcInquiryDao;
|
|
|
-import com.uas.ps.inquiry.dao.PurcInquiryItemDao;
|
|
|
-import com.uas.ps.inquiry.dao.PurcInquiryItemInfoDao;
|
|
|
+import com.uas.ps.core.util.CollectionUtils;
|
|
|
+import com.uas.ps.inquiry.dao.*;
|
|
|
+import com.uas.ps.inquiry.entity.InquiryDetailInfo;
|
|
|
+import com.uas.ps.inquiry.entity.InquiryProductInfo;
|
|
|
import com.uas.ps.inquiry.model.*;
|
|
|
import com.uas.ps.inquiry.page.PageInfo;
|
|
|
import com.uas.ps.inquiry.page.SearchFilter;
|
|
|
@@ -23,7 +23,7 @@ import javax.persistence.criteria.CriteriaBuilder;
|
|
|
import javax.persistence.criteria.CriteriaQuery;
|
|
|
import javax.persistence.criteria.Predicate;
|
|
|
import javax.persistence.criteria.Root;
|
|
|
-import java.util.Date;
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* 针对转询价报价单的数据查询操作
|
|
|
@@ -42,6 +42,12 @@ public class InquiryServiceImpl implements InquiryService {
|
|
|
@Autowired
|
|
|
private PurcInquiryDao purcInquiryDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private PublicInquiryDao inquiryDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ProductDao productDao;
|
|
|
+
|
|
|
/**
|
|
|
* 查询公共询价列表信息
|
|
|
*
|
|
|
@@ -100,4 +106,71 @@ public class InquiryServiceImpl implements InquiryService {
|
|
|
item.setAgreed(status);
|
|
|
itemDao.save(item);
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 针对客户,查询供应商报价详情
|
|
|
+ *
|
|
|
+ * @param id 主表id
|
|
|
+ * @param enuu 企业UU
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public InquiryDetailInfo findById(Long id, Long enuu) {
|
|
|
+ PublicInquiry inquiry = inquiryDao.findOne(id);
|
|
|
+ InquiryDetailInfo inquiryInfo = new InquiryDetailInfo();
|
|
|
+ if (inquiry != null) {
|
|
|
+ inquiryInfo.setAttachs(inquiry.getAttachs());
|
|
|
+ inquiryInfo.setAuditor(inquiry.getAuditor());
|
|
|
+ inquiryInfo.setCheck(inquiry.getCheck());
|
|
|
+ inquiryInfo.setCode(inquiry.getCode());
|
|
|
+ inquiryInfo.setDate(inquiry.getDate());
|
|
|
+ inquiryInfo.setEndDate(inquiry.getEndDate());
|
|
|
+ inquiryInfo.setEnterprise(inquiry.getEnterprise());
|
|
|
+ inquiryInfo.setEnUU(inquiry.getEnUU());
|
|
|
+ inquiryInfo.setEnvironment(inquiry.getEnvironment());
|
|
|
+ inquiryInfo.setId(inquiry.getId());
|
|
|
+ inquiryInfo.setIsOpen(inquiry.getIsOpen());
|
|
|
+ inquiryInfo.setOverdue(inquiry.getOverdue());
|
|
|
+ inquiryInfo.setPriceType(inquiry.getPriceType());
|
|
|
+ inquiryInfo.setRecorder(inquiry.getRecorder());
|
|
|
+ inquiryInfo.setRecorderUU(inquiry.getRecorderUU());
|
|
|
+ inquiryInfo.setRemark(inquiry.getRemark());
|
|
|
+ inquiryInfo.setSourceApp(inquiry.getSourceApp());
|
|
|
+ inquiryInfo.setSourceId(inquiry.getSourceId());
|
|
|
+ inquiryInfo.setShip(inquiry.getShip());
|
|
|
+ inquiryInfo.setInvoice(inquiry.getInvoice());
|
|
|
+ inquiryInfo.setInquirytype(inquiry.getInquirytype());
|
|
|
+ Set<Long> ids = new HashSet<Long>();
|
|
|
+ List<Long> idList = new ArrayList<>();
|
|
|
+ Set<InquiryProductInfo> products = new HashSet<InquiryProductInfo>();
|
|
|
+ if (!CollectionUtils.isEmpty(inquiry.getInquiryItems())) {
|
|
|
+ for (PublicInquiryItem item : inquiry.getInquiryItems()) {
|
|
|
+ idList.add(item.getProductId());
|
|
|
+ ids.addAll(idList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!CollectionUtils.isEmpty(ids)) {
|
|
|
+ for (Long idInfo : ids) {
|
|
|
+ InquiryProductInfo productInfo = new InquiryProductInfo();
|
|
|
+ Set<PublicInquiryItem> items = new HashSet<PublicInquiryItem>();
|
|
|
+ Product product = productDao.findOne(idInfo);
|
|
|
+ productInfo.setBrand(product.getBrand());
|
|
|
+ productInfo.setId(product.getId());
|
|
|
+ productInfo.setSpec(product.getSpec());
|
|
|
+ productInfo.setCode(product.getCode());
|
|
|
+ productInfo.setTitle(product.getTitle());
|
|
|
+ productInfo.setUnit(product.getUnit());
|
|
|
+ for (PublicInquiryItem item : inquiry.getInquiryItems()) {
|
|
|
+ if (item.getProductId().equals(idInfo)) {
|
|
|
+ items.add(item);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ productInfo.setInquiryItems(items);
|
|
|
+ products.add(productInfo);
|
|
|
+ inquiryInfo.setProducts(products);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return inquiryInfo;
|
|
|
+ }
|
|
|
}
|