|
|
@@ -31,6 +31,7 @@ import com.uas.platform.b2b.dao.PurchaseOrderIndexDao;
|
|
|
import com.uas.platform.b2b.dao.PurchaseOrderItemDao;
|
|
|
import com.uas.platform.b2b.dao.PurchaseOrderReplyDao;
|
|
|
import com.uas.platform.b2b.dao.PurchaseOrderTodoDao;
|
|
|
+import com.uas.platform.b2b.dao.PurchaseOrderWaitingDao;
|
|
|
import com.uas.platform.b2b.dao.UserBaseInfoDao;
|
|
|
import com.uas.platform.b2b.event.PurchaseOrderSaveEvent;
|
|
|
import com.uas.platform.b2b.model.Enterprise;
|
|
|
@@ -45,6 +46,8 @@ import com.uas.platform.b2b.model.PurchaseOrderItem;
|
|
|
import com.uas.platform.b2b.model.PurchaseOrderReply;
|
|
|
import com.uas.platform.b2b.model.PurchaseOrderTodo;
|
|
|
import com.uas.platform.b2b.model.PurchaseOrderTodoItem;
|
|
|
+import com.uas.platform.b2b.model.PurchaseOrderWaiting;
|
|
|
+import com.uas.platform.b2b.model.PurchaseOrderWaitingItem;
|
|
|
import com.uas.platform.b2b.model.SearchFilter;
|
|
|
import com.uas.platform.b2b.model.UserBaseInfo;
|
|
|
import com.uas.platform.b2b.service.PurchaseOrderService;
|
|
|
@@ -78,6 +81,9 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
|
|
|
|
|
@Autowired
|
|
|
private PurchaseOrderReplyDao purchaseOrderReplyDao;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private PurchaseOrderWaitingDao purchaseOrderWaitingDao;
|
|
|
|
|
|
@Autowired
|
|
|
private PurchaseOrderItemDao purchaseOrderItemDao;
|
|
|
@@ -446,6 +452,40 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
|
|
|
}
|
|
|
return pageOrders;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<PurchaseOrderWaiting> findWaitingByPageInfo(final PageInfo pageInfo, SearchFilter filter) {
|
|
|
+ if (filter != null) {
|
|
|
+ if (StringUtils.hasText(filter.getKeyword()))
|
|
|
+ pageInfo.expression(PredicateUtils.in("id",
|
|
|
+ purchaseOrderIndexDao.findByKeyword(SystemSession.getUser().getEnterprise().getUu(), filter.getKeyword()), false));
|
|
|
+ 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<PurchaseOrderWaiting> pageOrders = purchaseOrderWaitingDao.findAll(new Specification<PurchaseOrderWaiting>() {
|
|
|
+ public Predicate toPredicate(Root<PurchaseOrderWaiting> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
|
|
|
+ return query.where(pageInfo.getPredicates(root, query, builder)).getRestriction();
|
|
|
+ }
|
|
|
+ }, pageInfo);
|
|
|
+ // 明细包含关键词
|
|
|
+ if (filter != null && StringUtils.hasText(filter.getKeyword())) {
|
|
|
+ List<PurchaseOrderWaiting> orders = pageOrders.getContent();
|
|
|
+ if (!CollectionUtils.isEmpty(orders)) {
|
|
|
+ for (PurchaseOrderWaiting order : orders) {
|
|
|
+ if (!CollectionUtils.isEmpty(order.getOrderItems())) {
|
|
|
+ for (PurchaseOrderWaitingItem orderItem : order.getOrderItems()) {
|
|
|
+ if (FlexJsonUtils.toJson(orderItem).contains(filter.getKeyword())) {
|
|
|
+ orderItem.setKey(true);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return pageOrders;
|
|
|
+ }
|
|
|
|
|
|
@Override
|
|
|
public void setDisplay(String[] idArray, Short status) {
|