Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
bpm
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王厚康
bpm
Commits
76de1573
Commit
76de1573
authored
Feb 27, 2019
by
王厚康
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
接口定义
parent
40ebb7e4
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
333 additions
and
12 deletions
+333
-12
DeploymentController.java
src/main/java/com/bbd/bpm/controller/deployment/DeploymentController.java
+126
-0
TaskHistoryController.java
src/main/java/com/bbd/bpm/controller/taskHistory/TaskHistoryController.java
+17
-0
TaskOperateController.java
src/main/java/com/bbd/bpm/controller/taskOperate/TaskOperateController.java
+56
-0
ActReModelEntity.java
src/main/java/com/bbd/bpm/domain/ActReModelEntity.java
+124
-0
PutAssigneeListener.java
src/main/java/com/bbd/bpm/listener/PutAssigneeListener.java
+10
-12
No files found.
src/main/java/com/bbd/bpm/controller/deployment/DeploymentController.java
0 → 100644
View file @
76de1573
package
com
.
bbd
.
bpm
.
controller
.
deployment
;
import
com.bbd.bpm.BpmResponse
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.activiti.bpmn.converter.BpmnXMLConverter
;
import
org.activiti.bpmn.model.BpmnModel
;
import
org.activiti.editor.language.json.converter.BpmnJsonConverter
;
import
org.activiti.engine.RepositoryService
;
import
org.activiti.engine.RuntimeService
;
import
org.activiti.engine.repository.Deployment
;
import
org.activiti.engine.repository.DeploymentBuilder
;
import
org.activiti.engine.repository.Model
;
import
org.activiti.engine.repository.ProcessDefinition
;
import
org.activiti.engine.runtime.ProcessInstance
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* Created by houkang on 2019/2/22.
*/
@RestController
@RequestMapping
(
"/bpm/model"
)
@Api
(
tags
=
{
"流程管理"
})
public
class
DeploymentController
{
private
static
final
Logger
Log
=
LoggerFactory
.
getLogger
(
DeploymentController
.
class
);
@Autowired
private
RepositoryService
repositoryService
;
@Autowired
private
RuntimeService
runtimeService
;
@ApiOperation
(
value
=
"查询流程列表"
)
@GetMapping
(
"/modelList"
)
public
BpmResponse
modelList
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
@ApiOperation
(
value
=
"删除流程"
)
@GetMapping
(
"/deleteModel"
)
public
BpmResponse
deleteModel
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
@ApiOperation
(
value
=
"部署流程"
)
@GetMapping
(
"/deploymentModel"
)
public
BpmResponse
deploymentModel
(
final
String
modelId
)
{
BpmResponse
resp
=
new
BpmResponse
();
resp
.
setSuccess
(
true
);
try
{
Model
modelData
=
repositoryService
.
getModel
(
modelId
);
ObjectNode
modelNode
=
(
ObjectNode
)
new
ObjectMapper
().
readTree
(
repositoryService
.
getModelEditorSource
(
modelData
.
getId
()));
byte
[]
bpmnBytes
=
null
;
BpmnModel
model
=
new
BpmnJsonConverter
().
convertToBpmnModel
(
modelNode
);
bpmnBytes
=
new
BpmnXMLConverter
().
convertToXML
(
model
);
String
processName
=
modelData
.
getName
()
+
".bpmn20.xml"
;
DeploymentBuilder
db
=
repositoryService
.
createDeployment
().
name
(
modelData
.
getName
());
Deployment
deployment
=
db
.
addString
(
processName
,
new
String
(
bpmnBytes
,
"utf-8"
)).
deploy
();
//需要在 model表里保存 deploymentid
modelData
.
setDeploymentId
(
deployment
.
getId
());
//保存 model
//todo
resp
.
setData
(
deployment
.
getId
());
}
catch
(
Exception
e
)
{
Log
.
error
(
modelId
+
"部署失败"
,
e
);
resp
.
setSuccess
(
false
);
}
return
resp
;
}
@ApiOperation
(
value
=
"删除部署"
)
@GetMapping
(
"/deleteDeployment"
)
public
BpmResponse
deleteDeployment
(
String
deploymentId
)
{
BpmResponse
resp
=
new
BpmResponse
();
// processEngine.getRepositoryService().deleteDeployment(deploymentId, true);
//todo
return
resp
;
}
@ApiOperation
(
value
=
"开启流程"
)
@GetMapping
(
"/startModel"
)
public
BpmResponse
startModel
(
final
String
deploymentId
,
String
bussinessKey
)
{
BpmResponse
resp
=
new
BpmResponse
();
resp
.
setSuccess
(
true
);
try
{
//获取流程定义
ProcessDefinition
processDefinition
=
repositoryService
.
createProcessDefinitionQuery
().
deploymentId
(
deploymentId
).
singleResult
();
//启动流程定义,返回流程实例
Map
<
String
,
Object
>
variables
=
new
HashMap
<
String
,
Object
>();
variables
.
put
(
"user"
,
"yuagong1"
);
ProcessInstance
pi
=
runtimeService
.
startProcessInstanceByKey
(
processDefinition
.
getKey
(),
bussinessKey
,
variables
);
String
processId
=
pi
.
getId
();
System
.
out
.
println
(
"流程创建成功,当前流程实例ID:"
+
processId
);
resp
.
setData
(
processId
);
}
catch
(
Exception
e
)
{
Log
.
error
(
deploymentId
+
"开启失败"
,
e
);
resp
.
setSuccess
(
false
);
resp
.
setMessage
(
"开启失败"
);
}
return
resp
;
}
}
src/main/java/com/bbd/bpm/controller/taskHistory/TaskHistoryController.java
0 → 100644
View file @
76de1573
package
com
.
bbd
.
bpm
.
controller
.
taskHistory
;
import
io.swagger.annotations.Api
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* Created by houkang on 2019/2/27.
*/
@RestController
@RequestMapping
(
"/bpm/history"
)
@Api
(
tags
=
{
"历史任务管理"
})
public
class
TaskHistoryController
{
private
static
final
Logger
Log
=
LoggerFactory
.
getLogger
(
TaskHistoryController
.
class
);
}
src/main/java/com/bbd/bpm/controller/taskOperate/TaskOperateController.java
0 → 100644
View file @
76de1573
package
com
.
bbd
.
bpm
.
controller
.
taskOperate
;
import
com.bbd.bpm.BpmResponse
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* Created by houkang on 2019/2/27.
*/
@RestController
@RequestMapping
(
"/bpm/task"
)
@Api
(
tags
=
{
"任务管理"
})
public
class
TaskOperateController
{
private
static
final
Logger
Log
=
LoggerFactory
.
getLogger
(
TaskOperateController
.
class
);
@ApiOperation
(
value
=
"查询待处理任务"
)
@GetMapping
(
"/pendingTaskList"
)
public
BpmResponse
pendingTaskList
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
@ApiOperation
(
value
=
"改变任务处理人"
)
@GetMapping
(
"/appointTaskTo"
)
public
BpmResponse
appointTaskTo
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
@ApiOperation
(
value
=
"删除任务"
)
@GetMapping
(
"/deleteTask"
)
public
BpmResponse
deleteTask
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
@ApiOperation
(
value
=
"任务处理"
)
@GetMapping
(
"/completeTask"
)
public
BpmResponse
completeTask
()
{
BpmResponse
resp
=
new
BpmResponse
();
//todo
return
resp
;
}
}
src/main/java/com/bbd/bpm/domain/ActReModelEntity.java
0 → 100644
View file @
76de1573
package
com
.
bbd
.
bpm
.
domain
;
import
javax.persistence.*
;
import
java.sql.Timestamp
;
/**
* Created by houkang on 2019/2/22.
*/
@Entity
@Table
(
name
=
"act_re_model"
)
public
class
ActReModelEntity
{
private
String
id
;
private
Integer
rev
;
private
String
name
;
private
String
key
;
private
String
category
;
private
Timestamp
createTime
;
private
Timestamp
lastUpdateTime
;
private
Integer
version
;
private
String
metaInfo
;
private
String
tenantId
;
@Id
@Column
(
name
=
"ID_"
)
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
@Basic
@Column
(
name
=
"REV_"
)
public
Integer
getRev
()
{
return
rev
;
}
public
void
setRev
(
Integer
rev
)
{
this
.
rev
=
rev
;
}
@Basic
@Column
(
name
=
"NAME_"
)
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
@Basic
@Column
(
name
=
"KEY_"
)
public
String
getKey
()
{
return
key
;
}
public
void
setKey
(
String
key
)
{
this
.
key
=
key
;
}
@Basic
@Column
(
name
=
"CATEGORY_"
)
public
String
getCategory
()
{
return
category
;
}
public
void
setCategory
(
String
category
)
{
this
.
category
=
category
;
}
@Basic
@Column
(
name
=
"CREATE_TIME_"
)
public
Timestamp
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Timestamp
createTime
)
{
this
.
createTime
=
createTime
;
}
@Basic
@Column
(
name
=
"LAST_UPDATE_TIME_"
)
public
Timestamp
getLastUpdateTime
()
{
return
lastUpdateTime
;
}
public
void
setLastUpdateTime
(
Timestamp
lastUpdateTime
)
{
this
.
lastUpdateTime
=
lastUpdateTime
;
}
@Basic
@Column
(
name
=
"VERSION_"
)
public
Integer
getVersion
()
{
return
version
;
}
public
void
setVersion
(
Integer
version
)
{
this
.
version
=
version
;
}
@Basic
@Column
(
name
=
"META_INFO_"
)
public
String
getMetaInfo
()
{
return
metaInfo
;
}
public
void
setMetaInfo
(
String
metaInfo
)
{
this
.
metaInfo
=
metaInfo
;
}
@Basic
@Column
(
name
=
"TENANT_ID_"
)
public
String
getTenantId
()
{
return
tenantId
;
}
public
void
setTenantId
(
String
tenantId
)
{
this
.
tenantId
=
tenantId
;
}
}
src/main/java/com/bbd/bpm/listener/PutAssigneeListener.java
View file @
76de1573
...
...
@@ -5,6 +5,7 @@ import org.activiti.engine.ProcessEngines;
import
org.activiti.engine.TaskService
;
import
org.activiti.engine.delegate.DelegateTask
;
import
org.activiti.engine.delegate.TaskListener
;
import
org.activiti.engine.impl.el.FixedValue
;
import
java.io.Serializable
;
...
...
@@ -12,24 +13,21 @@ import java.io.Serializable;
* Created by houkang on 2019/1/28.
*/
public
class
PutAssigneeListener
implements
Serializable
,
TaskListener
{
// private String
job;
private
FixedValue
job
;
@Override
public
void
notify
(
DelegateTask
delegateTask
)
{
ProcessEngine
processEngine
=
ProcessEngines
.
getDefaultProcessEngine
();
TaskService
taskService
=
processEngine
.
getTaskService
();
//System.out.println("========================= "+job+" =============");
// if(job!=null){
// if("jingli".equals(job)){
// delegateTask.setAssignee("wang");
// }else if("emp".equals(job)){
// delegateTask.setAssignee("houkang");
// }
// }else{
if
(
job
!=
null
){
if
(
"jingli"
.
equals
(
job
.
getExpressionText
())){
delegateTask
.
setAssignee
(
"wang"
);
}
else
if
(
"emp"
.
equals
(
job
.
getExpressionText
())){
delegateTask
.
setAssignee
(
"houkang"
);
}
}
else
{
taskService
.
setAssignee
(
delegateTask
.
getId
(),
"hr"
);
//
}
}
}
//
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment