Przeglądaj źródła

x_okr_assemble_control

zhourui 5 lat temu
rodzic
commit
6d42237b5a
15 zmienionych plików z 99 dodań i 84 usunięć
  1. 5 4
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrCenterWorkInfoFactory.java
  2. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrConfigSecretaryFactory.java
  3. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrConfigSystemFactory.java
  4. 5 4
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrStatisticReportContentFactory.java
  5. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrStatisticReportStatusFactory.java
  6. 5 4
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrTaskFactory.java
  7. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrTaskHandledFactory.java
  8. 5 4
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkAuthorizeRecordFactory.java
  9. 7 6
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkBaseInfoFactory.java
  10. 5 4
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkChatFactory.java
  11. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkDynamicsFactory.java
  12. 39 38
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkPersonFactory.java
  13. 7 6
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportBaseInfoFactory.java
  14. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportPersonLinkFactory.java
  15. 3 2
      o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportProcessLogFactory.java

+ 5 - 4
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrCenterWorkInfoFactory.java

@@ -3,6 +3,7 @@ package com.x.okr.assemble.control.factory;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -333,8 +334,8 @@ public class OkrCenterWorkInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrCenterWorkInfo_.creatorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrCenterWorkInfo_.creatorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrCenterWorkInfo_.creatorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询中心工作部署者身份列表(去重复)
@@ -356,8 +357,8 @@ public class OkrCenterWorkInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrCenterWorkInfo_.deployerIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrCenterWorkInfo_.deployerIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrCenterWorkInfo_.deployerIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询中心工作汇报审核领导身份列表(去重复)

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrConfigSecretaryFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -123,8 +124,8 @@ public class OkrConfigSecretaryFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrConfigSecretary_.leaderIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrConfigSecretary_.leaderIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrConfigSecretary_.leaderIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从领导秘书配置信息中查询与该身份有关的所有信息列表

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrConfigSystemFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -112,8 +113,8 @@ public class OkrConfigSystemFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrConfigSystem_.configValue ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrConfigSystem_.configValue ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrConfigSystem_.configValue ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从系统参数配置信息中查询与该身份有关的所有信息列表

