فهرست منبع

修复asBoolean

zhourui 5 سال پیش
والد
کامیت
0d01e7a868

+ 33 - 11
o2server/pom.xml

@@ -288,13 +288,23 @@
 			<groupId>com.squareup</groupId>
 			<artifactId>javapoet</artifactId>
 		</dependency>
+		<!-- dependency> <groupId>javax.visrec</groupId> <artifactId>visrec-api</artifactId> 
+			</dependency -->
 		<dependency>
-			<groupId>javax.visrec</groupId>
-			<artifactId>visrec-api</artifactId>
+			<groupId>com.github.neuroph</groupId>
+			<artifactId>neuroph-core</artifactId>
 		</dependency>
 		<dependency>
-			<groupId>org.neuroph</groupId>
-			<artifactId>neuroph-core</artifactId>
+			<groupId>com.github.neuroph</groupId>
+			<artifactId>neuroph-imgrec</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>com.github.neuroph</groupId>
+			<artifactId>neuroph-ocr</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>com.github.neuroph</groupId>
+			<artifactId>neuroph-contrib</artifactId>
 		</dependency>
 		<dependency>
 			<groupId>net.sourceforge.tess4j</groupId>
@@ -755,15 +765,27 @@
 				<artifactId>javapoet</artifactId>
 				<version>1.11.1</version>
 			</dependency>
+			<!--dependency> <groupId>javax.visrec</groupId> <artifactId>visrec-api</artifactId> 
+				<version>20200316</version> </dependency -->
 			<dependency>
-				<groupId>javax.visrec</groupId>
-				<artifactId>visrec-api</artifactId>
-				<version>20200316</version>
+				<groupId>com.github.neuroph</groupId>
+				<artifactId>neuroph-core</artifactId>
+				<version>2.98</version>
 			</dependency>
 			<dependency>
-				<groupId>org.neuroph</groupId>
-				<artifactId>neuroph-core</artifactId>
-				<version>2.96</version>
+				<groupId>com.github.neuroph</groupId>
+				<artifactId>neuroph-imgrec</artifactId>
+				<version>2.98</version>
+			</dependency>
+			<dependency>
+				<groupId>com.github.neuroph</groupId>
+				<artifactId>neuroph-ocr</artifactId>
+				<version>2.98</version>
+			</dependency>
+			<dependency>
+				<groupId>com.github.neuroph</groupId>
+				<artifactId>neuroph-contrib</artifactId>
+				<version>2.98</version>
 			</dependency>
 			<dependency>
 				<groupId>org.slf4j</groupId>
@@ -788,7 +810,7 @@
 			<dependency>
 				<groupId>com.alibaba</groupId>
 				<artifactId>druid</artifactId>
-				<version>1.1.21</version>
+				<version>1.1.23</version>
 			</dependency>
 			<dependency>
 				<groupId>com.itextpdf</groupId>

+ 0 - 3
o2server/x_base_core_project/src/main/java/com/x/base/core/project/cache/CacheEhcacheReceiveThread.java

