Jelajahi Sumber

Merge remote-tracking branch 'origin/dev' into dev

liusw 8 tahun lalu
induk
melakukan
1a73aaff7e

+ 4 - 2
src/main/java/com/uas/ps/inquiry/controller/InquiryForBuyerController.java

@@ -103,10 +103,12 @@ public class InquiryForBuyerController {
      *
      * @param pageInfo 分页参数
      * @param searchFilter 过滤条件
+     * @param state 过滤状态
+     * @param overdue 是否过期 1、过期;0、 未过期
      * @return
      */
     @RequestMapping(value = "/list", method = RequestMethod.GET)
-    public Page<PurcInquiryItemInfo> getInquiryList(PageInfo pageInfo, SearchFilter searchFilter, String state) {
+    public Page<PurcInquiryItemInfo> getInquiryList(PageInfo pageInfo, SearchFilter searchFilter, String state, Integer overdue) {
         Sort sort = new Sort(Sort.Direction.DESC, "date");
         pageInfo.setSort(sort);
         if (null != searchFilter.getUserUU()) {
@@ -116,7 +118,7 @@ public class InquiryForBuyerController {
         } else {
             throw new IllegalAccessError("非法访问");
         }
-        return inquiryService.findTodoByPageInfo(pageInfo, searchFilter, state);
+        return inquiryService.findTodoByPageInfo(pageInfo, searchFilter, state, overdue);
     }
 
     /**

+ 13 - 0
src/main/java/com/uas/ps/inquiry/model/PublicInquiryItem.java

@@ -409,6 +409,12 @@ public class PublicInquiryItem implements Serializable {
      * ******end*******
      */
 
+	/**
+	 * 剩余时间
+	 */
+	@Transient
+	private Long remainingTime;
+
 	public Long getId() {
 		return id;
 	}
@@ -876,6 +882,13 @@ public class PublicInquiryItem implements Serializable {
         this.inbrand = inbrand;
     }
 
+	public Long getRemainingTime() {
+		if (null != endDate) {
+			return endDate.getTime() - System.currentTimeMillis();
+		}
+		return null;
+	}
+
     /**
 	 * 将公共询价单转成报价单
 	 *

+ 13 - 0
src/main/java/com/uas/ps/inquiry/model/PublicInquiryItemInfo.java

@@ -390,6 +390,12 @@ public class PublicInquiryItemInfo implements Serializable {
      * ******end*******
      */
 
+    /**
+     * 剩余时间
+     */
+    @Transient
+    private Long remainingTime;
+
 	public Long getId() {
 		return id;
 	}
@@ -839,6 +845,13 @@ public class PublicInquiryItemInfo implements Serializable {
         this.inbrand = inbrand;
     }
 
+    public Long getRemainingTime() {
+        if (null != endDate) {
+            return endDate.getTime() - System.currentTimeMillis();
+        }
+        return null;
+    }
+
 	@Override
 	public String toString() {
 		return "PublicInquiryItemInfo{" +

+ 2 - 1
src/main/java/com/uas/ps/inquiry/service/InquiryService.java

@@ -19,9 +19,10 @@ public interface InquiryService {
      * @param info 分页新
      * @param filter 过滤条件
      * @param state 过滤状态
+     * @param overdue 是否过期
      * @return
      */
-    Page<PurcInquiryItemInfo> findTodoByPageInfo(PageInfo info, SearchFilter filter, String state);
+    Page<PurcInquiryItemInfo> findTodoByPageInfo(PageInfo info, SearchFilter filter, String state, Integer overdue);
 
     /**
      * 保存公共询价

+ 4 - 1
src/main/java/com/uas/ps/inquiry/service/impl/InquiryForSaleServiceImpl.java

@@ -192,7 +192,10 @@ public class InquiryForSaleServiceImpl implements InquiryForSaleService {
         }
         if (null != inquiryItem) {
             Enterprise enterprise = enterpriseDao.findOne(inquiryItem.getVendUU());
-            if (inquiryItem.getProdCode() == null && inquiryItem.getProduct() != null) {
+            if (null != inquiryItem.getProduct()) {
+                inquiryItem.setProdTitle(inquiryItem.getProduct().getTitle());
+                inquiryItem.setSpec(inquiryItem.getProduct().getSpec());
+                inquiryItem.setInbrand(inquiryItem.getProduct().getBrand());
                 inquiryItem.setProdCode(inquiryItem.getProduct().getCode());
             }
             inquiryItem.setVendName(enterprise.getEnName());

+ 13 - 3
src/main/java/com/uas/ps/inquiry/service/impl/InquiryServiceImpl.java

@@ -61,10 +61,11 @@ public class InquiryServiceImpl implements InquiryService {
      * @param info 分页新
      * @param filter 过滤条件
      * @param state 过滤状态
+     * @param overdue 是否过期 1、已过期;0、未过期
      * @return
      */
     @Override
-    public Page<PurcInquiryItemInfo> findTodoByPageInfo(final PageInfo info, SearchFilter filter, String state) {
+    public Page<PurcInquiryItemInfo> findTodoByPageInfo(final PageInfo info, SearchFilter filter, String state, Integer overdue) {
         if (null != filter) {
             if (StringUtils.hasText(filter.getKeyword())) {
                 SimpleExpression cmpCode = new SimpleExpression("cmpCode", filter.getKeyword(), CriterionExpression.Operator.LIKE);
@@ -104,6 +105,15 @@ public class InquiryServiceImpl implements InquiryService {
                 info.expression(logicalExpression);
             }
         }
+        if (null != overdue) {
+            // 已超过截止日期
+            if (overdue.equals(Constant.YES)) {
+                SimpleExpression date = new SimpleExpression("endDate", new Date(System.currentTimeMillis()), CriterionExpression.Operator.LT);
+                SimpleExpression[] simpleExpressions = new SimpleExpression[]{date};
+                LogicalExpression logicalExpression = PredicateUtils.and(simpleExpressions);
+                info.expression(logicalExpression);
+            }
+        }
         return inquiryItemDao.findAll(new Specification<PurcInquiryItemInfo>() {
             public Predicate toPredicate(Root<PurcInquiryItemInfo> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
                 query.where(info.getPredicates(root, query, builder));
@@ -128,16 +138,16 @@ public class InquiryServiceImpl implements InquiryService {
                 List<PurcInquiryItem> items = new ArrayList<PurcInquiryItem>();
                 for (PurcInquiryItem item : currentInquiry.getInquiryItems()) {
                     item.setInquiry(inquiry);
+                    item.setOfferAmount(0);
                     if (null == item.getDate()) {
                         item.setDate(new Date(System.currentTimeMillis()));
                     }
                     // 这里设置物料信息的冗余字段
-                    if (null!= item.getProduct()) {
+                    if (null != item.getProduct()) {
                         item.setProdTitle(item.getProduct().getTitle());
                         item.setProdCode(item.getProduct().getCode());
                         item.setSpec(item.getProduct().getSpec());
                         item.setInbrand(item.getProduct().getBrand());
-                        item.setOfferAmount(0);
                     }
                     items.add(item);
                 }