+ 5 - 4
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrStatisticReportContentFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -328,8 +329,8 @@ public class OkrStatisticReportContentFactory extends AbstractFactory {
 		if( endDate != null ){
 			p = cb.and( p, cb.lessThan( root.get(OkrStatisticReportContent_.statisticTime ), endDate));
 		}
-		cq.distinct(true).select( root.get(OkrStatisticReportContent_.statisticTimeFlag ));
-		return em.createQuery( cq.where(p) ).getResultList();
+		cq.select( root.get(OkrStatisticReportContent_.statisticTimeFlag ));
+		return em.createQuery( cq.where(p) ).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询统计数据中工作责任者身份列表(去重复)
@@ -351,8 +352,8 @@ public class OkrStatisticReportContentFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrStatisticReportContent_.responsibilityIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrStatisticReportContent_.responsibilityIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrStatisticReportContent_.responsibilityIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从工作最新汇报内容统计信息中查询与该身份有关的所有信息列表

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrStatisticReportStatusFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -154,8 +155,8 @@ public class OkrStatisticReportStatusFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrStatisticReportStatus_.responsibilityIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrStatisticReportStatus_.responsibilityIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrStatisticReportStatus_.responsibilityIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**

+ 5 - 4
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrTaskFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -198,9 +199,9 @@ public class OkrTaskFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrTask> root = cq.from( OkrTask.class);
-		cq.distinct(true).select( root.get( OkrTask_.targetIdentity ));
+		cq.select( root.get( OkrTask_.targetIdentity ));
 		Predicate p = root.get( OkrTask_.dynamicObjectType ).in( taskTypeList );
-		return em.createQuery(cq.where(p)).getResultList();
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -349,8 +350,8 @@ public class OkrTaskFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrTask_.targetIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrTask_.targetIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrTask_.targetIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从具体工作待办待阅信息中查询与该身份有关的所有信息列表

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrTaskHandledFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -126,8 +127,8 @@ public class OkrTaskHandledFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrTaskHandled_.targetIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrTaskHandled_.targetIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrTaskHandled_.targetIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从具体工作已办已阅信息中查询与该身份有关的所有信息列表

+ 5 - 4
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkAuthorizeRecordFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -219,8 +220,8 @@ public class OkrWorkAuthorizeRecordFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkAuthorizeRecord_.delegatorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkAuthorizeRecord_.delegatorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkAuthorizeRecord_.delegatorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询工作承接者身份列表(去重复)
@@ -242,8 +243,8 @@ public class OkrWorkAuthorizeRecordFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkAuthorizeRecord_.targetIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkAuthorizeRecord_.targetIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkAuthorizeRecord_.targetIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从工作授权信息中查询与该身份有关的所有信息列表

+ 7 - 6
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkBaseInfoFactory.java

@@ -4,6 +4,7 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -699,8 +700,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkBaseInfo_.creatorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkBaseInfo_.creatorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkBaseInfo_.creatorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询具体工作部署者身份列表(去重复)
@@ -722,8 +723,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkBaseInfo_.deployerIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkBaseInfo_.deployerIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkBaseInfo_.deployerIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询具体工作阅知领导身份列表(去重复)
@@ -791,8 +792,8 @@ public class OkrWorkBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkBaseInfo_.responsibilityIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkBaseInfo_.responsibilityIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkBaseInfo_.responsibilityIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**

+ 5 - 4
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkChatFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -235,8 +236,8 @@ public class OkrWorkChatFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkChat_.senderIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkChat_.senderIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkChat_.senderIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询工作交流信息接收者身份列表(去重复)
@@ -258,8 +259,8 @@ public class OkrWorkChatFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkChat_.targetIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkChat_.targetIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkChat_.targetIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从具体工作交流信息中查询与该身份有关的所有信息列表

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkDynamicsFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -320,8 +321,8 @@ public class OkrWorkDynamicsFactory extends AbstractFactory {
 		if (identities_error != null && identities_error.size() > 0) {
 			p = cb.and(p, cb.not(root.get(OkrWorkDynamics_.targetIdentity).in(identities_error)));
 		}
-		cq.distinct(true).select(root.get(OkrWorkDynamics_.targetIdentity));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get(OkrWorkDynamics_.targetIdentity));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**

+ 39 - 38
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkPersonFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -78,7 +79,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.workId));
+		cq.select(root.get(OkrWorkPerson_.workId));
 
 		/**
 		 * 获取的时候过滤条件: 1、如果当前身份是创建者或者部署者的,那么,草稿也要取,如果当前身份不是创建者或者部署者,那么草稿不要去
@@ -114,7 +115,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 
 		p = cb.and(p, cb.or(p_creator_or_depoloyer, p_watcher));
 
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -136,12 +137,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.workId));
+		cq.select(root.get(OkrWorkPerson_.workId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.employeeIdentity), userIdentity);
 		if (centerId != null && !centerId.isEmpty()) {
 			p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.centerId), centerId));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有具体工作Id列表" )
@@ -158,11 +159,11 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.workId));
+		cq.select(root.get(OkrWorkPerson_.workId));
 		Predicate p = cb.isNotNull(root.get(OkrWorkPerson_.workId));
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.employeeName), name));
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), processIdentity));
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有具体工作Id列表" )
@@ -180,7 +181,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.workId));
+		cq.select(root.get(OkrWorkPerson_.workId));
 
 		Predicate p = cb.isNotNull(root.get(OkrWorkPerson_.workId));
 
@@ -194,7 +195,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), processIdentity));
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.status), "正常"));
 
-		return em.createQuery(cq.where(p)).setMaxResults(200).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(200).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据用户姓名,列示有权限访问的所有中心工作Id列表" )
@@ -207,12 +208,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.employeeName), name);
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据用户姓名和处理者身份,列示有权限访问的所有中心工作Id列表" )
@@ -230,13 +231,13 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.employeeName), name);
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), processIdentity));
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据用户身份和处理者身份,列示有权限访问的所有中心工作Id列表" )
@@ -254,13 +255,13 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.employeeIdentity), identity);
 		p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), processIdentity));
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据组织名称,列示有权限访问的所有中心工作Id列表" )
@@ -273,12 +274,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.unitName), name);
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据组织列表,列示有权限访问的所有中心工作Id列表" )
@@ -291,12 +292,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = root.get(OkrWorkPerson_.unitName).in(names);
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据顶层组织名称,列示有权限访问的所有中心工作Id列表" )
@@ -309,12 +310,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.topUnitName), name);
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -336,12 +337,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.employeeIdentity));
+		cq.select(root.get(OkrWorkPerson_.employeeIdentity));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.centerId), centerId);
 		if (identity != null && !identity.isEmpty()) {
 			p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), identity));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(2000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(2000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	// @MethodDescribe( "根据顶层组织列表,列示有权限访问的所有中心工作Id列表" )
@@ -355,12 +356,12 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
+		cq.select(root.get(OkrWorkPerson_.centerId));
 		Predicate p = root.get(OkrWorkPerson_.topUnitName).in(names);
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(1000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -380,7 +381,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.employeeName));
+		cq.select(root.get(OkrWorkPerson_.employeeName));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.workId), workId);
 		if (identity != null && !identity.isEmpty()) {
 			p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), identity));
@@ -388,7 +389,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).setMaxResults(100).getResultList();
+		return em.createQuery(cq.where(p)).setMaxResults(100).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -480,7 +481,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.workId));
+		cq.select(root.get(OkrWorkPerson_.workId));
 		Predicate p = cb.equal(root.get(OkrWorkPerson_.employeeIdentity), employeeIdentity);
 		p = cb.and(p, cb.isNotNull(root.get(OkrWorkPerson_.workId)));
 		if (centerId != null && !centerId.isEmpty()) {
@@ -495,7 +496,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		if (statuses != null && statuses.size() > 0) {
 			p = cb.and(p, root.get(OkrWorkPerson_.status).in(statuses));
 		}
-		return em.createQuery(cq.where(p)).getResultList();
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -1059,15 +1060,15 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaBuilder cb = em.getCriteriaBuilder();
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.employeeIdentity));
-		return em.createQuery(cq).setMaxResults(10000).getResultList();
+		cq.select(root.get(OkrWorkPerson_.employeeIdentity));
+		return em.createQuery(cq).setMaxResults(10000).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
 	 * 根据工作类别和登录身份来查询用户可以访问到的所有中心工作数量
-	 * 
-	 * @param workTypeName
+	 * @param workTypeNames
 	 * @param loginIdentity
+	 * @param processIdentity
 	 * @return
 	 * @throws Exception
 	 */
