瀏覽代碼

查询语句用java8语法打包时报错,改为java7语法

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@8545 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
dongbw 9 年之前
父節點
當前提交
dcd2a5edac
共有 1 個文件被更改,包括 24 次插入18 次删除
  1. 24 18
      src/main/java/com/uas/platform/b2b/service/impl/PurchaseTenderServiceImpl.java

+ 24 - 18
src/main/java/com/uas/platform/b2b/service/impl/PurchaseTenderServiceImpl.java

@@ -15,11 +15,15 @@ import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 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;
 import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
 import java.util.*;
 
 /**
@@ -185,11 +189,14 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
 
     @Override
     public List<PurchaseTender> findAll() {
-        List<SaleTender> saleTenders = saleTenderDao.findAll((root, query, cb) -> {
-            // 根据供应商企业uu为本企业uu筛选
-            Predicate myTender = cb.equal(root.get("enterpriseBaseInfo").get("uu"), SystemSession.getUser().getEnterprise().getUu());
-            query.where(myTender);
-            return query.getRestriction();
+        List<SaleTender> saleTenders = saleTenderDao.findAll(new Specification<SaleTender>() {
+            @Override
+            public Predicate toPredicate(Root<SaleTender> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+                // 根据供应商企业uu为本企业uu筛选
+                Predicate myTender = cb.equal(root.get("enterpriseBaseInfo").get("uu"), SystemSession.getUser().getEnterprise().getUu());
+                query.where(myTender);
+                return query.getRestriction();
+            }
         });
         List<PurchaseTender> tenderList = new ArrayList<>();
         for (SaleTender saleTender : saleTenders) {
@@ -204,15 +211,18 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
 
     @Override
     public Page<PurchaseTender> findOpen(PageInfo info) {
-        return purchaseTenderDao.findAll((root, query, builder) -> {
-            Predicate p1 = builder.equal(root.get("ifOpen"), Constant.YES);
-            Predicate p2 = builder.equal(root.get("isPublish"), Constant.YES);
-            Predicate p3 = builder.notEqual(root.get("enUU"), SystemSession.getUser().getEnterprise().getUu());
-            Predicate p4 = builder.equal(root.get("overdue"), Constant.NO);
+        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 p3 = builder.notEqual(root.get("enUU"), SystemSession.getUser().getEnterprise().getUu());
+                Predicate p4 = builder.equal(root.get("overdue"), Constant.NO);
 //                Predicate p5 = builder.equal(root.get("status"), "待投标"); // 只要有人投标就变成了待评标
-            Predicate predicate = builder.and(p1, p2, p3, p4);
-            query.where(predicate);
-            return null;
+                Predicate predicate = builder.and(p1, p2, p3, p4);
+                query.where(predicate);
+                return null;
+            }
         }, info);
     }
 
@@ -555,7 +565,7 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
         enterpriseBaseInfoDao.save(enBaseInfo);
         SaleTenderItem item = saleTenderItemDao.findOne(tenderItems.get(0).getId());
         SaleTender saleTender = item.getSaleTender();
-        saleTender.setStatus("待评标");
+        saleTender.setStatus("已投标");
         saleTender.setModified(new Date());
         Set<Attach> attachSet = new HashSet<>();
         attachSet.addAll(attaches);
@@ -592,10 +602,6 @@ public class PurchaseTenderServiceImpl implements PurchaseTenderService {
                     tenderItem = saleTenderItemDao.findOne(tenderItem.getId());
                     tenderItem.getSaleTender().setStatus("已结标");
                     saleTenders.add(tenderItem.getSaleTender());
-                } else if (!"已结标".equals(tenderItem.getSaleTender().getStatus()) && !"流标".equals(tenderItem.getSaleTender().getStatus())) {
-                    tenderItem = saleTenderItemDao.findOne(tenderItem.getId());
-                    tenderItem.getSaleTender().setStatus("流标");
-                    saleTenders.add(tenderItem.getSaleTender());
                 }
             }
         }