|
|
@@ -1,19 +1,15 @@
|
|
|
package com.uas.platform.b2b.service.impl;
|
|
|
|
|
|
-import com.alibaba.fastjson.JSON;
|
|
|
import com.uas.platform.b2b.dao.*;
|
|
|
import com.uas.platform.b2b.model.*;
|
|
|
import com.uas.platform.b2b.service.AttachService;
|
|
|
import com.uas.platform.b2b.service.PurchaseTenderService;
|
|
|
import com.uas.platform.b2b.support.SystemSession;
|
|
|
import com.uas.platform.core.model.Constant;
|
|
|
-import com.uas.platform.core.model.PageInfo;
|
|
|
-import org.apache.commons.collections.CollectionUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.data.domain.Page;
|
|
|
import org.springframework.data.jpa.domain.Specification;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.ui.ModelMap;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import javax.persistence.criteria.CriteriaBuilder;
|
|
|
import javax.persistence.criteria.CriteriaQuery;
|
|
|
@@ -31,7 +27,13 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
|
|
|
private PurchaseTenderDao purchaseTenderDao;
|
|
|
|
|
|
@Autowired
|
|
|
- private PurchaseTenderItemDao purchaseTenderItemDao;
|
|
|
+ private PurchaseTenderProdDao purchaseTenderProdDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SaleTenderDao saleTenderDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SaleTenderItemDao saleTenderItemDao;
|
|
|
|
|
|
@Autowired
|
|
|
private AttachDao attachDao;
|
|
|
@@ -54,9 +56,10 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
|
|
|
@Override
|
|
|
public void save(PurchaseTender tender, List<Enterprise> enterprises) {
|
|
|
tender.setIsPublish(Constant.NO);
|
|
|
- tender.setStatus("在录入");
|
|
|
+ tender.setStatus("待发布");
|
|
|
+ tender.setEnUU(SystemSession.getUser().getEnterprise().getUu());
|
|
|
tender.setEnterprise(SystemSession.getUser().getEnterprise());
|
|
|
- purchaseTenderItemDao.save(saveTenderItem(tender, enterprises));
|
|
|
+ saveTenderItem(tender, enterprises);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -69,182 +72,219 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
|
|
|
public void publish(PurchaseTender tender, List<Enterprise> enterprises) {
|
|
|
tender.setIsPublish(Constant.YES);
|
|
|
tender.setStatus("待投标");
|
|
|
+ tender.setEnUU(SystemSession.getUser().getEnterprise().getUu());
|
|
|
tender.setEnterprise(SystemSession.getUser().getEnterprise());
|
|
|
- purchaseTenderItemDao.save(saveTenderItem(tender, enterprises));
|
|
|
+ saveTenderItem(tender, enterprises);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void saveTenderItem (PurchaseTender tender, List<Enterprise> enterprises) {
|
|
|
+// List<SaleTenderItem> saleTenderItems = new ArrayList<>();
|
|
|
+ Set<PurchaseTenderProd> tenderProds = tender.getPurchaseTenderProds();
|
|
|
+ for (PurchaseTenderProd tenderProd : tenderProds) {
|
|
|
+ tenderProd.setTender(tender);
|
|
|
+ purchaseTenderProdDao.save(tenderProd);
|
|
|
+ for (Enterprise enterprise : enterprises) {
|
|
|
+ EnterpriseBaseInfo enBaseInfo = enterpriseBaseInfoDao.findOne(enterprise.getUu());
|
|
|
+ if (null == enBaseInfo) {
|
|
|
+ enBaseInfo = new EnterpriseBaseInfo(enterprise.getUu(), enterprise.getEnBussinessCode(), enterprise.getEnName(), enterprise.getEnAddress());
|
|
|
+ }
|
|
|
+ SaleTenderItem tenderItem = new SaleTenderItem();
|
|
|
+ // 找不到投标单主表才新建一个
|
|
|
+ if (tender.getEnUU() != null && enBaseInfo.getUu() != null && tender.getCode() != null) {
|
|
|
+ SaleTender saleTender = saleTenderDao.findByEnUUAndVendUUAndCode(tender.getEnUU(), enBaseInfo.getUu(), tender.getCode());
|
|
|
+ if (null == saleTender) {
|
|
|
+ saleTender = new SaleTender(tender);
|
|
|
+ saleTender.setVendUU(enBaseInfo.getUu());
|
|
|
+ saleTender.setEnterpriseBaseInfo(enBaseInfo); // 投标单主表构造完毕
|
|
|
+ saleTenderDao.save(saleTender);
|
|
|
+ }
|
|
|
+ tenderItem.setSaleTender(saleTender);
|
|
|
+ }
|
|
|
+ tenderItem.setTenderProd(tenderProd);
|
|
|
+ saleTenderItemDao.save(tenderItem);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void publishOpen(PurchaseTender tender) {
|
|
|
tender.setIsPublish(Constant.YES);
|
|
|
tender.setStatus("待投标");
|
|
|
- tender.setEnterprise(SystemSession.getUser().getEnterprise());
|
|
|
+ tender.setEnUU(SystemSession.getUser().getEnterprise().getUu());
|
|
|
purchaseTenderDao.save(tender);
|
|
|
+ Set<PurchaseTenderProd> tenderProds = tender.getPurchaseTenderProds();
|
|
|
+ for (PurchaseTenderProd tenderProd : tenderProds) {
|
|
|
+ tenderProd.setTender(tender);
|
|
|
+ purchaseTenderProdDao.save(tenderProd);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void saveOpen(PurchaseTender tender) {
|
|
|
tender.setIsPublish(Constant.NO);
|
|
|
tender.setStatus("待发布");
|
|
|
- tender.setEnterprise(SystemSession.getUser().getEnterprise());
|
|
|
+ tender.setEnUU(SystemSession.getUser().getEnterprise().getUu());
|
|
|
purchaseTenderDao.save(tender);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public ModelMap addTenderAttaches(PurchaseTender purchaseTender, FileUpload uploadItem) {
|
|
|
- ModelMap map = new ModelMap();
|
|
|
- Set<Attach> attaches = new HashSet<>();
|
|
|
- if (uploadItem.getFile() != null) {// 附件存在
|
|
|
- Attach attach = attachService.upload(uploadItem, "tenderAttachs", "招标附件");
|
|
|
- if (attach == null) {
|
|
|
- map.put("error", "文件太大");
|
|
|
- } else {
|
|
|
- attach.setRelativeTable("purc$tender");
|
|
|
- attaches.add(attach);
|
|
|
-// purchaseTender = purchaseTenderDao.save(purchaseTender);
|
|
|
- }
|
|
|
+ public Attach addTenderAttaches(FileUpload uploadItem) throws Exception{
|
|
|
+ if (uploadItem.getFile() == null) {
|
|
|
+ throw new Exception("没有附件");
|
|
|
}
|
|
|
- List<PurchaseTender> tenders = purchaseTenderDao.findByCode(purchaseTender.getCode());
|
|
|
- PurchaseTender tender = tenders.get(0);
|
|
|
- tender.setTenderAttaches(attaches);
|
|
|
- System.out.println("tender attach impl" + JSON.toJSONString(tender));
|
|
|
- attachDao.save(attaches);
|
|
|
- tender = purchaseTenderDao.save(tender);
|
|
|
- if (!CollectionUtils.isEmpty(tenders)) {
|
|
|
- map.put("id", tender.getId());
|
|
|
- map.put("success", "招标附件上传成功");
|
|
|
+ Attach attach = attachService.upload(uploadItem, "purchaseTenderAttaches", "招标附件");
|
|
|
+ if (attach == null) {
|
|
|
+ throw new Exception("文件太大");
|
|
|
}
|
|
|
- return map;
|
|
|
+ return attachDao.save(attach);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public ModelMap addTenderItemAttaches(PurchaseTenderItem item, FileUpload uploadItem) {
|
|
|
- ModelMap map = new ModelMap();
|
|
|
- Set<Attach> attaches = new HashSet<>();
|
|
|
- if (uploadItem.getFile() != null) {// 附件存在
|
|
|
- Attach attach = attachService.upload(uploadItem, "tenderItemAttachs", "投标附件");
|
|
|
- if (attach == null) {
|
|
|
- map.put("error", "文件太大");
|
|
|
- } else {
|
|
|
- attach.setRelativeTable("purc$tenderitem");
|
|
|
- attaches.add(attach);
|
|
|
-// purchaseTender = purchaseTenderDao.save(purchaseTender);
|
|
|
- }
|
|
|
+ public Attach addTenderItemAttaches(FileUpload uploadItem) throws Exception{
|
|
|
+ if (uploadItem.getFile() == null) {
|
|
|
+ throw new Exception("没有附件");
|
|
|
}
|
|
|
- List<PurchaseTender> tenders = purchaseTenderDao.findByCode(item.getCode());
|
|
|
- PurchaseTenderItem purchaseTenderItem = new PurchaseTenderItem();
|
|
|
- Set<PurchaseTenderItem> tenderItems = tenders.get(0).getPurchaseTenderItems();
|
|
|
- for (PurchaseTenderItem tenderItem: tenderItems) {
|
|
|
- if (tenderItem.getEnterpriseBaseInfo().getUu().intValue() == SystemSession.getUser().getEnterprise().getUu().intValue()) {
|
|
|
- purchaseTenderItem = purchaseTenderItemDao.findOne(tenderItem.getId());
|
|
|
- }
|
|
|
+ Attach attach = attachService.upload(uploadItem, "saleTenderAttaches", "投标附件");
|
|
|
+ if (attach == null) {
|
|
|
+ throw new Exception("文件太大");
|
|
|
}
|
|
|
- purchaseTenderItem.setBidAttaches(attaches);
|
|
|
- purchaseTenderItem.setTender(tenders.get(0));
|
|
|
- System.out.println("tenderItem attach impl" + JSON.toJSONString(purchaseTenderItem));
|
|
|
- attachDao.save(attaches);
|
|
|
- purchaseTenderItem = purchaseTenderItemDao.save(purchaseTenderItem);
|
|
|
- map.put("id", purchaseTenderItem.getId());
|
|
|
- map.put("success", "投标附件上传成功");
|
|
|
- return map;
|
|
|
+ return attachDao.save(attach);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Page<PurchaseTender> findAllByPageInfo(final PageInfo pageInfo) {
|
|
|
- List<PurchaseTenderItem> tenderItems = purchaseTenderItemDao.findAll(new Specification<PurchaseTenderItem>() {
|
|
|
+ public List<PurchaseTender> findAll() {
|
|
|
+ List<SaleTender> saleTenders = saleTenderDao.findAll(new Specification<SaleTender>() {
|
|
|
@Override
|
|
|
- public Predicate toPredicate(Root<PurchaseTenderItem> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
|
|
|
+ public Predicate toPredicate(Root<SaleTender> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
|
|
|
Predicate myTender = cb.equal(root.get("enterpriseBaseInfo").get("uu"), SystemSession.getUser().getEnterprise().getUu());
|
|
|
query.where(myTender);
|
|
|
return query.getRestriction();
|
|
|
}
|
|
|
});
|
|
|
- final Set<Long> ids = new HashSet<>();
|
|
|
- for (PurchaseTenderItem tenderItem : tenderItems) {
|
|
|
- ids.add(tenderItem.getTender().getId());
|
|
|
- }
|
|
|
- return purchaseTenderDao.findAll(new Specification<PurchaseTender>() {
|
|
|
-
|
|
|
- public Predicate toPredicate(Root<PurchaseTender> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
|
|
|
- Predicate p1 = root.get("id").in(ids.toArray());
|
|
|
- Predicate p2 = builder.equal(root.get("isPublish"), Constant.YES);
|
|
|
- Predicate p3 = builder.equal(root.get("ifOpen"), Constant.NO);
|
|
|
- Predicate p = builder.and(p1,builder.and(p2,p3));
|
|
|
- query.where(p);
|
|
|
- return null;
|
|
|
+ List<PurchaseTender> tenderList = new ArrayList<>();
|
|
|
+ for (SaleTender saleTender : saleTenders) {
|
|
|
+ PurchaseTender purchaseTender = purchaseTenderDao.findByEnUUAndCode(saleTender.getEnUU(), saleTender.getCode());
|
|
|
+ if (purchaseTender.getIfOpen() == Constant.NO && purchaseTender.getIsPublish() == Constant.YES) {
|
|
|
+ tenderList.add(purchaseTender);
|
|
|
}
|
|
|
- }, pageInfo);
|
|
|
+ }
|
|
|
+ return tenderList;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Page<PurchaseTender> findOpenByPageInfo(final PageInfo pageInfo) {
|
|
|
+ public List<PurchaseTender> findOpen() {
|
|
|
return purchaseTenderDao.findAll(new Specification<PurchaseTender>() {
|
|
|
|
|
|
public Predicate toPredicate(Root<PurchaseTender> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
|
|
|
Predicate p1 = builder.equal(root.get("ifOpen"), Constant.YES);
|
|
|
Predicate p2 = builder.equal(root.get("isPublish"), Constant.YES);
|
|
|
- Predicate predicate = builder.and(p1,p2);
|
|
|
+ Predicate p3 = builder.notEqual(root.get("enUU"), SystemSession.getUser().getEnterprise().getUu());
|
|
|
+ Predicate predicate = builder.and(p1,p2,p3);
|
|
|
query.where(predicate);
|
|
|
return null;
|
|
|
}
|
|
|
- }, pageInfo);
|
|
|
+ });
|
|
|
}
|
|
|
|
|
|
- private List<PurchaseTenderItem> saveTenderItem (PurchaseTender tender, List<Enterprise> enterprises) {
|
|
|
- List<PurchaseTenderItem> tenderItems = new ArrayList<>();
|
|
|
- for (Enterprise enterprise: enterprises) {
|
|
|
- PurchaseTenderItem tenderItem = new PurchaseTenderItem();
|
|
|
- tenderItem.setTender(tender);
|
|
|
- tenderItem.setCode(tender.getCode());
|
|
|
- EnterpriseBaseInfo enBaseInfo = enterpriseBaseInfoDao.findOne(enterprise.getUu());
|
|
|
- if (null == enBaseInfo) {
|
|
|
- enBaseInfo = new EnterpriseBaseInfo(enterprise.getUu(),enterprise.getEnBussinessCode(),enterprise.getEnName(),enterprise.getEnAddress());
|
|
|
- }
|
|
|
- tenderItem.setEnterpriseBaseInfo(enBaseInfo);
|
|
|
- tenderItem.setStatus(enBaseInfo.getUu() + "待投标");
|
|
|
+ @Override
|
|
|
+ public void delete(Long id) {
|
|
|
+ PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
+ if (null != tender) {
|
|
|
+ purchaseTenderDao.delete(tender);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void publishSaved(Long id) {
|
|
|
+ PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
+ if (null != tender) {
|
|
|
+ tender.setIsPublish(Constant.YES);
|
|
|
purchaseTenderDao.save(tender);
|
|
|
- tenderItems.add(tenderItem);
|
|
|
}
|
|
|
- return tenderItems;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void deleteAttach(Long attachId) {
|
|
|
+ Attach attach = attachDao.findOne(attachId);
|
|
|
+ if (attach != null) {
|
|
|
+ attachDao.delete(attach);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
|
|
|
- /**
|
|
|
- * 投标
|
|
|
- *
|
|
|
- * @param item
|
|
|
- * @return
|
|
|
- */
|
|
|
@Override
|
|
|
- public PurchaseTenderItem reply(PurchaseTender tender, PurchaseTenderItem item) {
|
|
|
- PurchaseTender purchaseTender = purchaseTenderDao.findOne(tender.getId());
|
|
|
- purchaseTender.setStatus("待评标");
|
|
|
- purchaseTender.setModified(new Date());
|
|
|
- purchaseTenderDao.save(purchaseTender);
|
|
|
-// enterpriseBaseInfoDao.save(item.getEnterpriseBaseInfo());
|
|
|
- PurchaseTenderItem tenderItem = purchaseTenderItemDao.findOne(item.getId());
|
|
|
- tenderItem.setEnterpriseBaseInfo(item.getEnterpriseBaseInfo());
|
|
|
- tenderItem.setPrice(item.getPrice());
|
|
|
- tenderItem.setTaxrate(item.getTaxrate());
|
|
|
- tenderItem.setStatus(item.getEnterpriseBaseInfo().getUu() + "已投标");
|
|
|
- System.out.println("reply impl" + JSON.toJSONString(tenderItem));
|
|
|
- return purchaseTenderItemDao.save(tenderItem);
|
|
|
+ public PurchaseTender findById(Long id) {
|
|
|
+ PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
+ if (tender.getIfOpen() == Constant.NO){ // 如果是指定供应商投标,直接返回查找结果
|
|
|
+ return tender;
|
|
|
+ }
|
|
|
+ for (PurchaseTenderProd tenderProd : tender.getPurchaseTenderProds()) {
|
|
|
+ Long vendUU = SystemSession.getUser().getEnterprise().getUu();
|
|
|
+ EnterpriseBaseInfo enBaseInfo = enterpriseBaseInfoDao.findOne(vendUU);
|
|
|
+ if (null == enBaseInfo) {
|
|
|
+ Enterprise enterprise = enterpriseDao.findOne(vendUU);
|
|
|
+ enBaseInfo = new EnterpriseBaseInfo(enterprise.getUu(), enterprise.getEnBussinessCode(), enterprise.getEnName(), enterprise.getEnAddress());
|
|
|
+ }
|
|
|
+ SaleTenderItem tenderItem = new SaleTenderItem();
|
|
|
+ // 找不到投标单主表才新建一个
|
|
|
+ SaleTender saleTender = saleTenderDao.findByEnUUAndVendUUAndCode(tender.getEnterprise().getUu(), enBaseInfo.getUu(), tender.getCode());
|
|
|
+ if (null == saleTender) {
|
|
|
+ saleTender = new SaleTender(tender);
|
|
|
+ saleTender.setVendUU(enBaseInfo.getUu()); // 投标单主表构造完毕
|
|
|
+ saleTenderDao.save(saleTender);
|
|
|
+ }
|
|
|
+ tenderItem.setSaleTender(saleTender);
|
|
|
+ tenderItem.setTenderProd(tenderProd);
|
|
|
+ saleTenderItemDao.saveAndFlush(tenderItem);
|
|
|
+ }
|
|
|
+ return tender;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
- * 根据id获取投标单(供应商进入投标)
|
|
|
+ * 投标
|
|
|
*
|
|
|
- * @param id
|
|
|
+ *
|
|
|
+ * @param tenderItems
|
|
|
+ * @param enBaseInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public PurchaseTenderItem findByItemId(Long id) {
|
|
|
- PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
- tender.setModified(new Date());
|
|
|
- Long enUU = SystemSession.getUser().getEnterprise().getUu();
|
|
|
- return returnPurchaseTenderItem(tender, enUU);
|
|
|
+ public void reply(List<SaleTenderItem> tenderItems, EnterpriseBaseInfo enBaseInfo, List<Attach> attaches) {
|
|
|
+ enterpriseBaseInfoDao.save(enBaseInfo);
|
|
|
+ SaleTender saleTender = tenderItems.get(0).getSaleTender();
|
|
|
+ Set<Attach> attachSet = new HashSet<>();
|
|
|
+ if (!CollectionUtils.isEmpty(attaches)) {
|
|
|
+ attachSet.addAll(attaches);
|
|
|
+ saleTender.setBidAttaches(attachSet);
|
|
|
+ saleTenderDao.save(saleTender);
|
|
|
+ }
|
|
|
+ for (SaleTenderItem tenderItem : tenderItems) {
|
|
|
+ SaleTenderItem saleTenderItem = saleTenderItemDao.findOne(tenderItem.getId());
|
|
|
+ // 需要修改见索引主表中的字段来触发索引更新
|
|
|
+ saleTenderItem.getTenderProd().getTender().setModified(new Date());
|
|
|
+ saleTenderItem.setPrice(tenderItem.getPrice());
|
|
|
+ saleTenderItem.setTaxrate(tenderItem.getTaxrate());
|
|
|
+ saleTenderItem.setCycle(tenderItem.getCycle());
|
|
|
+ saleTenderItemDao.save(saleTenderItem);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+// /**
|
|
|
+// * 根据id获取投标单(供应商进入投标)
|
|
|
+// *
|
|
|
+// * @param id
|
|
|
+// * @return
|
|
|
+// */
|
|
|
+// @Override
|
|
|
+// public SaleTender findByItemId(Long id) {
|
|
|
+// PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
+// tender.setModified(new Date());
|
|
|
+// Long enUU = SystemSession.getUser().getEnterprise().getUu();
|
|
|
+// return returnPurchaseTenderItem(tender, enUU);
|
|
|
+// }
|
|
|
+
|
|
|
/**
|
|
|
* 根据id和供应商uu获取投标单(采购方查看投标单)
|
|
|
*
|
|
|
@@ -252,47 +292,48 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public PurchaseTenderItem findByEnUUAndId(Long enUU, Long id) {
|
|
|
+ public SaleTender findByEnUUAndId(Long enUU, Long id) {
|
|
|
PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
return returnPurchaseTenderItem(tender, enUU);
|
|
|
}
|
|
|
|
|
|
- private PurchaseTenderItem returnPurchaseTenderItem(PurchaseTender tender, Long enUU) {
|
|
|
- PurchaseTenderItem tenderItem = new PurchaseTenderItem();
|
|
|
- if (!CollectionUtils.isEmpty(tender.getPurchaseTenderItems())) {
|
|
|
- Set<PurchaseTenderItem> tenderItems = tender.getPurchaseTenderItems();
|
|
|
- for (PurchaseTenderItem item : tenderItems) {
|
|
|
- if (null != item.getEnterpriseBaseInfo()) {
|
|
|
- if (item.getEnterpriseBaseInfo().getUu().intValue() == enUU.intValue()) {
|
|
|
- item.setTender(tender);
|
|
|
-// item.setStatus(enUU + "待投标");
|
|
|
- return item;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // 如果不存在就新建一个投标单。
|
|
|
- tenderItem.setTender(tender);
|
|
|
- tenderItem.setCode(tender.getCode());
|
|
|
- EnterpriseBaseInfo enBaseInfo = enterpriseBaseInfoDao.findOne(enUU);
|
|
|
- if (null == enBaseInfo) {
|
|
|
- Enterprise enterprise = enterpriseDao.findOne(enUU);
|
|
|
- if (null != enterprise) {
|
|
|
- enBaseInfo = new EnterpriseBaseInfo(enterprise.getUu(),enterprise.getEnBussinessCode(),enterprise.getEnName(),enterprise.getEnAddress());
|
|
|
- }
|
|
|
- }
|
|
|
- tenderItem.setEnterpriseBaseInfo(enBaseInfo);
|
|
|
- tenderItem.setStatus(enUU + "待投标");
|
|
|
- System.out.println("getItem impl tender" + JSON.toJSONString(tender));
|
|
|
- System.out.println("getItem impl tenderItem" + JSON.toJSONString(tenderItem));
|
|
|
- Set<PurchaseTenderItem> items = new HashSet<>();
|
|
|
- if (!CollectionUtils.isEmpty(tender.getPurchaseTenderItems())) {
|
|
|
- items = tender.getPurchaseTenderItems();
|
|
|
- }
|
|
|
- items.add(tenderItem);
|
|
|
- tender.setPurchaseTenderItems(items);
|
|
|
- purchaseTenderDao.save(tender);
|
|
|
- return tenderItem;
|
|
|
+ private SaleTender returnPurchaseTenderItem(PurchaseTender tender, Long enUU) {
|
|
|
+// SaleTender tenderItem = new SaleTender();
|
|
|
+// if (!CollectionUtils.isEmpty(tender.getPurchaseTenderItems())) {
|
|
|
+// Set<SaleTender> tenderItems = tender.getPurchaseTenderItems();
|
|
|
+// for (SaleTender item : tenderItems) {
|
|
|
+// if (null != item.getEnterpriseBaseInfo()) {
|
|
|
+// if (item.getEnterpriseBaseInfo().getUu().intValue() == enUU.intValue()) {
|
|
|
+// item.setTender(tender);
|
|
|
+//// item.setStatus(enUU + "待投标");
|
|
|
+// return item;
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// // 如果不存在就新建一个投标单。
|
|
|
+// tenderItem.setTender(tender);
|
|
|
+// tenderItem.setCode(tender.getCode());
|
|
|
+// EnterpriseBaseInfo enBaseInfo = enterpriseBaseInfoDao.findOne(enUU);
|
|
|
+// if (null == enBaseInfo) {
|
|
|
+// Enterprise enterprise = enterpriseDao.findOne(enUU);
|
|
|
+// if (null != enterprise) {
|
|
|
+// enBaseInfo = new EnterpriseBaseInfo(enterprise.getUu(),enterprise.getEnBussinessCode(),enterprise.getEnName(),enterprise.getEnAddress());
|
|
|
+// }
|
|
|
+// }
|
|
|
+// tenderItem.setEnterpriseBaseInfo(enBaseInfo);
|
|
|
+// tenderItem.setStatus(enUU + "待投标");
|
|
|
+// System.out.println("getItem impl tender" + JSON.toJSONString(tender));
|
|
|
+// System.out.println("getItem impl tenderItem" + JSON.toJSONString(tenderItem));
|
|
|
+// Set<SaleTender> items = new HashSet<>();
|
|
|
+// if (!CollectionUtils.isEmpty(tender.getPurchaseTenderItems())) {
|
|
|
+// items = tender.getPurchaseTenderItems();
|
|
|
+// }
|
|
|
+// items.add(tenderItem);
|
|
|
+// tender.setPurchaseTenderItems(items);
|
|
|
+// purchaseTenderDao.save(tender);
|
|
|
+// return tenderItem;
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -302,32 +343,30 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
- public PurchaseTender decide(PurchaseTender purchaseTender) {
|
|
|
- System.out.println("decide impl" + JSON.toJSONString(purchaseTender));
|
|
|
+ public void decide(PurchaseTender purchaseTender) {
|
|
|
purchaseTender.setStatus("已结标");
|
|
|
- for (PurchaseTenderItem tenderItem : purchaseTender.getPurchaseTenderItems()) {
|
|
|
- tenderItem.setTender(purchaseTender);
|
|
|
- purchaseTenderItemDao.save(tenderItem);
|
|
|
+ purchaseTenderDao.save(purchaseTender);
|
|
|
+ for (PurchaseTenderProd tenderProd : purchaseTender.getPurchaseTenderProds()) {
|
|
|
+ tenderProd.setTender(purchaseTender);
|
|
|
+ for (SaleTenderItem tenderItem : tenderProd.getSaleTenderItems()) {
|
|
|
+ tenderItem.setTenderProd(tenderProd);
|
|
|
+ saleTenderItemDao.save(tenderItem);
|
|
|
+ }
|
|
|
}
|
|
|
- return purchaseTenderDao.save(purchaseTender);
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public PurchaseTender findById(Long id) {
|
|
|
- return purchaseTenderDao.findOne(id);
|
|
|
- }
|
|
|
|
|
|
- @Override
|
|
|
- public List<PurchaseTenderItem> getItemsByTenderId(Long id) {
|
|
|
- System.out.println("enter impl getItemsByTenderId");
|
|
|
- PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
- List<PurchaseTenderItem> tenderItems = new ArrayList<>();
|
|
|
- for (PurchaseTenderItem tenderItem : tender.getPurchaseTenderItems()) {
|
|
|
- tenderItems.add(tenderItem);
|
|
|
- }
|
|
|
- System.out.println("getItemsByTenderId" + JSON.toJSONString(tenderItems));
|
|
|
- return tenderItems;
|
|
|
- }
|
|
|
+// @Override
|
|
|
+// public List<SaleTender> getItemsByTenderId(Long id) {
|
|
|
+// System.out.println("enter impl getItemsByTenderId");
|
|
|
+// PurchaseTender tender = purchaseTenderDao.findOne(id);
|
|
|
+// List<SaleTender> tenderItems = new ArrayList<>();
|
|
|
+// for (SaleTender tenderItem : tender.getPurchaseTenderItems()) {
|
|
|
+// tenderItems.add(tenderItem);
|
|
|
+// }
|
|
|
+// System.out.println("getItemsByTenderId" + JSON.toJSONString(tenderItems));
|
|
|
+// return tenderItems;
|
|
|
+// }
|
|
|
|
|
|
|
|
|
}
|