Explorar o código

ERP需求:公共询价列表过滤企业商机内容

liusw %!s(int64=7) %!d(string=hai) anos
pai
achega
54b6110e34

+ 8 - 0
src/main/java/com/uas/ps/inquiry/dao/InquiryEnRemindDao.java

@@ -9,6 +9,7 @@ import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 
 import javax.transaction.Transactional;
+import java.util.List;
 
 
 /**
@@ -32,4 +33,11 @@ public interface InquiryEnRemindDao extends JpaRepository<InquiryEnRemind, Long>
      */
     InquiryEnRemind findByItemIdAndEnUU(Long itemId, Long enUU);
 
+    /**
+     * 通过企业uu查询企业推荐信息
+     * @param vendUU
+     * @return
+     */
+    @Query("select itemId from InquiryEnRemind where vendUU = :vendUU")
+    List<Long> findIdsByVendUU(@Param("vendUU") Long vendUU);
 }

+ 21 - 0
src/main/java/com/uas/ps/inquiry/page/criteria/PredicateUtils.java

@@ -199,6 +199,27 @@ public class PredicateUtils {
 		return new LogicalExpression(ses, CriterionExpression.Operator.OR);
 	}
 
+	/**
+	 * 不包含于
+	 *
+	 * @param param
+	 * @param value
+	 * @return
+	 */
+	@SuppressWarnings("rawtypes")
+	public static LogicalExpression notIn(String param, Collection value, boolean ignoreNull) {
+		if (ignoreNull && (value == null || value.isEmpty())) {
+			return null;
+		}
+		SimpleExpression[] ses = new SimpleExpression[value.size()];
+		int i = 0;
+		for (Object obj : value) {
+			ses[i] = new SimpleExpression(param, obj, CriterionExpression.Operator.NE);
+			i++;
+		}
+		return new LogicalExpression(ses, CriterionExpression.Operator.AND);
+	}
+
 	/**
 	 * 包含于
 	 * 

+ 2 - 0
src/main/java/com/uas/ps/inquiry/service/impl/InquiryServiceImpl.java

@@ -199,6 +199,7 @@ public class InquiryServiceImpl implements InquiryService {
         info.setSort(sort);
         if (null != filter.getUserUU()) {
             info.filter("userUU", filter.getUserUU());
+            info.expression(PredicateUtils.isNull("inquiry.enUU"));
         } else if (null != filter.getEnUU()) {
             info.filter("inquiry.enUU", filter.getEnUU());
         } else {
@@ -756,6 +757,7 @@ public class InquiryServiceImpl implements InquiryService {
         } else {
             if (userUU != null) {
                 pageInfo.filter("inquiry.recorderUU", userUU);
+                pageInfo.expression(PredicateUtils.isNull("inquiry.enUU"));
             }
         }
         if (StringUtils.hasText(filter.getKeyword())) {

+ 2 - 0
src/main/java/com/uas/ps/inquiry/service/impl/PublicInquiryServiceImpl.java

@@ -1071,6 +1071,8 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
                     }
                     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);

+ 1 - 1
src/main/resources/config/application-cloud.properties

@@ -1,4 +1,4 @@
-datasource.url=jdbc:mysql://10.10.0.208:3306/mall_prod?characterEncoding=utf-8&useSSL=false
+datasource.url=jdbc:mysql://10.10.0.208:3306/mall_prod?characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
 datasource.username=sa
 datasource.password=Select123!#%*(
 datasource.driverClassName=com.mysql.jdbc.Driver

+ 1 - 1
src/main/resources/config/application-dev.properties

@@ -1,4 +1,4 @@
-datasource.url=jdbc:mysql://192.168.253.12:3306/mall_test_dev?characterEncoding=utf-8&useSSL=false
+datasource.url=jdbc:mysql://192.168.253.12:3306/mall_test_dev?characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
 datasource.username=root
 datasource.password=select111***
 datasource.driverClassName=com.mysql.jdbc.Driver

+ 1 - 1
src/main/resources/config/application-test.properties

@@ -1,4 +1,4 @@
-datasource.url=jdbc:mysql://192.168.253.6:3306/mall_test_dev?characterEncoding=utf-8&useSSL=false
+datasource.url=jdbc:mysql://192.168.253.6:3306/mall_test_dev?characterEncoding=utf-8&useSSL=false&autoReconnect=true&failOverReadOnly=false
 datasource.username=root
 datasource.password=select111***
 datasource.driverClassName=com.mysql.jdbc.Driver