提交 e3475131 编写于 作者: O o2null

Merge branch 'feature/index' into 'develop'

move WorkDataHelper to express

See merge request o2oa/o2oa!1251
......@@ -6,33 +6,53 @@ import com.x.base.core.project.annotation.ModuleCategory;
import com.x.base.core.project.annotation.ModuleType;
@Module(type = ModuleType.SERVICE, category = ModuleCategory.OFFICIAL, name = "流程服务", packageName = "com.x.processplatform.service.processing", containerEntities = {
"com.x.processplatform.core.entity.content.Snap", "com.x.processplatform.core.entity.content.Draft",
"com.x.cms.core.entity.element.Script",
"com.x.portal.core.entity.Script",
"com.x.processplatform.core.entity.content.Attachment",
"com.x.processplatform.core.entity.content.DocSign",
"com.x.processplatform.core.entity.content.DocSignScrawl",
"com.x.processplatform.core.entity.content.DocumentVersion",
"com.x.processplatform.core.entity.content.Draft",
"com.x.processplatform.core.entity.content.Read",
"com.x.processplatform.core.entity.content.ReadCompleted",
"com.x.processplatform.core.entity.content.Record",
"com.x.processplatform.core.entity.content.Record",
"com.x.processplatform.core.entity.content.Review",
"com.x.processplatform.core.entity.content.SerialNumber",
"com.x.processplatform.core.entity.content.Snap",
"com.x.processplatform.core.entity.content.Task",
"com.x.processplatform.core.entity.content.TaskCompleted",
"com.x.processplatform.core.entity.content.ReadCompleted", "com.x.processplatform.core.entity.content.Review",
"com.x.processplatform.core.entity.content.Record", "com.x.processplatform.core.entity.content.WorkCompleted",
"com.x.processplatform.core.entity.content.WorkLog", "com.x.processplatform.core.entity.content.Record",
"com.x.processplatform.core.entity.content.Task", "com.x.processplatform.core.entity.content.Work",
"com.x.processplatform.core.entity.content.Read", "com.x.processplatform.core.entity.content.DocumentVersion",
"com.x.processplatform.core.entity.content.SerialNumber", "com.x.processplatform.core.entity.element.End",
"com.x.processplatform.core.entity.content.DocSign", "com.x.processplatform.core.entity.content.DocSignScrawl",
"com.x.processplatform.core.entity.element.Application", "com.x.processplatform.core.entity.element.Publish",
"com.x.processplatform.core.entity.content.Work",
"com.x.processplatform.core.entity.content.WorkCompleted",
"com.x.processplatform.core.entity.content.WorkLog",
"com.x.processplatform.core.entity.element.Agent",
"com.x.processplatform.core.entity.element.Application",
"com.x.processplatform.core.entity.element.ApplicationDict",
"com.x.processplatform.core.entity.element.ApplicationDictItem",
"com.x.processplatform.core.entity.element.Script", "com.x.processplatform.core.entity.element.Cancel",
"com.x.processplatform.core.entity.element.Merge", "com.x.processplatform.core.entity.element.Route",
"com.x.processplatform.core.entity.element.Choice", "com.x.processplatform.core.entity.element.Invoke",
"com.x.processplatform.core.entity.element.Manual", "com.x.processplatform.core.entity.element.Parallel",
"com.x.processplatform.core.entity.element.Begin", "com.x.processplatform.core.entity.element.Split",
"com.x.processplatform.core.entity.element.Process", "com.x.processplatform.core.entity.element.Service",
"com.x.processplatform.core.entity.element.Agent", "com.x.processplatform.core.entity.element.Delay",
"com.x.processplatform.core.entity.element.File", "com.x.processplatform.core.entity.element.Form",
"com.x.processplatform.core.entity.element.FormField", "com.x.processplatform.core.entity.element.Embed",
"com.x.processplatform.core.entity.element.Begin",
"com.x.processplatform.core.entity.element.Cancel",
"com.x.processplatform.core.entity.element.Choice",
"com.x.processplatform.core.entity.element.Delay",
"com.x.processplatform.core.entity.element.Embed",
"com.x.processplatform.core.entity.element.End",
"com.x.processplatform.core.entity.element.File",
"com.x.processplatform.core.entity.element.Form",
"com.x.processplatform.core.entity.element.FormField",
"com.x.processplatform.core.entity.element.Invoke",
"com.x.processplatform.core.entity.element.Manual",
"com.x.processplatform.core.entity.element.Mapping",
"com.x.processplatform.core.entity.message.Event", "com.x.query.core.entity.Item",
"com.x.cms.core.entity.element.Script", "com.x.processplatform.core.entity.message.WorkEvent",
"com.x.processplatform.core.entity.element.Merge",
"com.x.processplatform.core.entity.element.Parallel",
"com.x.processplatform.core.entity.element.Process",
"com.x.processplatform.core.entity.element.Publish",
"com.x.processplatform.core.entity.element.Route",
"com.x.processplatform.core.entity.element.Script",
"com.x.processplatform.core.entity.element.Service",
"com.x.processplatform.core.entity.element.Split",
"com.x.processplatform.core.entity.message.Event",
"com.x.processplatform.core.entity.message.WorkCompletedEvent",
"com.x.portal.core.entity.Script" }, storageTypes = { StorageType.processPlatform }, storeJars = {
"com.x.processplatform.core.entity.message.WorkEvent",
"com.x.query.core.entity.Item", }, storageTypes = { StorageType.processPlatform }, storeJars = {
"x_organization_core_entity", "x_organization_core_express", "x_processplatform_core_entity",
"x_processplatform_core_express", "x_query_core_entity", "x_cms_core_entity", "x_portal_core_entity" })
public class x_processplatform_service_processing extends Deployable {
......
......@@ -11,7 +11,6 @@ import com.x.general.assemble.control.jaxrs.ecnet.EcnetAction;
import com.x.general.assemble.control.jaxrs.generalfile.GeneralFileAction;
import com.x.general.assemble.control.jaxrs.office.OfficeAction;
import com.x.general.assemble.control.jaxrs.qrcode.QrCodeAction;
import com.x.general.assemble.control.jaxrs.search.SearchAction;
import com.x.general.assemble.control.jaxrs.upgrade.UpgradeAction;
import com.x.general.assemble.control.jaxrs.worktime.WorkTimeAction;
......@@ -22,21 +21,20 @@ import io.swagger.v3.oas.annotations.info.License;
import io.swagger.v3.oas.annotations.servers.Server;
@OpenAPIDefinition(servers = {
@Server(url = "../../x_general_assemble_control", description = "current server.") }, info = @Info(title = "公共模块", version = Version.VALUE, description = "o2server x_general_assemble_control", license = @License(name = "AGPL-3.0", url = "https://www.o2oa.net/license.html"), contact = @Contact(url = "https://www.o2oa.net", name = "o2oa", email = "admin@o2oa.net")))
@Server(url = "../../x_general_assemble_control", description = "current server.") }, info = @Info(title = "公共模块", version = Version.VALUE, description = "o2server x_general_assemble_control", license = @License(name = "AGPL-3.0", url = "https://www.o2oa.net/license.html"), contact = @Contact(url = "https://www.o2oa.net", name = "o2oa", email = "admin@o2oa.net")))
@ApplicationPath("jaxrs")
public class ActionApplication extends AbstractActionApplication {
@Override
public Set<Class<?>> getClasses() {
classes.add(AreaAction.class);
classes.add(EcnetAction.class);
classes.add(OfficeAction.class);
classes.add(WorkTimeAction.class);
classes.add(GeneralFileAction.class);
classes.add(UpgradeAction.class);
classes.add(QrCodeAction.class);
classes.add(SearchAction.class);
return classes;
}
@Override
public Set<Class<?>> getClasses() {
classes.add(AreaAction.class);
classes.add(EcnetAction.class);
classes.add(OfficeAction.class);
classes.add(WorkTimeAction.class);
classes.add(GeneralFileAction.class);
classes.add(UpgradeAction.class);
classes.add(QrCodeAction.class);
return classes;
}
}
package com.x.general.assemble.control.jaxrs;
import javax.servlet.annotation.WebFilter;
import com.x.base.core.project.jaxrs.CipherManagerUserJaxrsFilter;
@WebFilter(urlPatterns = "/jaxrs/search/*", asyncSupported = true)
public class SearchJaxrsFilter extends CipherManagerUserJaxrsFilter {
}
package com.x.general.assemble.control.jaxrs.search;
import java.util.Optional;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonPrimitive;
import com.x.base.core.project.Applications;
import com.x.base.core.project.x_cms_assemble_control;
import com.x.base.core.project.x_processplatform_assemble_surface;
import com.x.base.core.project.annotation.FieldDescribe;
import com.x.base.core.project.connection.ActionResponse;
import com.x.base.core.project.gson.GsonPropertyObject;
import com.x.base.core.project.http.ActionResult;
import com.x.base.core.project.http.EffectivePerson;
import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import com.x.base.core.project.tools.ListTools;
import com.x.general.assemble.control.ThisApplication;
import io.swagger.v3.oas.annotations.media.Schema;
public class ActionSearch extends BaseAction {
private static final Logger LOGGER = LoggerFactory.getLogger(ActionSearch.class);
private static final String INDEX_APPLICATION = "com.x.custom.index.assemble.control.x_custom_index_assemble_control";
private static final String SEARCH = "search";
private static final String REVIEW = "review";
private static final String V2 = "v2";
ActionResult<JsonElement> execute(EffectivePerson effectivePerson, JsonElement jsonElement) throws Exception {
LOGGER.debug("effectivePerson: {}.", effectivePerson.getDistinguishedName());
Wi wi = this.convertToWrapIn(jsonElement, Wi.class);
ActionResult<JsonElement> result = new ActionResult<>();
String person = this.getPerson(effectivePerson);
String query = this.getQuery(wi.getQuery());
if (BooleanUtils.isTrue(wi.getForceDefaultSearch())
|| ListTools.isEmpty(ThisApplication.context().applications().get(INDEX_APPLICATION))) {
// default search
result.setData(this.defaultSearch(person, query, wi.getPage(), wi.getSize()));
} else {
// index search
result.setData(this.indexSearch(person, query, wi.getPage(), wi.getSize()));
}
return result;
}
private JsonElement defaultSearch(String person, String query, Integer page, Integer size)
throws InterruptedException, ExecutionException, TimeoutException {
Req req = new Req();
req.setPerson(person);
req.setQuery(query);
req.setPage(page);
req.setSize(size);
CompletableFuture<Optional<JsonElement>> processPlatform = this.defaultSearchProcessPlatform(req);
CompletableFuture<Optional<JsonElement>> cms = this.defaultSearchCms(req);
JsonObject value = new JsonObject();
value.add("processPlatform", processPlatform.get(300, TimeUnit.SECONDS).orElse(null));
value.add("cms", cms.get(300, TimeUnit.SECONDS).orElse(null));
return value;
}
private JsonElement indexSearch(String person, String query, Integer page, Integer size) throws Exception {
Req req = new Req();
req.setQuery(person);
req.setQuery(query);
req.setSize(size);
req.setPage(page);
return ThisApplication.context().applications().postQuery(INDEX_APPLICATION, SEARCH, req).getData();
}
private CompletableFuture<Optional<JsonElement>> defaultSearchProcessPlatform(Req req) {
return CompletableFuture.supplyAsync(() -> {
try {
ActionResponse response = ThisApplication.context().applications().postQuery(
x_processplatform_assemble_surface.class, Applications.joinQueryUri(REVIEW, V2, SEARCH), req);
JsonObject value = new JsonObject();
value.add("count", new JsonPrimitive(response.getCount()));
value.add("data", response.getData());
return Optional.of(value);
} catch (Exception e) {
LOGGER.error(e);
}
return Optional.empty();
}, ThisApplication.threadPool());
}
private CompletableFuture<Optional<JsonElement>> defaultSearchCms(Req req) {
return CompletableFuture.supplyAsync(() -> {
try {
ActionResponse response = ThisApplication.context().applications()
.postQuery(x_cms_assemble_control.class, Applications.joinQueryUri(REVIEW, V2, SEARCH), req);
JsonObject value = new JsonObject();
value.add("count", new JsonPrimitive(response.getCount()));
value.add("data", response.getData());
return Optional.of(value);
} catch (Exception e) {
LOGGER.error(e);
}
return Optional.empty();
}, ThisApplication.threadPool());
}
private String getPerson(EffectivePerson effectivePerson) {
return (!effectivePerson.isManager()) && (!effectivePerson.isCipher()) ? effectivePerson.getDistinguishedName()
: "";
}
private String getQuery(String query) {
return StringUtils.remove(StringUtils.remove(query, "%"), "_");
}
public static class Req extends GsonPropertyObject {
private static final long serialVersionUID = -9109885719352645660L;
private String id;
private String type;
private String query;
private Integer page;
private Integer size;
private String person;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public String getPerson() {
return person;
}
public void setPerson(String person) {
this.person = person;
}
}
@Schema(name = "com.x.general.assemble.control.jaxrs.search.ActionPost$Wi")
public static class Wi extends GsonPropertyObject {
private static final long serialVersionUID = 1360655000630283661L;
@FieldDescribe("核心标识.")
@Schema(description = "核心标识.")
private String id;
@FieldDescribe("核心类型.")
@Schema(description = "核心类型.")
private String type;
@FieldDescribe("搜索内容.")
@Schema(description = "搜索内容.")
private String query;
@FieldDescribe("分页.")
@Schema(description = "分页.")
private Integer page;
@FieldDescribe("数量.")
@Schema(description = "数量.")
private Integer size;
@FieldDescribe("强制使用默认搜索.")
@Schema(description = "强制使用默认搜索.")
private Boolean forceDefaultSearch;
public Boolean getForceDefaultSearch() {
return forceDefaultSearch;
}
public void setForceDefaultSearch(Boolean forceDefaultSearch) {
this.forceDefaultSearch = forceDefaultSearch;
}
public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
}
package com.x.general.assemble.control.jaxrs.search;
import com.x.base.core.project.jaxrs.StandardJaxrsAction;
abstract class BaseAction extends StandardJaxrsAction {
}
package com.x.general.assemble.control.jaxrs.search;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.container.AsyncResponse;
import javax.ws.rs.container.Suspended;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import com.google.gson.JsonElement;
import com.x.base.core.project.annotation.JaxrsDescribe;
import com.x.base.core.project.annotation.JaxrsMethodDescribe;
import com.x.base.core.project.http.ActionResult;
import com.x.base.core.project.http.EffectivePerson;
import com.x.base.core.project.http.HttpMediaType;
import com.x.base.core.project.jaxrs.ResponseFactory;
import com.x.base.core.project.jaxrs.StandardJaxrsAction;
import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
@Tag(name = "SearchAction", description = "搜索.")
@Path("search")
@JaxrsDescribe("搜索.")
public class SearchAction extends StandardJaxrsAction {
private static final Logger LOGGER = LoggerFactory.getLogger(SearchAction.class);
private static final String OPERATIONID_PREFIX = "SearchAction::";
@Operation(summary = "搜索.", operationId = OPERATIONID_PREFIX + "search", responses = {
@ApiResponse(content = { @Content(schema = @Schema(implementation = JsonElement.class)) }) })
@JaxrsMethodDescribe(value = "搜索.", action = ActionSearch.class)
@POST
@Produces(HttpMediaType.APPLICATION_JSON_UTF_8)
@Consumes(MediaType.APPLICATION_JSON)
public void search(@Suspended final AsyncResponse asyncResponse, @Context HttpServletRequest request,
JsonElement jsonElement) {
ActionResult<JsonElement> result = new ActionResult<>();
EffectivePerson effectivePerson = this.effectivePerson(request);
try {
result = new ActionSearch().execute(effectivePerson, jsonElement);
} catch (Exception e) {
LOGGER.error(e, effectivePerson, request, null);
result.error(e);
}
asyncResponse.resume(ResponseFactory.getEntityTagActionResultResponse(request, result));
}
}
\ No newline at end of file
package com.x.processplatform.service.processing;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import javax.script.Bindings;
import javax.script.CompiledScript;
import javax.script.ScriptContext;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.x.base.core.container.EntityManagerContainer;
import com.x.base.core.container.factory.EntityManagerContainerFactory;
import com.x.base.core.entity.JpaObject_;
import com.x.base.core.project.Applications;
import com.x.base.core.project.x_query_service_processing;
import com.x.base.core.project.gson.XGsonBuilder;
import com.x.base.core.project.jaxrs.WrapBoolean;
import com.x.base.core.project.logger.Logger;
......@@ -14,28 +31,14 @@ import com.x.base.core.project.queue.AbstractQueue;
import com.x.base.core.project.scripting.JsonScriptingExecutor;
import com.x.base.core.project.scripting.ScriptingFactory;
import com.x.base.core.project.webservices.WebservicesClient;
import com.x.base.core.project.x_query_service_processing;
import com.x.processplatform.core.entity.content.Data;
import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.message.Event;
import com.x.processplatform.core.entity.message.Event_;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.processor.AeiObjects;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import javax.persistence.EntityManager;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import javax.script.Bindings;
import javax.script.CompiledScript;
import javax.script.ScriptContext;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class UpdateTableQueue extends AbstractQueue<String> {
......
......@@ -14,8 +14,6 @@ import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import javax.script.CompiledScript;
import com.x.processplatform.core.entity.element.*;
import com.x.processplatform.core.entity.element.Process;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.collections4.ListUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -28,6 +26,31 @@ import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import com.x.base.core.project.scripting.ScriptingFactory;
import com.x.base.core.project.tools.ListTools;
import com.x.processplatform.core.entity.element.Activity;
import com.x.processplatform.core.entity.element.ActivityType;
import com.x.processplatform.core.entity.element.Agent;
import com.x.processplatform.core.entity.element.Application;
import com.x.processplatform.core.entity.element.Begin;
import com.x.processplatform.core.entity.element.Cancel;
import com.x.processplatform.core.entity.element.Choice;
import com.x.processplatform.core.entity.element.Delay;
import com.x.processplatform.core.entity.element.Embed;
import com.x.processplatform.core.entity.element.End;
import com.x.processplatform.core.entity.element.Form;
import com.x.processplatform.core.entity.element.Invoke;
import com.x.processplatform.core.entity.element.Manual;
import com.x.processplatform.core.entity.element.Mapping;
import com.x.processplatform.core.entity.element.Mapping_;
import com.x.processplatform.core.entity.element.Merge;
import com.x.processplatform.core.entity.element.Parallel;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.element.Publish;
import com.x.processplatform.core.entity.element.Route;
import com.x.processplatform.core.entity.element.Route_;
import com.x.processplatform.core.entity.element.Script;
import com.x.processplatform.core.entity.element.Script_;
import com.x.processplatform.core.entity.element.Service;
import com.x.processplatform.core.entity.element.Split;
import com.x.processplatform.service.processing.AbstractFactory;
import com.x.processplatform.service.processing.Business;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
import com.google.gson.JsonElement;
import com.x.base.core.container.EntityManagerContainer;
import com.x.base.core.container.factory.EntityManagerContainerFactory;
......@@ -14,10 +18,6 @@ import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.service.processing.Business;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
class ActionUpdateWithJob extends BaseAction {
private static final Logger LOGGER = LoggerFactory.getLogger(ActionUpdateWithJob.class);
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
package com.x.processplatform.service.processing.jaxrs.data;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
......
......@@ -4,7 +4,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.math.NumberUtils;
......@@ -15,7 +14,6 @@ import com.x.base.core.entity.JpaObject;
import com.x.base.core.entity.dataitem.DataItemConverter;
import com.x.base.core.entity.dataitem.ItemCategory;
import com.x.base.core.entity.dataitem.ItemType;
import com.x.base.core.project.config.Config;
import com.x.base.core.project.gson.XGsonBuilder;
import com.x.base.core.project.jaxrs.StandardJaxrsAction;
import com.x.base.core.project.logger.Logger;
......
......@@ -14,8 +14,6 @@ import javax.ws.rs.container.Suspended;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import org.eclipse.jetty.client.ProxyProtocolClientConnectionFactory.V2;
import com.x.base.core.project.annotation.JaxrsDescribe;
import com.x.base.core.project.annotation.JaxrsMethodDescribe;
import com.x.base.core.project.annotation.JaxrsParameterDescribe;
......
......@@ -30,8 +30,8 @@ import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.element.Projection;
import com.x.processplatform.core.entity.element.util.ProjectionFactory;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.WorkDataHelper;
class V2Projection extends BaseAction {
......
......@@ -36,10 +36,10 @@ import com.x.processplatform.core.entity.content.TaskCompleted;
import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.core.entity.content.WorkLog;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.MessageFactory;
import com.x.processplatform.service.processing.ThisApplication;
import com.x.processplatform.service.processing.WorkDataHelper;
import com.x.query.core.entity.Item;
class ActionRestore extends BaseAction {
......
......@@ -33,11 +33,11 @@ import com.x.processplatform.core.entity.element.ActivityType;
import com.x.processplatform.core.entity.element.Manual;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.express.ProcessingAttributes;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.core.express.service.processing.jaxrs.task.ProcessingWi;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.MessageFactory;
import com.x.processplatform.service.processing.WorkContext;
import com.x.processplatform.service.processing.WorkDataHelper;
import com.x.processplatform.service.processing.configurator.ProcessingConfigurator;
import com.x.processplatform.service.processing.processor.AeiObjects;
......
......@@ -9,7 +9,6 @@ import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import com.x.processplatform.service.processing.ThisApplication;
import com.x.processplatform.service.processing.schedule.CleanEvent;
import com.x.processplatform.service.processing.schedule.DeleteDraft;
class ActionCleanEvent extends BaseAction {
......
......@@ -25,7 +25,6 @@ import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import com.x.base.core.project.processplatform.ManualTaskIdentityMatrix;
import com.x.base.core.project.tools.ListTools;
import com.x.base.core.project.tools.StringTools;
import com.x.processplatform.core.entity.content.Task;
import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.content.WorkLog;
......
......@@ -35,6 +35,7 @@ import com.x.processplatform.core.entity.element.Begin;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.element.Process_;
import com.x.processplatform.core.express.ProcessingAttributes;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.core.express.service.processing.jaxrs.work.ActionAssignCreateWi;
import com.x.processplatform.core.express.service.processing.jaxrs.work.ActionAssignCreateWi.WiAttachment;
import com.x.processplatform.core.express.service.processing.jaxrs.work.ActionAssignCreateWo;
......@@ -42,7 +43,6 @@ import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.MessageFactory;
import com.x.processplatform.service.processing.Processing;
import com.x.processplatform.service.processing.ThisApplication;
import com.x.processplatform.service.processing.WorkDataHelper;
/**
* 创建处于start状态的work 此方法不需要进入队列运行
......
......@@ -18,9 +18,9 @@ import com.x.processplatform.core.entity.element.ActivityType;
import com.x.processplatform.core.entity.element.Application;
import com.x.processplatform.core.entity.element.Begin;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.MessageFactory;
import com.x.processplatform.service.processing.WorkDataHelper;
/**
* 创建处于start状态的work
......
......@@ -25,8 +25,8 @@ import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.element.Projection;
import com.x.processplatform.core.entity.element.util.ProjectionFactory;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.WorkDataHelper;
class ActionProjection extends BaseAction {
......
......@@ -32,7 +32,6 @@ import com.x.processplatform.core.entity.content.Data;
import com.x.processplatform.core.entity.content.Read;
import com.x.processplatform.core.entity.content.ReadCompleted;
import com.x.processplatform.core.entity.content.Review;
import com.x.processplatform.core.entity.content.Task;
import com.x.processplatform.core.entity.content.TaskCompleted;
import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.core.entity.element.Application;
......
......@@ -5,7 +5,6 @@ import java.util.List;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
import com.x.processplatform.core.entity.content.*;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -24,6 +23,16 @@ import com.x.base.core.project.jaxrs.WoId;
import com.x.base.core.project.logger.Logger;
import com.x.base.core.project.logger.LoggerFactory;
import com.x.base.core.project.tools.ListTools;
import com.x.processplatform.core.entity.content.Attachment;
import com.x.processplatform.core.entity.content.Read;
import com.x.processplatform.core.entity.content.ReadCompleted;
import com.x.processplatform.core.entity.content.Record;
import com.x.processplatform.core.entity.content.Review;
import com.x.processplatform.core.entity.content.TaskCompleted;
import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.content.WorkCompleted;
import com.x.processplatform.core.entity.content.WorkLog;
import com.x.processplatform.core.entity.content.WorkStatus;
import com.x.processplatform.core.entity.element.Application;
import com.x.processplatform.core.entity.element.Process;
import com.x.processplatform.core.entity.element.util.WorkLogTree;
......
......@@ -58,11 +58,11 @@ import com.x.processplatform.core.entity.element.util.ProjectionFactory;
import com.x.processplatform.core.entity.message.WorkCompletedEvent;
import com.x.processplatform.core.entity.message.WorkEvent;
import com.x.processplatform.core.express.ProcessingAttributes;
import com.x.processplatform.core.express.WorkDataHelper;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.MessageFactory;
import com.x.processplatform.service.processing.ThisApplication;
import com.x.processplatform.service.processing.WorkContext;
import com.x.processplatform.service.processing.WorkDataHelper;
import com.x.processplatform.service.processing.configurator.ActivityProcessingConfigurator;
import com.x.processplatform.service.processing.configurator.ProcessingConfigurator;
......
......@@ -27,8 +27,8 @@ import com.x.processplatform.core.entity.element.ActivityType;
import com.x.processplatform.core.entity.element.Embed;
import com.x.processplatform.core.entity.element.End;
import com.x.processplatform.core.entity.element.Route;
import com.x.processplatform.core.entity.message.Event;
import com.x.processplatform.core.entity.log.Signal;
import com.x.processplatform.core.entity.message.Event;
import com.x.processplatform.core.express.ProcessingAttributes;
import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.Processing;
......
package com.x.processplatform.service.processing.processor.publish;
import java.util.List;
import com.x.base.core.container.EntityManagerContainer;
import com.x.processplatform.core.entity.content.Work;
import com.x.processplatform.core.entity.element.Publish;
......@@ -7,8 +9,6 @@ import com.x.processplatform.core.entity.element.Route;
import com.x.processplatform.service.processing.processor.AbstractProcessor;
import com.x.processplatform.service.processing.processor.AeiObjects;
import java.util.List;
abstract class AbstractPublishProcessor extends AbstractProcessor {
protected AbstractPublishProcessor(EntityManagerContainer entityManagerContainer) throws Exception {
......
package com.x.processplatform.service.processing.processor.publish;
import java.util.ArrayList;
import java.util.List;
import javax.script.CompiledScript;
import javax.script.ScriptContext;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
import com.google.gson.JsonElement;
import com.x.base.core.container.EntityManagerContainer;
import com.x.base.core.entity.JpaObject;
import com.x.base.core.project.Applications;
import com.x.base.core.project.x_cms_assemble_control;
import com.x.base.core.project.x_query_service_processing;
import com.x.base.core.project.gson.GsonPropertyObject;
import com.x.base.core.project.jaxrs.WoId;
import com.x.base.core.project.jaxrs.WrapBoolean;
......@@ -13,8 +24,6 @@ import com.x.base.core.project.scripting.JsonScriptingExecutor;
import com.x.base.core.project.scripting.ScriptingFactory;
import com.x.base.core.project.tools.ListTools;
import com.x.base.core.project.tools.StringTools;
import com.x.base.core.project.x_cms_assemble_control;
import com.x.base.core.project.x_query_service_processing;
import com.x.processplatform.core.entity.content.Attachment;
import com.x.processplatform.core.entity.content.Data;
import com.x.processplatform.core.entity.content.Review;
......@@ -27,13 +36,6 @@ import com.x.processplatform.service.processing.Business;
import com.x.processplatform.service.processing.ThisApplication;
import com.x.processplatform.service.processing.WrapScriptObject;
import com.x.processplatform.service.processing.processor.AeiObjects;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.StringUtils;
import javax.script.CompiledScript;
import javax.script.ScriptContext;
import java.util.ArrayList;
import java.util.List;
/**
* 数据发布节点处理器
......
......@@ -197,7 +197,7 @@ class ActionExport extends BaseAction {
Streams.mapWithIndex(param.first().stream(), Pair::of)
.map(o -> Quintuple.of(o.first().first(), o.first().second(), o.first().third(), o.second(),
param.second().getFields(o.first().first())))
.filter(o -> !Objects.isNull(o.fifth())).forEach(o -> {
.filter(o -> o.fifth().length > 0).forEach(o -> {
Object value = Indexs.indexableFieldValue(o.fifth(), o.third());
Cell cell = row.createCell(o.fourth().intValue());
if ((null != value) && (Date.class.isAssignableFrom(value.getClass()))) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册