Przeglądaj źródła

购物车日期过滤错误的异常处理

hejq 8 lat temu
rodzic
commit
d5677f329c

+ 2 - 2
src/main/java/com/uas/platform/b2b/controller/CartController.java

@@ -56,8 +56,8 @@ public class CartController {
 	 */
 	 */
 	@RequestMapping(value = "/getCartList", method = RequestMethod.GET)
 	@RequestMapping(value = "/getCartList", method = RequestMethod.GET)
 	@ResponseBody
 	@ResponseBody
-	public SPage<PurchaseOrderAll> getCartList(PageParams params, String keyword) {
-		return cartService.getCartList(params, keyword);
+	public SPage<PurchaseOrderAll> getCartList(PageParams params, String searchFilter) {
+		return cartService.getCartList(params, searchFilter);
 	};
 	};
 
 
 	/**
 	/**

+ 1 - 1
src/main/java/com/uas/platform/b2b/service/CartService.java

@@ -17,7 +17,7 @@ public interface CartService {
 	 * @param params
 	 * @param params
 	 * @return
 	 * @return
 	 */
 	 */
-	SPage<PurchaseOrderAll> getCartList(PageParams params, String keyword);
+	SPage<PurchaseOrderAll> getCartList(PageParams params, String searchFilter);
 
 
 	/**
 	/**
 	 * 生成采购单
 	 * 生成采购单

+ 11 - 5
src/main/java/com/uas/platform/b2b/service/impl/CartServiceImpl.java

@@ -1,13 +1,11 @@
 package com.uas.platform.b2b.service.impl;
 package com.uas.platform.b2b.service.impl;
 
 
+import com.uas.account.util.FlexJsonUtil;
 import com.uas.platform.b2b.dao.PurchaseOrderAllDao;
 import com.uas.platform.b2b.dao.PurchaseOrderAllDao;
 import com.uas.platform.b2b.dao.PurchaseOrderAllItemDao;
 import com.uas.platform.b2b.dao.PurchaseOrderAllItemDao;
 import com.uas.platform.b2b.dao.PurchaseOrderCartDao;
 import com.uas.platform.b2b.dao.PurchaseOrderCartDao;
 import com.uas.platform.b2b.dao.VendorDao;
 import com.uas.platform.b2b.dao.VendorDao;
-import com.uas.platform.b2b.model.PurchaseOrderAll;
-import com.uas.platform.b2b.model.PurchaseOrderAllItem;
-import com.uas.platform.b2b.model.PurchaseOrderCart;
-import com.uas.platform.b2b.model.Vendor;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.service.CartService;
 import com.uas.platform.b2b.service.CartService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
@@ -16,8 +14,10 @@ import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
 import com.uas.platform.core.model.PageParams;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.model.Status;
+import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.SPage;
 import com.uas.search.b2b.model.SPage;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.collections.CollectionUtils;
+import org.json.JSONObject;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
 import org.springframework.data.jpa.domain.Specification;
@@ -29,6 +29,7 @@ import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
 import javax.persistence.criteria.Root;
 import javax.transaction.Transactional;
 import javax.transaction.Transactional;
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
 @Service
 @Service
@@ -50,12 +51,17 @@ public class CartServiceImpl implements CartService {
 	private PurchaseOrderCartDao cartDao;
 	private PurchaseOrderCartDao cartDao;
 
 
 	@Override
 	@Override
-	public SPage<PurchaseOrderAll> getCartList(PageParams params, String keyword) {
+	public SPage<PurchaseOrderAll> getCartList(PageParams params, String searchFilter) {
+		SearchFilter filter = FlexJsonUtil.fromJson(searchFilter, SearchFilter.class);
 		SPage<PurchaseOrderAll> orders = new SPage<PurchaseOrderAll>();
 		SPage<PurchaseOrderAll> orders = new SPage<PurchaseOrderAll>();
 		final PageInfo pageInfo = new PageInfo();
 		final PageInfo pageInfo = new PageInfo();
 		pageInfo.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
 		pageInfo.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
 		pageInfo.filter("status", Status.UNAUDIT.value());
 		pageInfo.filter("status", Status.UNAUDIT.value());
 		pageInfo.filter("userUU", SystemSession.getUser().getUserUU());
 		pageInfo.filter("userUU", SystemSession.getUser().getUserUU());
+		if (filter.getFromDate() != null)
+			pageInfo.expression(PredicateUtils.gte("date", new Date(filter.getFromDate()), false));
+		if (filter.getEndDate() != null)
+			pageInfo.expression(PredicateUtils.lte("date", new Date(filter.getEndDate()), false));
 		Page<PurchaseOrderAll> ordersInfo = purchaseOrderAllDao.findAll(new Specification<PurchaseOrderAll>() {
 		Page<PurchaseOrderAll> ordersInfo = purchaseOrderAllDao.findAll(new Specification<PurchaseOrderAll>() {
 			public Predicate toPredicate(Root<PurchaseOrderAll> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
 			public Predicate toPredicate(Root<PurchaseOrderAll> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
 				return query.where(pageInfo.getPredicates(root, query, builder)).getRestriction();
 				return query.where(pageInfo.getPredicates(root, query, builder)).getRestriction();