@@ -30,9 +30,6 @@ public class CacheEhcacheReceiveThread extends Thread {
 		while (!isInterrupted()) {
 			try {
 				WrapClearCacheRequest wi = queue.take();
-				System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
-				System.out.println(wi);
-				System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
 				String keyValue = new CacheKey(wi.getKeys().toArray()).toString();
 				Stream.of(cacheManager.getCacheNames()).forEach(cacheName -> {
 					if (StringUtils.contains(cacheName, new CacheCategory(wi.getClassName()).toString())) {

+ 7 - 1
o2server/x_base_core_project/src/main/java/com/x/base/core/project/script/ScriptFactory.java

@@ -111,7 +111,13 @@ public class ScriptFactory {
 	}
 
 	public static Boolean asBoolean(Object o) throws Exception {
-		return BooleanUtils.toBooleanObject(Objects.toString(o));
+		if (null == o) {
+			return false;
+		}
+		if (o instanceof Number) {
+			return ((Number) o).intValue() != 0;
+		}
+		return BooleanUtils.toBooleanObject(Objects.toString(o, "false"));
 	}
 
 	public static List<String> asDistinguishedName(Object o) throws Exception {

+ 2 - 2
o2server/x_message_assemble_communicate/src/main/java/com/x/message/assemble/communicate/PmsConsumeQueue.java

@@ -26,7 +26,7 @@ public class PmsConsumeQueue extends AbstractQueue<Message> {
 
 	protected void execute(Message message) throws Exception {
 		try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
-			logger.info("send pms message:{}.", message);
+			logger.debug("send pms message:{}.", message);
 			Boolean result = false;
 			JsonElement jsonElement = XGsonBuilder.instance().fromJson(message.getBody(), JsonElement.class);
 			/* 跳过第一条待办的提醒 */
@@ -47,7 +47,7 @@ public class PmsConsumeQueue extends AbstractQueue<Message> {
 					result = wrapBoolean.getValue();
 				}
 			}
-			//单独发送推送消息用,没有存message对象 所以没有id,不需要更新
+			// 单独发送推送消息用,没有存message对象 所以没有id,不需要更新
 			if (StringUtils.isEmpty(message.getId())) {
 				return;
 			}

+ 6 - 2
o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/choice/ChoiceProcessor.java

@@ -56,10 +56,14 @@ public class ChoiceProcessor extends AbstractChoiceProcessor {
 		for (Route o : aeiObjects.getRoutes()) {
 			ScriptContext scriptContext = aeiObjects.scriptContext();
 			scriptContext.getBindings(ScriptContext.ENGINE_SCOPE).put(ScriptFactory.BINDING_NAME_ROUTE, o);
-			Object obj = aeiObjects.business().element()
+			Object objectValue = aeiObjects.business().element()
 					.getCompiledScript(aeiObjects.getWork().getApplication(), o, Business.EVENT_ROUTE)
 					.eval(scriptContext);
-			if (BooleanUtils.toBoolean(StringUtils.trimToNull(Objects.toString(obj))) == true) {
+//			if (BooleanUtils.toBoolean(StringUtils.trimToNull(Objects.toString(obj))) == true) {
+//				results.add(o);
+//				break;
+//			}
+			if (BooleanUtils.isTrue(ScriptFactory.asBoolean(objectValue))) {
 				results.add(o);
 				break;
 			}

+ 4 - 1
o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/parallel/ParallelProcessor.java

@@ -71,9 +71,12 @@ public class ParallelProcessor extends AbstractParallelProcessor {
 			Object objectValue = aeiObjects.business().element()
 					.getCompiledScript(aeiObjects.getWork().getApplication(), o, Business.EVENT_ROUTE)
 					.eval(scriptContext);
-			if (BooleanUtils.toBoolean(StringUtils.trimToNull(Objects.toString(objectValue))) == true) {
+			if (BooleanUtils.isTrue(ScriptFactory.asBoolean(objectValue))) {
 				routes.add(o);
 			}
+//			if (BooleanUtils.toBoolean(StringUtils.trimToNull(Objects.toString(objectValue))) == true) {
+//				routes.add(o);
+//			}
 		}
 
 		for (int i = 0; i < routes.size(); i++) {

+ 2 - 0
o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/processor/split/SplitProcessor.java

@@ -77,6 +77,7 @@ public class SplitProcessor extends AbstractSplitProcessor {
 
 	@Override
 	protected void executingCommitted(AeiObjects aeiObjects, Split split) throws Exception {
+		// nothing
 	}
 
 	@Override
@@ -102,5 +103,6 @@ public class SplitProcessor extends AbstractSplitProcessor {
 
 	@Override
 	protected void inquiringCommitted(AeiObjects aeiObjects, Split split) throws Exception {
+		// nothing
 	}
 }

+ 14 - 15
o2server/x_query_service_processing/src/main/java/com/x/query/service/processing/jaxrs/test/ActionGroup2.java

@@ -1,12 +1,11 @@
 package com.x.query.service.processing.jaxrs.test;
 
-import java.util.List;
+import java.util.ArrayList;
 
-import javax.persistence.EntityManager;
-import javax.persistence.criteria.CriteriaBuilder;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Path;
-import javax.persistence.criteria.Root;
+import javax.script.Bindings;
+import javax.script.ScriptContext;
+import javax.script.ScriptEngine;
+import javax.script.SimpleScriptContext;
 
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
@@ -15,8 +14,7 @@ import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WrapBoolean;
 import com.x.base.core.project.logger.Logger;
 import com.x.base.core.project.logger.LoggerFactory;
-import com.x.query.core.entity.segment.Word;
-import com.x.query.core.entity.segment.Word_;
+import com.x.base.core.project.script.ScriptFactory;
 
 class ActionGroup2 extends BaseAction {
 
@@ -25,13 +23,14 @@ class ActionGroup2 extends BaseAction {
 	ActionResult<Wo> execute(EffectivePerson effectivePerson) throws Exception {
 		try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
 			ActionResult<Wo> result = new ActionResult<>();
-			EntityManager em = emc.get(Word.class);
-			CriteriaBuilder cb = em.getCriteriaBuilder();
-			CriteriaQuery<Object> cq = cb.createQuery(Object.class);
-			Root<Word> root = cq.from(Word.class);
-			Path<String> path = root.get(Word_.value);
-			cq.multiselect(cb.count(path), cb.count(path)).groupBy(path);
-			List<Object> os = em.createQuery(cq).getResultList();
+			ScriptEngine engine = ScriptFactory.newScriptEngine();
+			ScriptContext scriptContext = new SimpleScriptContext();
+			Bindings bindings = scriptContext.getBindings(ScriptContext.ENGINE_SCOPE);
+			bindings.put("data", new ArrayList<>());
+			engine.setContext(scriptContext);
+			engine.eval("var o = this.data && this.data.length;");
+			Object o = engine.eval("o;");
+			System.out.println(o.getClass());
 			return result;
 		}
 	}

+ 1 - 0
o2server/x_query_service_processing/src/main/webapp/describe/sources/com/x/query/service/processing/ThisApplication.java

@@ -38,6 +38,7 @@ public class ThisApplication {
 
 	public static void destroy() {
 		try {
+			CacheManager.shutdown();
 		} catch (Exception e) {
 			e.printStackTrace();
 		}

+ 5 - 16
o2server/x_query_service_processing/src/main/webapp/describe/sources/com/x/query/service/processing/jaxrs/test/ActionGroup2.java

@@ -1,12 +1,6 @@
 package com.x.query.service.processing.jaxrs.test;
 
-import java.util.List;
-
-import javax.persistence.EntityManager;
-import javax.persistence.criteria.CriteriaBuilder;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Path;
-import javax.persistence.criteria.Root;
+import javax.script.ScriptEngine;
 
 import com.x.base.core.container.EntityManagerContainer;
 import com.x.base.core.container.factory.EntityManagerContainerFactory;
@@ -15,8 +9,7 @@ import com.x.base.core.project.http.EffectivePerson;
 import com.x.base.core.project.jaxrs.WrapBoolean;
 import com.x.base.core.project.logger.Logger;
 import com.x.base.core.project.logger.LoggerFactory;
-import com.x.query.core.entity.segment.Word;
-import com.x.query.core.entity.segment.Word_;
+import com.x.base.core.project.script.ScriptFactory;
 
 class ActionGroup2 extends BaseAction {
 
@@ -25,13 +18,9 @@ class ActionGroup2 extends BaseAction {
 	ActionResult<Wo> execute(EffectivePerson effectivePerson) throws Exception {
 		try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) {
 			ActionResult<Wo> result = new ActionResult<>();
-			EntityManager em = emc.get(Word.class);
-			CriteriaBuilder cb = em.getCriteriaBuilder();
-			CriteriaQuery<Object> cq = cb.createQuery(Object.class);
-			Root<Word> root = cq.from(Word.class);
-			Path<String> path = root.get(Word_.value);
-			cq.multiselect(cb.count(path), cb.count(path)).groupBy(path);
-			List<Object> os = em.createQuery(cq).getResultList();
+			ScriptEngine engine = ScriptFactory.newScriptEngine();
+			Object o = engine.eval("this.data && this.data.length");
+			System.out.println(o.getClass());
 			return result;
 		}
 	}