diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 79e4141..f595fd9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,42 +1,14 @@
-include: https://api.choerodon.com.cn/devops/v1/projects/1529/ci_contents/pipelines/cd3fd533-2849-4294-8fbb-54653a1b7a89/content.yaml
+include: https://api.choerodon.com.cn/devops/v1/projects/261899051275677696/ci_contents/pipelines/203636d9-de7c-4e7f-9b05-24e2cb668bd7/content.yaml
-#image: registry.cn-shanghai.aliyuncs.com/c7n/cibase:0.11.4
+#include: https://api.choerodon.com.cn/devops/v1/projects/1529/ci_contents/pipelines/cd3fd533-2849-4294-8fbb-54653a1b7a89/content.yaml
#
-#stages:
-# - build
-# - release
-#
-#build front:
-# stage: build
-# script:
-# - npm config set "//${NPM_REPO}:_authToken" "${NPM_TOKEN}"
-# - npm config set "//${NPM_REGISTRY}:_authToken" "${NPM_TOKEN}"
-# - npm config set always-auth true
-# - yarn install --registry "https://${NPM_REPO}" --sass-binary-site=http://npm.taobao.org/mirrors/node-sass
-# - chmod -R 755 node_modules
-# - npm run compile
-# - npm publish --registry "https://${NPM_REGISTRY}"
-# - curl -sX POST -F token=${FRONT_REPOSITORY_TOKEN} -F ref=${REF_NAME} https://code.choerodon.com.cn/api/v4/projects/7909/trigger/pipeline
-# except:
-# changes:
-# - pom.xml
-# - src/**/*
-# - docker/**/*
-# - chart/**/*
-# - init-mysql-database.sh
-# - .circleci/**/*
-# - .gitignore
-# - .github/**/*
-# - .gitlab-ci.yml
-# - "*.md"
-# only:
-# refs:
-# - master
-# - /^.*bugfix.*$/
-# - /^.*hotfix.*$/
-# - /^.*release.*$/
-#
-##tag front:
+##image: registry.cn-shanghai.aliyuncs.com/c7n/cibase:0.11.4
+##
+##stages:
+## - build
+## - release
+##
+##build front:
## stage: build
## script:
## - npm config set "//${NPM_REPO}:_authToken" "${NPM_TOKEN}"
@@ -46,86 +18,116 @@ include: https://api.choerodon.com.cn/devops/v1/projects/1529/ci_contents/pipeli
## - chmod -R 755 node_modules
## - npm run compile
## - npm publish --registry "https://${NPM_REGISTRY}"
+## - curl -sX POST -F token=${FRONT_REPOSITORY_TOKEN} -F ref=${REF_NAME} https://code.choerodon.com.cn/api/v4/projects/7909/trigger/pipeline
+## except:
+## changes:
+## - pom.xml
+## - src/**/*
+## - docker/**/*
+## - chart/**/*
+## - init-mysql-database.sh
+## - .circleci/**/*
+## - .gitignore
+## - .github/**/*
+## - .gitlab-ci.yml
+## - "*.md"
+## only:
+## refs:
+## - master
+## - /^.*bugfix.*$/
+## - /^.*hotfix.*$/
+## - /^.*release.*$/
+##
+###tag front:
+### stage: build
+### script:
+### - npm config set "//${NPM_REPO}:_authToken" "${NPM_TOKEN}"
+### - npm config set "//${NPM_REGISTRY}:_authToken" "${NPM_TOKEN}"
+### - npm config set always-auth true
+### - yarn install --registry "https://${NPM_REPO}" --sass-binary-site=http://npm.taobao.org/mirrors/node-sass
+### - chmod -R 755 node_modules
+### - npm run compile
+### - npm publish --registry "https://${NPM_REGISTRY}"
+### only:
+### refs:
+### - tags
+##
+##build backend:
+## stage: build
+## script:
+## - update_pom_version
+## - mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test -Dmaven.test.failure.ignore=true -DskipTests=true -U
+## - mvn package spring-boot:repackage
+## - mv target/app.jar $PWD/docker
+## - saveImageMetadata
+## - kaniko -c $PWD/docker -f $PWD/docker/Dockerfile -d ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}
+## except:
+## changes:
+## - .editorconfig
+## - .eslintrc.json
+## - .stylelintrc.json
+## - gulpfile.js
+## - package.json
+## - react/**/*
+## - .gitignore
+## - .github/**/*
+## - .gitlab-ci.yml
+## - "*.md"
+## only:
+## refs:
+## - master
+## - /^.*bugfix.*$/
+## - /^.*hotfix.*$/
+## - /^.*release.*$/
+##
+##tag backend:
+## stage: build
+## script:
+## - update_pom_version
+## - mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test -Dmaven.test.failure.ignore=true -DskipTests=true -U
+## - mvn package spring-boot:repackage
+## - mv target/app.jar $PWD/docker
+## - saveImageMetadata
+## - docker build --platform linux/arm64 -t ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}-arm -f $PWD/docker/Dockerfile $PWD/docker
+## - docker push ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}-arm
+## - kaniko -c $PWD/docker -f $PWD/docker/Dockerfile -d ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}
## only:
## refs:
## - tags
-#
-#build backend:
-# stage: build
-# script:
-# - update_pom_version
-# - mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test -Dmaven.test.failure.ignore=true -DskipTests=true -U
-# - mvn package spring-boot:repackage
-# - mv target/app.jar $PWD/docker
-# - saveImageMetadata
-# - kaniko -c $PWD/docker -f $PWD/docker/Dockerfile -d ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}
-# except:
-# changes:
-# - .editorconfig
-# - .eslintrc.json
-# - .stylelintrc.json
-# - gulpfile.js
-# - package.json
-# - react/**/*
-# - .gitignore
-# - .github/**/*
-# - .gitlab-ci.yml
-# - "*.md"
-# only:
-# refs:
-# - master
-# - /^.*bugfix.*$/
-# - /^.*hotfix.*$/
-# - /^.*release.*$/
-#
-#tag backend:
-# stage: build
-# script:
-# - update_pom_version
-# - mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test -Dmaven.test.failure.ignore=true -DskipTests=true -U
-# - mvn package spring-boot:repackage
-# - mv target/app.jar $PWD/docker
-# - saveImageMetadata
-# - docker build --platform linux/arm64 -t ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}-arm -f $PWD/docker/Dockerfile $PWD/docker
-# - docker push ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}-arm
-# - kaniko -c $PWD/docker -f $PWD/docker/Dockerfile -d ${DOCKER_REGISTRY}/${GROUP_NAME}/${PROJECT_NAME}:${CI_COMMIT_TAG}
-# only:
-# refs:
-# - tags
-#
-#
-#release backend:
-# stage: release
-# script:
-# - chart_build
-# except:
-# changes:
-# - .editorconfig
-# - .eslintrc.json
-# - .stylelintrc.json
-# - gulpfile.js
-# - package.json
-# - react/**/*
-# - .gitignore
-# - .github/**/*
-# - .gitlab-ci.yml
-# - "*.md"
-#
-#
-#tag release:
-# stage: release
-# script:
-# - chart_build
-# only:
-# - tags
-#
-#.auto_devops: &auto_devops |
-# http_status_code=`curl -o .auto_devops.sh -s -m 10 --connect-timeout 10 -w %{http_code} "${CHOERODON_URL}/devops/ci?token=${Token}&type=microservice"`
-# if [ "$http_status_code" != "200" ]; then
-# cat .auto_devops.sh
-# exit 1
-# fi
-# source .auto_devops.sh
-#
-#before_script:
-# - *auto_devops
+##
+##
+##release backend:
+## stage: release
+## script:
+## - chart_build
+## except:
+## changes:
+## - .editorconfig
+## - .eslintrc.json
+## - .stylelintrc.json
+## - gulpfile.js
+## - package.json
+## - react/**/*
+## - .gitignore
+## - .github/**/*
+## - .gitlab-ci.yml
+## - "*.md"
+##
+##
+##tag release:
+## stage: release
+## script:
+## - chart_build
+## only:
+## - tags
+##
+##.auto_devops: &auto_devops |
+## http_status_code=`curl -o .auto_devops.sh -s -m 10 --connect-timeout 10 -w %{http_code} "${CHOERODON_URL}/devops/ci?token=${Token}&type=microservice"`
+## if [ "$http_status_code" != "200" ]; then
+## cat .auto_devops.sh
+## exit 1
+## fi
+## source .auto_devops.sh
+##
+##before_script:
+## - *auto_devops
\ No newline at end of file
diff --git a/charts/workflow-service/templates/deployment.yaml b/charts/workflow-service/templates/deployment.yaml
index 27e7232..99aa66c 100755
--- a/charts/workflow-service/templates/deployment.yaml
+++ b/charts/workflow-service/templates/deployment.yaml
@@ -194,9 +194,8 @@ spec:
{{- end }}
{{- if .Values.startupProbe.enabled }}
startupProbe:
- httpGet:
- path: /actuator/health
- port: actuator
+ tcpSocket:
+ port: server
initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.startupProbe.periodSeconds }}
timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }}
diff --git a/charts/workflow-service/values.yaml b/charts/workflow-service/values.yaml
index 28495a2..fa2150e 100755
--- a/charts/workflow-service/values.yaml
+++ b/charts/workflow-service/values.yaml
@@ -147,7 +147,7 @@ commonAnnotations: {}
## extraEnv:
## FOO: "bar"
##
-extraEnv:
+extraEnv:
# 是否启用配置中心
SPRING_CLOUD_CONFIG_ENABLED: false
# 配置中心地址
@@ -166,8 +166,14 @@ extraEnv:
SPRING_DATASOURCE_USERNAME: choerodon
# 数据库密码
SPRING_DATASOURCE_PASSWORD: password
- # 环境域名地址
- HWKF_WEB_DOMAIN_NAME: http://example.com
+ # hzero前端地址
+ HWKF_WEB_DOMAIN_NAME: www.example.com
+ # 工作流是否对接aPaaS模型
+ HWKF_MODEL_ENABLE: false
+ # 是否允许工作流服务通过数据库跨schema查询组织架构信息
+ HWKF_HR_CROSS_SCHEMA_ENABLED: false
+ # 允许工作流服务通过数据库跨schema查询组织架构信息时, 组织架构所在schema名称
+ HWKF_HPFM_SCHEMA_NAME: hzero_platform
# 百分比使用物理内存,预留一部分用于堆外内存以及外部程序
# JAVA_OPTS: >-
# -XX:MaxRAMPercentage=90.0
@@ -195,15 +201,15 @@ args: []
# -- Scheduler name
## https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
##
-schedulerName:
+schedulerName:
-# -- EnableServiceLinks indicates whether information about services should be injected into pod's environment variables,
+# -- EnableServiceLinks indicates whether information about services should be injected into pod's environment variables,
# matching the syntax of Docker links. Optional: Defaults to false.
-##
+##
enableServiceLinks: false
# -- AutomountServiceAccountToken indicates whether a service account token should be automatically mounted.
-##
+##
automountServiceAccountToken: false
## server deployment parameters
@@ -232,7 +238,7 @@ hostAliases: []
## server container ports to open
##
-containerPort:
+containerPort:
# -- server port
serverPort: 8065
# -- server management port
@@ -316,12 +322,12 @@ resources:
## lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# -- The resources limits for the init container
- limits:
+ limits:
# cpu: 2
memory: 3Gi
# -- The requested resources for the init container
- requests:
+ requests:
# cpu: 500m
memory: 2Gi
@@ -332,7 +338,7 @@ livenessProbe:
# -- Enable livenessProbe
enabled: true
# -- Initial delay seconds for livenessProbe
- initialDelaySeconds: 480
+ initialDelaySeconds: 300
# -- Period seconds for livenessProbe
periodSeconds: 5
# -- Timeout seconds for livenessProbe
@@ -340,12 +346,12 @@ livenessProbe:
# -- Success threshold for livenessProbe
successThreshold: 1
# -- Failure threshold for livenessProbe
- failureThreshold: 5
+ failureThreshold: 2
readinessProbe:
# -- Enable readinessProbe
enabled: true
# -- Initial delay seconds for readinessProbe
- initialDelaySeconds: 30
+ initialDelaySeconds: 20
# -- Period seconds for readinessProbe
periodSeconds: 5
# -- Timeout seconds for readinessProbe
@@ -353,16 +359,16 @@ readinessProbe:
# -- Success threshold for readinessProbe
successThreshold: 1
# -- Failure threshold for readinessProbe
- failureThreshold: 5
+ failureThreshold: 2
startupProbe:
# -- Enable startupProbe
- enabled: false
+ enabled: true
# -- Initial delay seconds for startupProbe
- initialDelaySeconds: 0
+ initialDelaySeconds: 10
# -- Period seconds for startupProbe
- periodSeconds: 5
+ periodSeconds: 3
# -- Timeout seconds for startupProbe
- timeoutSeconds: 3
+ timeoutSeconds: 2
# -- Success threshold for startupProbe
successThreshold: 1
# -- Failure threshold for startupProbe
@@ -424,9 +430,9 @@ skywalking:
## Skywalking Agent Configuration
## ref: https://github.com/apache/skywalking/blob/master/docs/en/setup/service-agent/java-agent/README.md#table-of-agent-configuration-properties
- # skywalking.serviceName -- The serviceName (Default .Chart.Name) to represent a logic group providing the same capabilities/logic.
+ # skywalking.serviceName -- The serviceName (Default .Chart.Name) to represent a logic group providing the same capabilities/logic.
# Suggestion: set a unique name for every logic service group, service instance nodes share the same code,Max length is 50(UTF-8 char).
- serviceName:
+ serviceName:
# -- Negative or zero means off, by default. sampleNPer3Secs means sampling N TraceSegment in 3 seconds tops.
sampleNPer3Secs: 9
@@ -435,7 +441,7 @@ skywalking:
collectorService: oap.skywalking:11800
# -- String to fully override Skywalking Agent Configuration template
- commandOverride:
+ commandOverride:
# -- Add sidecars to the server pods.
## e.g:
@@ -460,7 +466,7 @@ service:
type: ClusterIP
# -- server Service port
##
- port:
+ port:
server: 8065
actuator: 8066
# -- Specify the nodePort value for the LoadBalancer and NodePort service types.
@@ -595,7 +601,7 @@ persistence:
## set, choosing the default provisioner. (gp2 on AWS, standard on
## GKE, AWS & OpenStack)
##
- storageClass:
+ storageClass:
# -- Data volume mount path
##
@@ -612,7 +618,7 @@ persistence:
annotations: {}
# -- Enable persistence using an existing PVC
##
- existingClaim:
+ existingClaim:
# -- Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section.
volumePermissionsEnabled: false
diff --git a/pom.xml b/pom.xml
index 7cb5556..ff0cf1b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,137 +6,99 @@
io.choerodon
4.0.0
workflow-service
- 2.0.0.RELEASE
+ 2.2.0-SNAPSHOT
jar
https://github.com/choerodon/workflow-service
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.2.RELEASE
-
+ io.choerodon
+ choerodon-framework-parent
+ 2.1.0.RELEASE
8
- 7.0.109
+ 7.0.0.SR1
true
io.choerodon.workflow.WorkFlowServiceApplication
- 1.6.1.RELEASE
- 1.6.0.RELEASE
- 1.6.0.RELEASE
- 0.19.1.RELEASE
-
-
-
- org.activiti.dependencies
- activiti-dependencies
- ${activiti-dependencies.version}
- import
- pom
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- Finchley.SR2
- pom
- import
-
-
-
-
+
- com.thoughtworks.xstream
- xstream
- 1.4.14
-
-
- commons-beanutils
- commons-beanutils
- 1.9.3
-
-
- org.springframework
- spring-core
- 5.1.4.RELEASE
-
-
- org.activiti
- activiti-spring-boot-starter
+ org.hzero
+ hzero-workflow
+ 1.11.1.RELEASE
+
+
+ org.hzero.starter
+ hzero-starter-dynamic-route
+
+
+ com.google.guava
+ guava
+
+
+
org.hzero.starter
hzero-starter-core
- ${hzero.version}
org.hzero.starter
hzero-starter-metric
- ${hzero.starter.metric.version}
org.hzero.starter
hzero-starter-feign-replay
- ${hzero.feign.replay.version}
+ org.hzero.starter
+ hzero-starter-developer-route
+ 1.10.0-SNAPSHOT
+ true
+
+
+
+
io.choerodon
choerodon-starter-asgard
- ${choerodon.asgard.version}
-
-
- org.springframework.boot
- spring-boot-starter-actuator
+
+
org.springframework.boot
- spring-boot-starter-jdbc
+ spring-boot-starter-undertow
org.springframework.boot
spring-boot-starter-web
- 2.1.2.RELEASE
-
- org.apache.tomcat
- tomcat-jdbc
+ org.springframework.boot
+ spring-boot-starter-tomcat
+
+
+
+
+
+
+
org.springframework.cloud
spring-cloud-starter-netflix-eureka-client
- 2.0.2.RELEASE
-
org.springframework.cloud
spring-cloud-config-client
- 2.0.2.RELEASE
-
-
-
- org.springframework.boot
- spring-boot-starter-aop
-
-
-
- org.activiti
- activiti-bpmn-layout
- 7.0.130
-
-
-
- com.alibaba
- fastjson
- 1.2.68
+
mysql
mysql-connector-java
@@ -146,30 +108,38 @@
org.javassist
javassist
- 3.24.0-GA
+ 3.29.0-GA
+
- com.google.code.gson
- gson
-
-
- org.mybatis
- mybatis
- 3.5.6
-
-
- org.hzero
- hzero-workflow
- 1.6.2.RELEASE
+ org.activiti
+ activiti-spring-boot-starter
+ ${activiti-dependencies.version}
- org.hzero.starter
- hzero-starter-dynamic-route
+ mybatis
+ org.mybatis
+
+ org.activiti
+ activiti-bpmn-layout
+ ${activiti-dependencies.version}
+
+
+ com.thoughtworks.xstream
+ xstream
+ 1.4.19
+
+
+
+ com.google.code.gson
+ gson
+
+
app
@@ -211,14 +181,14 @@
-
- alfresco
- Activiti Releases
- https://artifacts.alfresco.com/nexus/content/repositories/activiti-releases/
-
- true
-
-
+
+
+
+
+
+
+
+
HandPublic
Hand-Public Repository
diff --git a/src/main/java/io/choerodon/workflow/WorkFlowServiceApplication.java b/src/main/java/io/choerodon/workflow/WorkFlowServiceApplication.java
index f8dbfea..a449d5c 100644
--- a/src/main/java/io/choerodon/workflow/WorkFlowServiceApplication.java
+++ b/src/main/java/io/choerodon/workflow/WorkFlowServiceApplication.java
@@ -1,7 +1,7 @@
package io.choerodon.workflow;
-import io.choerodon.resource.annoation.EnableChoerodonResourceServer;
-import org.hzero.autoconfigure.EnableHzeroWorkflow;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
@@ -10,6 +10,10 @@
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableAsync;
+import io.choerodon.resource.annoation.EnableChoerodonResourceServer;
+
+import org.hzero.autoconfigure.EnableHzeroWorkflow;
+
@EnableFeignClients("io.choerodon")
@EnableEurekaClient
@SpringBootApplication
@@ -19,11 +23,16 @@
@EnableHzeroWorkflow
@ComponentScan(value = {"org.hzero.workflow", "io.choerodon.workflow"})
public class WorkFlowServiceApplication {
-
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(WorkFlowServiceApplication.class);
+
public static void main(String[] args){
- SpringApplication.run(WorkFlowServiceApplication.class, args);
+ try{
+ SpringApplication.run(WorkFlowServiceApplication.class, args);
+ } catch (Throwable thr) {
+ LOGGER.error(thr.getMessage(), thr);
+ }
}
-
-
+
}
diff --git a/src/main/java/io/choerodon/workflow/api/controller/v1/OrganizationInvokeWorkflowConvertC7nController.java b/src/main/java/io/choerodon/workflow/api/controller/v1/OrganizationInvokeWorkflowConvertC7nController.java
index d1d652d..db31839 100644
--- a/src/main/java/io/choerodon/workflow/api/controller/v1/OrganizationInvokeWorkflowConvertC7nController.java
+++ b/src/main/java/io/choerodon/workflow/api/controller/v1/OrganizationInvokeWorkflowConvertC7nController.java
@@ -1,18 +1,29 @@
package io.choerodon.workflow.api.controller.v1;
+import java.util.List;
+import java.util.Map;
+
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.util.Assert;
+import org.springframework.web.bind.annotation.*;
+
import io.choerodon.core.iam.ResourceLevel;
import io.choerodon.swagger.annotation.Permission;
import io.choerodon.workflow.app.service.OrganizationWorkflowC7nService;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
import org.hzero.boot.platform.lov.annotation.ProcessLovValue;
+import org.hzero.core.base.BaseConstants;
import org.hzero.core.base.BaseController;
import org.hzero.core.util.Results;
import org.hzero.mybatis.helper.SecurityTokenHelper;
import org.hzero.starter.keyencrypt.core.Encrypt;
+import org.hzero.workflow.engine.model.node.FlowApproverValue;
import org.hzero.workflow.engine.run.action.AppointNextNodeApproverActionHandler;
-import org.hzero.workflow.engine.run.dto.ProcessRebutNodeDTO;
+import org.hzero.workflow.engine.run.dto.ProcessJumpNodeDTO;
+import org.hzero.workflow.engine.util.EngineConstants;
import org.hzero.workflow.monitor.api.dto.ProcessInstanceDTO;
import org.hzero.workflow.monitor.app.service.MonitorProcessService;
import org.hzero.workflow.personal.api.dto.DetailDTO;
@@ -22,17 +33,9 @@
import org.hzero.workflow.personal.domain.entity.RunAttachment;
import org.hzero.workflow.personal.domain.entity.RunCommentTemplate;
import org.hzero.workflow.personal.domain.repository.RunCommentTemplateRepository;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-import springfox.documentation.annotations.ApiIgnore;
-
-import java.util.List;
-import java.util.Map;
/**
- * @author zhaotianxin
- * @date 2021-03-16 10:01
+ * @author zhaotianxin 2021-03-16 10:01
*/
@RestController
@RequestMapping(value = "/choerodon/v1/organizations/{organization_id}/organization_invoke_workflow")
@@ -58,20 +61,18 @@ public class OrganizationInvokeWorkflowConvertC7nController extends BaseControll
@GetMapping("/run_comment_templates")
public ResponseEntity> commentTemplateList(@PathVariable("organization_id") Long organizationId,
@ApiParam(name = "审批意见",value = "commentContent")
- @RequestParam(required = false) String commentContent,
- @ApiIgnore @RequestParam(value = "self",required = false) String self) {
- return Results.success(this.runCommentTemplateService.commentTemplateList(organizationId, commentContent, self));
+ @RequestParam(required = false) String commentContent) {
+ return Results.success(this.runCommentTemplateService.commentTemplateList(organizationId, commentContent));
}
@ApiOperation("保存自定义审批意见")
@Permission(level = ResourceLevel.ORGANIZATION, permissionLogin = true)
@PostMapping("/run_comment_templates")
public ResponseEntity> saveCommentTemplate(@PathVariable("organization_id") Long organizationId,
- @RequestBody List runCommentTemplates,
- @ApiIgnore @RequestParam(value = "self",required = false) String self) {
- this.validList(runCommentTemplates, new Class[0]);
+ @RequestBody List runCommentTemplates) {
+ this.validList(runCommentTemplates);
SecurityTokenHelper.validTokenIgnoreInsert(runCommentTemplates);
- List result = this.runCommentTemplateService.saveCommentTemplate(organizationId, runCommentTemplates, self);
+ List result = this.runCommentTemplateService.saveCommentTemplate(organizationId, runCommentTemplates);
return Results.success(result);
}
@@ -82,7 +83,8 @@ public ResponseEntity enableCommentTemplate(@PathVariable("o
@RequestBody RunCommentTemplate runCommentTemplate,
@ApiParam(name = "启用1/禁用0",required = true)
@RequestParam Integer enabledFlag) {
- validObject(runCommentTemplate, new Class[0]);
+ Assert.notNull(organizationId, BaseConstants.ErrorCode.NOT_NULL);
+ validObject(runCommentTemplate);
RunCommentTemplate result = this.runCommentTemplateService.enableCommentTemplate(organizationId, runCommentTemplate, enabledFlag);
return Results.success(result);
}
@@ -92,6 +94,7 @@ public ResponseEntity enableCommentTemplate(@PathVariable("o
@DeleteMapping("/run_comment_templates")
public ResponseEntity removeCommentTemplate(@PathVariable("organization_id") Long organizationId,
@RequestBody RunCommentTemplate runCommentTemplate) {
+ Assert.notNull(organizationId, BaseConstants.ErrorCode.NOT_NULL);
SecurityTokenHelper.validToken(runCommentTemplate);
runCommentTemplateRepository.deleteByPrimaryKey(runCommentTemplate);
return Results.success();
@@ -103,7 +106,7 @@ public ResponseEntity removeCommentTemplate(@PathVariable("organization_id
@GetMapping({"/monitor_process/{instanceId}/diagram"})
public ResponseEntity getProcessInstanceDiagram(@PathVariable("organization_id") Long organizationId,
@PathVariable("instanceId") @Encrypt Long instanceId) {
- ProcessInstanceDTO.ProcessInstanceDiagramDTO diagramDTO = monitorProcessService.getProcessInstanceDiagram(organizationId, instanceId);
+ ProcessInstanceDTO.ProcessInstanceDiagramDTO diagramDTO = monitorProcessService.getProcessInstanceDiagram(organizationId, instanceId, null);
return Results.success(diagramDTO);
}
@@ -111,10 +114,9 @@ public ResponseEntity getProcessIn
@Permission(level = ResourceLevel.ORGANIZATION, permissionLogin = true)
@PostMapping({"/personal_process/approve"})
public ResponseEntity flowApprove(@PathVariable("organization_id") Long organizationId,
- @RequestParam("taskIds") @Encrypt List taskIds,
- @RequestParam("comment") String comment,
- @RequestParam(name = "assignee",required = false) String assignee) {
- personalActionService.approve(organizationId, taskIds, comment, assignee);
+ @Encrypt @RequestParam(value = "taskIds", required = false) List taskIds,
+ @RequestBody(required = false) Map paramMap) {
+ personalActionService.batchProcess(organizationId, taskIds, EngineConstants.ApproveAction.APPROVED,false,null, paramMap);
return Results.success();
}
@@ -122,10 +124,10 @@ public ResponseEntity flowApprove(@PathVariable("organization_id") Long or
@Permission(level = ResourceLevel.ORGANIZATION, permissionLogin = true)
@PostMapping({"/personal_process/reject"})
public ResponseEntity flowReject(@PathVariable("organization_id") Long organizationId,
- @RequestParam("taskIds") @Encrypt List taskIds,
- @RequestParam("comment") String comment,
- @RequestParam(name = "assignee",required = false) String assignee) {
- personalActionService.reject(organizationId, taskIds, comment, assignee);
+ @Encrypt @RequestParam(value = "taskIds", required = false) List taskIds,
+ @RequestParam(required = false) Integer reApproveFlag,
+ @RequestBody(required = false) Map paramMap) {
+ personalActionService.batchProcess(organizationId, taskIds, EngineConstants.ApproveAction.REJECTED, false, reApproveFlag, paramMap);
return Results.success();
}
@@ -135,7 +137,7 @@ public ResponseEntity flowReject(@PathVariable("organization_id") Long org
public ResponseEntity attachmentUpload(@PathVariable("organization_id") Long organizationId,
@RequestBody RunAttachment runAttachment) {
runAttachment.setTenantId(organizationId);
- validObject(runAttachment, new Class[0]);
+ validObject(runAttachment);
personalProcessService.attachmentUpload(runAttachment);
return Results.success();
}
@@ -145,14 +147,15 @@ public ResponseEntity attachmentUpload(@PathVariable("organization_id") Lo
@GetMapping({"/personal_process/{taskId}/forecastNextNode"})
public ResponseEntity