|
|
@@ -1079,51 +1079,59 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
info.setOffset(info.getPageSize() * (info.getPageNumber() - 1));
|
|
|
}
|
|
|
info.setSort(sort);
|
|
|
+ Long enUU = null;
|
|
|
+ if (null != filter) {
|
|
|
+ if (filter.getFromDate() != null) {
|
|
|
+ info.expression(PredicateUtils.gte("date", new Date(filter.getFromDate()), false));
|
|
|
+ }
|
|
|
+ if (filter.getEndDate() != null) {
|
|
|
+ info.expression(PredicateUtils.lte("date", new Date(filter.getEndDate()), false));
|
|
|
+ }
|
|
|
+ if (!CollectionUtils.isEmpty(filter.getDistribute())) {
|
|
|
+ info.expression(PredicateUtils.in("inquiry.enUU", filter.getDistribute(), false));
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(filter.getIsAll()) && filter.getIsAll() == 0 && !StringUtils.isEmpty(filter.getEnUU())) {
|
|
|
+ info.expression(PredicateUtils.ne("inquiry.enUU", filter.getEnUU(), false));
|
|
|
+ enUU = filter.getEnUU();
|
|
|
+ }
|
|
|
+ if (!StringUtils.isEmpty(filter.getKeyword())) {
|
|
|
+ SimpleExpression cmpCode = new SimpleExpression("cmpCode", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression brand = new SimpleExpression("inbrand", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression title = new SimpleExpression("prodTitle", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression spec = new SimpleExpression("spec", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression code = new SimpleExpression("inquiry.code", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression enName = new SimpleExpression("inquiry.enName", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
+ SimpleExpression[] simpleExpressions = null;
|
|
|
+ if (!StringUtils.isEmpty(filter.getIsLogin()) && filter.getIsLogin() == 0) {
|
|
|
+ simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title, spec};
|
|
|
+ } else {
|
|
|
+ simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title, enName, spec};
|
|
|
+ }
|
|
|
+ LogicalExpression logical = new LogicalExpression(simpleExpressions, CriterionExpression.Operator.OR);
|
|
|
+ info.expression(logical);
|
|
|
+ }
|
|
|
+ }
|
|
|
Page<PurcInquiryItemInfo> orders = inquiryItemInfoDao.findAll(new Specification<PurcInquiryItemInfo>() {
|
|
|
@Override
|
|
|
public Predicate toPredicate(Root<PurcInquiryItemInfo> root, CriteriaQuery<?> query, CriteriaBuilder builder) {
|
|
|
- if (null != filter) {
|
|
|
- if (filter.getFromDate() != null) {
|
|
|
- info.expression(PredicateUtils.gte("date", new Date(filter.getFromDate()), false));
|
|
|
- }
|
|
|
- if (filter.getEndDate() != null) {
|
|
|
- info.expression(PredicateUtils.lte("date", new Date(filter.getEndDate()), false));
|
|
|
- }
|
|
|
- if (!CollectionUtils.isEmpty(filter.getDistribute())) {
|
|
|
- info.expression(PredicateUtils.in("inquiry.enUU", filter.getDistribute(), false));
|
|
|
- }
|
|
|
- if (!StringUtils.isEmpty(filter.getIsAll()) && filter.getIsAll() == 0 && !StringUtils.isEmpty(filter.getEnUU())) {
|
|
|
- info.expression(PredicateUtils.ne("inquiry.enUU", filter.getEnUU(), false));
|
|
|
- List<Long> ids = inquiryEnRemindDao.findIdsByVendUU(filter.getEnUU());
|
|
|
- info.expression(PredicateUtils.notIn("id", ids, false));
|
|
|
- }
|
|
|
- if (!StringUtils.isEmpty(filter.getKeyword())) {
|
|
|
- SimpleExpression cmpCode = new SimpleExpression("cmpCode", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression brand = new SimpleExpression("inbrand", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression title = new SimpleExpression("prodTitle", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression spec = new SimpleExpression("spec", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression code = new SimpleExpression("inquiry.code", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression enName = new SimpleExpression("inquiry.enName", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
|
|
|
- SimpleExpression[] simpleExpressions = null;
|
|
|
- if (!StringUtils.isEmpty(filter.getIsLogin()) && filter.getIsLogin() == 0) {
|
|
|
- simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title, spec};
|
|
|
- } else {
|
|
|
- simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title, enName, spec};
|
|
|
- }
|
|
|
- LogicalExpression logical = new LogicalExpression(simpleExpressions, CriterionExpression.Operator.OR);
|
|
|
- info.expression(logical);
|
|
|
- }
|
|
|
- }
|
|
|
query.where(info.getPredicates(root, query, builder));
|
|
|
return null;
|
|
|
}
|
|
|
}, info);
|
|
|
// 将当前企业报价信息设置进去
|
|
|
- for (PurcInquiryItemInfo itemInfo : orders) {
|
|
|
- PublicInquiryItem item = publicInquiryItemDao.findByVendUUAndSourceId(filter.getEnUU(), itemInfo.getId());
|
|
|
- itemInfo.setQuotation(item);
|
|
|
+ if (null != filter && !StringUtils.isEmpty(enUU)) {
|
|
|
+ for (PurcInquiryItemInfo itemInfo : orders) {
|
|
|
+ PublicInquiryItem item = publicInquiryItemDao.findByVendUUAndSourceId(filter.getEnUU(), itemInfo.getId());
|
|
|
+ List<InquiryEnRemind> inquiryEnRemind = inquiryEnRemindDao.findByItemIdAndVendUU(itemInfo.getId(), filter.getEnUU());
|
|
|
+ if (!CollectionUtils.isEmpty(inquiryEnRemind) && inquiryEnRemind.size() > 0) {
|
|
|
+ itemInfo.setAllotStatus((short) 1);
|
|
|
+ } else {
|
|
|
+ itemInfo.setAllotStatus((short) 0);
|
|
|
+ }
|
|
|
+ itemInfo.setQuotation(item);
|
|
|
+ }
|
|
|
}
|
|
|
- return covert(orders, filter.getEnUU());
|
|
|
+ return covert(orders, enUU);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1444,7 +1452,7 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
|
|
|
|
|
|
@Override
|
|
|
public Page<MessageModel> ReceiveMessage(PublicInquiryItem item, String sourceApp) {
|
|
|
- if (null != item.getVendUU() && null != item.getVendUserUU()) {
|
|
|
+ if (null != item.getVendUU() && null != item.getVendUserUU() && !StringUtils.isEmpty(item.getCmpCode())) {
|
|
|
final String SMS_TYPE = "SM"; //发送信息
|
|
|
final String CONSUMERAPP = "MALL";
|
|
|
List<MessageModel> models = new ArrayList<MessageModel>();
|