@@ -1087,8 +1088,8 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		if (processIdentity != null && !processIdentity.isEmpty()) {
 			p = cb.and(p, cb.equal(root.get(OkrWorkPerson_.processIdentity), processIdentity));
 		}
-		cq.distinct(true).select(root.get(OkrWorkPerson_.centerId));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get(OkrWorkPerson_.centerId));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	public List<String> listByAuthorizeRecordIds(List<String> authorizeRecordIds, List<String> statuses)
@@ -1388,8 +1389,8 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		if (identities_error != null && identities_error.size() > 0) {
 			p = cb.and(p, cb.not(root.get(OkrWorkPerson_.employeeIdentity).in(identities_error)));
 		}
-		cq.distinct(true).select(root.get(OkrWorkPerson_.employeeIdentity));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get(OkrWorkPerson_.employeeIdentity));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**
@@ -1425,7 +1426,7 @@ public class OkrWorkPersonFactory extends AbstractFactory {
 		CriteriaQuery<String> cq = cb.createQuery(String.class);
 		Root<OkrWorkPerson> root = cq.from(OkrWorkPerson.class);
 		Predicate p = cb.equal( root.get(OkrWorkPerson_.workId), workId);
-		cq.distinct(true).select(root.get(OkrWorkPerson_.employeeIdentity));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get(OkrWorkPerson_.employeeIdentity));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 }

+ 7 - 6
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportBaseInfoFactory.java

@@ -4,6 +4,7 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.HashSet;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.criteria.CriteriaBuilder;
@@ -480,8 +481,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkReportBaseInfo_.creatorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkReportBaseInfo_.creatorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkReportBaseInfo_.creatorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询工作汇报当前处理者身份列表(去重复)
@@ -596,8 +597,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkReportBaseInfo_.reporterIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkReportBaseInfo_.reporterIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkReportBaseInfo_.reporterIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 查询工作管理者,督办员身份列表(去重复)
@@ -619,8 +620,8 @@ public class OkrWorkReportBaseInfoFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkReportBaseInfo_.workAdminIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkReportBaseInfo_.workAdminIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkReportBaseInfo_.workAdminIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 
 	/**

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportPersonLinkFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -336,8 +337,8 @@ public class OkrWorkReportPersonLinkFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkReportPersonLink_.processorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkReportPersonLink_.processorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkReportPersonLink_.processorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从工作汇报处理者信息中查询与该身份有关的所有信息列表

+ 3 - 2
o2server/x_okr_assemble_control/src/main/webapp/describe/sources/com/x/okr/assemble/control/factory/OkrWorkReportProcessLogFactory.java

@@ -2,6 +2,7 @@ package com.x.okr.assemble.control.factory;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
@@ -317,8 +318,8 @@ public class OkrWorkReportProcessLogFactory extends AbstractFactory {
 		if( identities_error != null && identities_error.size() > 0 ){
 			p = cb.and( p, cb.not(root.get( OkrWorkReportProcessLog_.processorIdentity ).in( identities_error )) );
 		}
-		cq.distinct(true).select(root.get( OkrWorkReportProcessLog_.processorIdentity ));
-		return em.createQuery(cq.where(p)).getResultList();
+		cq.select(root.get( OkrWorkReportProcessLog_.processorIdentity ));
+		return em.createQuery(cq.where(p)).getResultList().stream().distinct().collect(Collectors.toList());
 	}
 	/**
 	 * 根据身份名称,从工作汇报处理日志信息中查询与该身份有关的所有信息列表