Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
T
test
Project
Project
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
邬友楠
test
Commits
d382ecaa
Commit
d382ecaa
authored
Jan 13, 2020
by
雍欢
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
流程节点审批(大于多少人通过或超过一半人通过)
parent
f980a78d
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
928 additions
and
998 deletions
+928
-998
ApprovalRuleApplication.java
...pm/configuration/application/ApprovalRuleApplication.java
+108
-143
ApprovalRule.java
...gou/uasp/bpm/configuration/domain/model/ApprovalRule.java
+11
-7
ApprovalRuleHandlerGroup.java
.../configuration/domain/model/ApprovalRuleHandlerGroup.java
+14
-0
ActApplication.java
...om/huigou/uasp/bpm/engine/application/ActApplication.java
+134
-199
ProcUnitHandlerBase.java
...gou/uasp/bpm/engine/domain/model/ProcUnitHandlerBase.java
+32
-16
SQLBuilderImpl.java
...ava/com/huigou/data/query/parser/impl/SQLBuilderImpl.java
+3
-4
FlowBroker.java
...ou-uasp/src/main/java/com/huigou/uasp/bpm/FlowBroker.java
+560
-583
ApprovalRuleApplicationImpl.java
...uration/application/impl/ApprovalRuleApplicationImpl.java
+35
-9
ApprovalRuleController.java
.../bpm/configuration/controller/ApprovalRuleController.java
+10
-7
ActApplicationImpl.java
.../uasp/bpm/engine/application/impl/ActApplicationImpl.java
+17
-29
ApprovalHandlerDetailConfig.jsp
...m/configtool/approvalRule/ApprovalHandlerDetailConfig.jsp
+4
-1
No files found.
huigou-core-api/src/main/java/com/huigou/uasp/bpm/configuration/application/ApprovalRuleApplication.java
View file @
d382ecaa
...
@@ -30,8 +30,7 @@ public interface ApprovalRuleApplication {
...
@@ -30,8 +30,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 保存审批要素
* 保存审批要素
*
*
* @param approvalElement
* @param approvalElement 审批要素
* 审批要素
* @return 审批要素ID
* @return 审批要素ID
*/
*/
String
saveApprovalElement
(
ApprovalElement
approvalElement
);
String
saveApprovalElement
(
ApprovalElement
approvalElement
);
...
@@ -39,8 +38,7 @@ public interface ApprovalRuleApplication {
...
@@ -39,8 +38,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 加载审批要素
* 加载审批要素
*
*
* @param id
* @param id 审批要素ID
* 审批要素ID
* @return 审批要素实体
* @return 审批要素实体
*/
*/
ApprovalElement
loadApprovalElement
(
String
id
);
ApprovalElement
loadApprovalElement
(
String
id
);
...
@@ -48,16 +46,14 @@ public interface ApprovalRuleApplication {
...
@@ -48,16 +46,14 @@ public interface ApprovalRuleApplication {
/**
/**
* 删除审批要素
* 删除审批要素
*
*
* @param ids
* @param ids 审批要素ID列表
* 审批要素ID列表
*/
*/
void
deleteApprovalElements
(
List
<
String
>
ids
);
void
deleteApprovalElements
(
List
<
String
>
ids
);
/**
/**
* 分页查询审批要素
* 分页查询审批要素
*
*
* @param queryRequest
* @param queryRequest 查询模型
* 查询模型
* @return
* @return
*/
*/
Map
<
String
,
Object
>
slicedQueryApprovalElements
(
CodeAndNameQueryRequest
queryRequest
);
Map
<
String
,
Object
>
slicedQueryApprovalElements
(
CodeAndNameQueryRequest
queryRequest
);
...
@@ -79,8 +75,7 @@ public interface ApprovalRuleApplication {
...
@@ -79,8 +75,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 保存审批处理人类别
* 保存审批处理人类别
*
*
* @param approvalHandlerKind
* @param approvalHandlerKind 审批处理人类别
* 审批处理人类别
* @return 审批处理人类别ID
* @return 审批处理人类别ID
*/
*/
String
saveApprovalHandlerKind
(
ApprovalHandlerKind
approvalHandlerKind
);
String
saveApprovalHandlerKind
(
ApprovalHandlerKind
approvalHandlerKind
);
...
@@ -117,12 +112,9 @@ public interface ApprovalRuleApplication {
...
@@ -117,12 +112,9 @@ public interface ApprovalRuleApplication {
/**
/**
* 保存流程审批要素
* 保存流程审批要素
*
*
* @param procId
* @param procId 流程ID
* 流程ID
* @param procUnitId 流程环节ID
* @param procUnitId
* @param elementIds 审批要素ID列表
* 流程环节ID
* @param elementIds
* 审批要素ID列表
*/
*/
void
saveProcApprovalElement
(
String
procId
,
String
procUnitId
,
List
<
String
>
elementIds
);
void
saveProcApprovalElement
(
String
procId
,
String
procUnitId
,
List
<
String
>
elementIds
);
...
@@ -141,10 +133,8 @@ public interface ApprovalRuleApplication {
...
@@ -141,10 +133,8 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询流程审批要素
* 查询流程审批要素
*
*
* @param procId
* @param procId 流程ID
* 流程ID
* @param procUnitId 流程环节ID
* @param procUnitId
* 流程环节ID
* @return
* @return
*/
*/
List
<
ProcApprovalElementDesc
>
queryProcApprovalElements
(
String
procId
,
String
procUnitId
);
List
<
ProcApprovalElementDesc
>
queryProcApprovalElements
(
String
procId
,
String
procUnitId
);
...
@@ -164,8 +154,7 @@ public interface ApprovalRuleApplication {
...
@@ -164,8 +154,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 更新流程审批规则
* 更新流程审批规则
*
*
* @param approvalRule
* @param approvalRule 审批规则
* 审批规则
* 原名称
* 原名称
*/
*/
void
updateApprovalRule
(
ApprovalRule
approvalRule
);
void
updateApprovalRule
(
ApprovalRule
approvalRule
);
...
@@ -173,8 +162,7 @@ public interface ApprovalRuleApplication {
...
@@ -173,8 +162,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 加载流程审批规则
* 加载流程审批规则
*
*
* @param id
* @param id 流程审批规则ID
* 流程审批规则ID
* @return
* @return
*/
*/
ApprovalRule
loadApprovalRule
(
String
id
);
ApprovalRule
loadApprovalRule
(
String
id
);
...
@@ -182,34 +170,26 @@ public interface ApprovalRuleApplication {
...
@@ -182,34 +170,26 @@ public interface ApprovalRuleApplication {
/**
/**
* 删除流程审批规则
* 删除流程审批规则
*
*
* @param ids
* @param ids 审批规则ID列表
* 审批规则ID列表
*/
*/
void
deleteApprovalRules
(
List
<
String
>
ids
);
void
deleteApprovalRules
(
List
<
String
>
ids
);
/**
/**
* 移动审批规则
* 移动审批规则
*
*
* @param id
* @param id 审批规则ID
* 审批规则ID
* @param parentId 父ID
* @param parentId
* 父ID
*/
*/
void
moveApprovalRules
(
String
id
,
String
parentId
);
void
moveApprovalRules
(
String
id
,
String
parentId
);
/**
/**
* 查询流程审批规则
* 查询流程审批规则
*
*
* @param orgId
* @param orgId 组织ID
* 组织ID
* @param procId 流程ID
* @param procId
* @param procUnitId 流程环节ID
* 流程ID
* @param procUnitName 流程环节名称
* @param procUnitId
* @param parentId 父ID
* 流程环节ID
* @param procUnitName
* 流程环节名称
* @param parentId
* 父ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalRules
(
String
orgId
,
String
procId
,
String
procUnitId
,
String
procUnitName
,
String
parentId
);
Map
<
String
,
Object
>
queryApprovalRules
(
String
orgId
,
String
procId
,
String
procUnitId
,
String
procUnitName
,
String
parentId
);
...
@@ -217,12 +197,9 @@ public interface ApprovalRuleApplication {
...
@@ -217,12 +197,9 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询流程审批规则
* 查询流程审批规则
*
*
* @param procId
* @param procId 流程Id
* 流程Id
* @param procUnitId 流程环节ID
* @param procUnitId
* @param parentId 父ID
* 流程环节ID
* @param parentId
* 父ID
* @return
* @return
*/
*/
List
<
ApprovalRule
>
queryApprovalRules
(
String
procId
,
String
procUnitId
,
String
parentId
);
List
<
ApprovalRule
>
queryApprovalRules
(
String
procId
,
String
procUnitId
,
String
parentId
);
...
@@ -230,30 +207,24 @@ public interface ApprovalRuleApplication {
...
@@ -230,30 +207,24 @@ public interface ApprovalRuleApplication {
/**
/**
* 保存审批规则要素
* 保存审批规则要素
*
*
* @param approvalRuleId
* @param approvalRuleId 审批规则ID
* 审批规则ID
* @param approvalRuleElements 审批规则要素
* @param approvalRuleElements
* 审批规则要素
*/
*/
void
saveApprovalRuleElements
(
String
approvalRuleId
,
List
<
ApprovalRuleElement
>
approvalRuleElements
);
void
saveApprovalRuleElements
(
String
approvalRuleId
,
List
<
ApprovalRuleElement
>
approvalRuleElements
);
/**
/**
* 删除审批规则要素
* 删除审批规则要素
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则ID
* 流程审批规则ID
* @param ids 审批规则要素ID列表
* @param ids
* 审批规则要素ID列表
*/
*/
void
deleteApprovalRuleElements
(
String
approvalRuleId
,
List
<
String
>
ids
);
void
deleteApprovalRuleElements
(
String
approvalRuleId
,
List
<
String
>
ids
);
/**
/**
* 查询审批规则要素
* 查询审批规则要素
*
*
* @param approvalRuleId
* @param approvalRuleId 审批规则ID
* 审批规则ID
* @param queryRequest 分页信息
* @param queryRequest
* 分页信息
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalRuleElements
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
Map
<
String
,
Object
>
queryApprovalRuleElements
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
...
@@ -261,8 +232,7 @@ public interface ApprovalRuleApplication {
...
@@ -261,8 +232,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 为流程图查询审批规则要素
* 为流程图查询审批规则要素
*
*
* @param approvalRuleId
* @param approvalRuleId 审批规则ID
* 审批规则ID
* @return
* @return
*/
*/
List
<
Map
<
String
,
Object
>>
queryApprovalRuleElementsForFlowChart
(
String
approvalRuleId
);
List
<
Map
<
String
,
Object
>>
queryApprovalRuleElementsForFlowChart
(
String
approvalRuleId
);
...
@@ -270,50 +240,56 @@ public interface ApprovalRuleApplication {
...
@@ -270,50 +240,56 @@ public interface ApprovalRuleApplication {
/**
/**
* 保存流程审批规则审批人
* 保存流程审批规则审批人
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则ID
* 流程审批规则ID
* @param approvalRuleHandlers 流程审批规则处理人列表
* @param approvalRuleHandlers
* 流程审批规则处理人列表
*/
*/
void
saveApprovalRuleHandlers
(
String
approvalRuleId
,
List
<
ApprovalRuleHandler
>
approvalRuleHandlers
);
void
saveApprovalRuleHandlers
(
String
approvalRuleId
,
List
<
ApprovalRuleHandler
>
approvalRuleHandlers
);
/**
/**
* 保存流程审批规则审批人明细
* 保存流程审批规则审批人明细
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则ID
* 流程审批规则ID
* @param approvalRuleHandler 流程审批规则处理人
* @param approvalRuleHandler
* @param taskExecuteMode 任务执行模式
* 流程审批规则处理人
* @param assistants 协审
* @param taskExecuteMode
* @param ccs 抄送
* 任务执行模式
* @param fieldAuthorizations 字段授权
* @param assistants
* @deprecated 已被 {@link #saveApprovalRuleHandler(String, ApprovalRuleHandler, TaskExecuteMode, Integer, List, List, List)} 替代。
* 协审
* @param ccs
* 抄送
* @param fieldAuthorizations
* 字段授权
*/
*/
@Deprecated
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerUIElmentPermission
>
fieldAuthorizations
);
List
<
ApprovalRuleHandlerUIElmentPermission
>
fieldAuthorizations
);
/**
* 保存流程审批规则审批人明细
*
* @param approvalRuleId 流程审批规则ID
* @param approvalRuleHandler 流程审批规则处理人
* @param taskExecuteMode 任务执行模式
* @param limitHandler 最少审批人数
* @param assistants 协审
* @param ccs 抄送
* @param fieldAuthorizations 字段授权
* @since 1.1.3
*/
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
Integer
limitHandler
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerUIElmentPermission
>
fieldAuthorizations
);
/**
/**
* 删除流程审批规则审批人
* 删除流程审批规则审批人
*
*
* @param approvalRule
* @param approvalRule 流程审批规则
* 流程审批规则
* @param ids 流程审批规则审批人ID列表
* @param ids
* 流程审批规则审批人ID列表
*/
*/
void
deleteApprovalRuleHandlers
(
String
approvalRuleId
,
List
<
String
>
ids
);
void
deleteApprovalRuleHandlers
(
String
approvalRuleId
,
List
<
String
>
ids
);
/**
/**
* 查询审批规则处理人
* 查询审批规则处理人
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则ID
* 流程审批规则ID
* @param queryRequest 分页信息
* @param queryRequest
* 分页信息
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalRuleHandlers
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
Map
<
String
,
Object
>
queryApprovalRuleHandlers
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
...
@@ -321,8 +297,7 @@ public interface ApprovalRuleApplication {
...
@@ -321,8 +297,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询审批环节协审人员
* 查询审批环节协审人员
*
*
* @param approvalRuleHandlerId
* @param approvalRuleHandlerId 审批规则处理人ID
* 审批规则处理人ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryAssistantHandlers
(
String
approvalRuleHandlerId
);
Map
<
String
,
Object
>
queryAssistantHandlers
(
String
approvalRuleHandlerId
);
...
@@ -330,8 +305,7 @@ public interface ApprovalRuleApplication {
...
@@ -330,8 +305,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询抄送人员
* 查询抄送人员
*
*
* @param approvalRuleHandlerId
* @param approvalRuleHandlerId 审批规则处理人ID
* 审批规则处理人ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryCCHandlers
(
String
approvalRuleHandlerId
);
Map
<
String
,
Object
>
queryCCHandlers
(
String
approvalRuleHandlerId
);
...
@@ -339,8 +313,7 @@ public interface ApprovalRuleApplication {
...
@@ -339,8 +313,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询界面元素权限
* 查询界面元素权限
*
*
* @param approvalRuleHandlerId
* @param approvalRuleHandlerId 审批规则处理人ID
* 审批规则处理人ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryUIElementPermissions
(
String
approvalRuleHandlerId
);
Map
<
String
,
Object
>
queryUIElementPermissions
(
String
approvalRuleHandlerId
);
...
@@ -348,12 +321,9 @@ public interface ApprovalRuleApplication {
...
@@ -348,12 +321,9 @@ public interface ApprovalRuleApplication {
/**
/**
* 获取审批处理人时间限制
* 获取审批处理人时间限制
*
*
* @param procId
* @param procId 流程ID
* 流程ID
* @param procUnitId 流程环节ID
* @param procUnitId
* @param approvalRuleHandlerId 审批规则处理人ID
* 流程环节ID
* @param approvalRuleHandlerId
* 审批规则处理人ID
* @return
* @return
*/
*/
LimitTime
getApprovalRuleHandlerLimitTime
(
String
procId
,
String
procUnitId
,
String
approvalRuleHandlerId
);
LimitTime
getApprovalRuleHandlerLimitTime
(
String
procId
,
String
procUnitId
,
String
approvalRuleHandlerId
);
...
@@ -361,8 +331,7 @@ public interface ApprovalRuleApplication {
...
@@ -361,8 +331,7 @@ public interface ApprovalRuleApplication {
/**
/**
* 加载审批规则处理人
* 加载审批规则处理人
*
*
* @param approvalRuleHandlerId
* @param approvalRuleHandlerId 审批规则处理人ID
* 审批规则处理人ID
* @return
* @return
*/
*/
ApprovalRuleHandler
loadApprovalRuleHandler
(
String
approvalRuleHandlerId
);
ApprovalRuleHandler
loadApprovalRuleHandler
(
String
approvalRuleHandlerId
);
...
@@ -374,10 +343,8 @@ public interface ApprovalRuleApplication {
...
@@ -374,10 +343,8 @@ public interface ApprovalRuleApplication {
/**
/**
* 删除审批规则适用范围
* 删除审批规则适用范围
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则
* 流程审批规则
* @param ids 审批规则要素ID列表
* @param ids
* 审批规则要素ID列表
*/
*/
void
deleteApprovalRuleScopes
(
String
approvalRuleId
,
List
<
String
>
ids
);
void
deleteApprovalRuleScopes
(
String
approvalRuleId
,
List
<
String
>
ids
);
...
@@ -385,10 +352,8 @@ public interface ApprovalRuleApplication {
...
@@ -385,10 +352,8 @@ public interface ApprovalRuleApplication {
/**
/**
* 查询审批规则适用范围
* 查询审批规则适用范围
*
*
* @param approvalRuleId
* @param approvalRuleId 流程审批规则ID
* 流程审批规则ID
* @param queryRequest 分页信息
* @param queryRequest
* 分页信息
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalRuleScopes
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
Map
<
String
,
Object
>
queryApprovalRuleScopes
(
String
approvalRuleId
,
EmptyQueryRequest
queryRequest
);
...
...
huigou-core-api/src/main/java/com/huigou/uasp/bpm/configuration/domain/model/ApprovalRule.java
View file @
d382ecaa
...
@@ -3,6 +3,7 @@ package com.huigou.uasp.bpm.configuration.domain.model;
...
@@ -3,6 +3,7 @@ package com.huigou.uasp.bpm.configuration.domain.model;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Objects
;
import
javax.persistence.CascadeType
;
import
javax.persistence.CascadeType
;
import
javax.persistence.Column
;
import
javax.persistence.Column
;
...
@@ -27,7 +28,7 @@ import com.huigou.data.domain.model.TreeEntity;
...
@@ -27,7 +28,7 @@ import com.huigou.data.domain.model.TreeEntity;
@Entity
@Entity
@Table
(
name
=
"WF_ApprovalRule"
)
@Table
(
name
=
"WF_ApprovalRule"
)
@EntityListeners
({
CreatorAndModifierListener
.
class
})
@EntityListeners
({
CreatorAndModifierListener
.
class
})
public
class
ApprovalRule
extends
TreeEntity
{
public
class
ApprovalRule
extends
TreeEntity
{
public
static
final
String
ROOT_ID
=
"1"
;
public
static
final
String
ROOT_ID
=
"1"
;
...
@@ -291,9 +292,12 @@ public class ApprovalRule extends TreeEntity {
...
@@ -291,9 +292,12 @@ public class ApprovalRule extends TreeEntity {
}
}
public
ApprovalRuleHandlerGroup
findApprovalRuleHandlerGroup
(
Integer
groupId
)
{
public
ApprovalRuleHandlerGroup
findApprovalRuleHandlerGroup
(
Integer
groupId
)
{
for
(
ApprovalRuleHandlerGroup
item
:
this
.
getApprovalRuleHandlerGroups
())
{
List
<
ApprovalRuleHandlerGroup
>
approvalRuleHandlerGroups
=
this
.
getApprovalRuleHandlerGroups
();
if
(
item
.
getGroupId
().
equals
(
groupId
))
{
if
(
approvalRuleHandlerGroups
!=
null
)
{
return
item
;
for
(
ApprovalRuleHandlerGroup
group
:
approvalRuleHandlerGroups
)
{
if
(
Objects
.
equals
(
group
.
getGroupId
(),
groupId
))
{
return
group
;
}
}
}
}
}
return
null
;
return
null
;
...
@@ -348,7 +352,7 @@ public class ApprovalRule extends TreeEntity {
...
@@ -348,7 +352,7 @@ public class ApprovalRule extends TreeEntity {
return
result
;
return
result
;
}
}
public
static
boolean
isCategory
(
int
id
){
public
static
boolean
isCategory
(
int
id
)
{
return
CATEGORY
.
getId
()
==
id
;
return
CATEGORY
.
getId
()
==
id
;
}
}
}
}
...
...
huigou-core-api/src/main/java/com/huigou/uasp/bpm/configuration/domain/model/ApprovalRuleHandlerGroup.java
View file @
d382ecaa
...
@@ -31,6 +31,13 @@ public class ApprovalRuleHandlerGroup extends AbstractEntity {
...
@@ -31,6 +31,13 @@ public class ApprovalRuleHandlerGroup extends AbstractEntity {
@Enumerated
(
EnumType
.
STRING
)
@Enumerated
(
EnumType
.
STRING
)
@Column
(
name
=
"task_execute_mode_id"
)
@Column
(
name
=
"task_execute_mode_id"
)
private
TaskExecuteMode
taskExecuteMode
;
private
TaskExecuteMode
taskExecuteMode
;
/**
* 最少审批人数
*
* @since 1.3.3
*/
@Column
(
name
=
"limit_handler"
)
private
Integer
limitHandler
;
public
TaskExecuteMode
getTaskExecuteMode
()
{
public
TaskExecuteMode
getTaskExecuteMode
()
{
return
taskExecuteMode
;
return
taskExecuteMode
;
...
@@ -40,4 +47,11 @@ public class ApprovalRuleHandlerGroup extends AbstractEntity {
...
@@ -40,4 +47,11 @@ public class ApprovalRuleHandlerGroup extends AbstractEntity {
this
.
taskExecuteMode
=
taskExecuteMode
;
this
.
taskExecuteMode
=
taskExecuteMode
;
}
}
public
Integer
getLimitHandler
()
{
return
limitHandler
;
}
public
void
setLimitHandler
(
Integer
limitHandler
)
{
this
.
limitHandler
=
limitHandler
;
}
}
}
huigou-core-api/src/main/java/com/huigou/uasp/bpm/engine/application/ActApplication.java
View file @
d382ecaa
...
@@ -21,28 +21,23 @@ public interface ActApplication {
...
@@ -21,28 +21,23 @@ public interface ActApplication {
/**
/**
* 保存任务扩展信息
* 保存任务扩展信息
*
*
* @param runtimeTaskExtension
* @param runtimeTaskExtension 运行时任务
* 运行时任务
*/
*/
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
);
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
);
/**
/**
* 保存任务扩展信息
* 保存任务扩展信息
*
*
* @param runtimeTaskExtension
* @param runtimeTaskExtension 运行时任务
* 运行时任务
* @param initiatorPersonMemberId 发起人ID
* @param initiatorPersonMemberId
* 发起人ID
*/
*/
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
,
String
initiatorPersonMemberId
);
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
,
String
initiatorPersonMemberId
);
/**
/**
* 保存任务扩展信息
* 保存任务扩展信息
*
*
* @param runtimeTaskExtension
* @param runtimeTaskExtension 运行时任务扩展
* 运行时任务扩展
* @param procUnitHandler 流程环节处理人
* @param procUnitHandler
* 流程环节处理人
*/
*/
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
,
ProcUnitHandler
procUnitHandler
);
void
saveTaskExtension
(
RuntimeTaskExtension
runtimeTaskExtension
,
ProcUnitHandler
procUnitHandler
);
...
@@ -51,40 +46,32 @@ public interface ActApplication {
...
@@ -51,40 +46,32 @@ public interface ActApplication {
* <p>
* <p>
* 包括运行时和历史任务
* 包括运行时和历史任务
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param taskStatus 任务状态
* @param taskStatus
* 任务状态
*/
*/
void
updateTaskExtensionStatus
(
String
taskId
,
TaskStatus
taskStatus
);
void
updateTaskExtensionStatus
(
String
taskId
,
TaskStatus
taskStatus
);
/**
/**
* 更新扩展任务状态为暂缓
* 更新扩展任务状态为暂缓
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
*/
*/
void
updateTaskExtensionSleepingStatus
(
String
taskId
);
void
updateTaskExtensionSleepingStatus
(
String
taskId
);
/**
/**
* 更新历史任务扩展是否计时
* 更新历史任务扩展是否计时
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param needTiming 是否计时
* @param needTiming
* 是否计时
*/
*/
void
updateTaskExtensionNeedTiming
(
String
taskId
,
Integer
needTiming
);
void
updateTaskExtensionNeedTiming
(
String
taskId
,
Integer
needTiming
);
/**
/**
* 更新任务扩展处理意见
* 更新任务扩展处理意见
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param result 处理结果
* @param result
* @param opinion 处理意见
* 处理结果
* @param opinion
* 处理意见
*/
*/
void
updateTaskExtensionHandleResult
(
String
taskId
,
HandleResult
result
,
String
opinion
);
void
updateTaskExtensionHandleResult
(
String
taskId
,
HandleResult
result
,
String
opinion
);
...
@@ -100,42 +87,33 @@ public interface ActApplication {
...
@@ -100,42 +87,33 @@ public interface ActApplication {
/**
/**
* 更新任务处理人
* 更新任务处理人
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param orgUnit 组织单元
* @param orgUnit
* @param updateStartTime 更新开始时间
* 组织单元
* @param updateStartTime
* 更新开始时间
*/
*/
void
updateTaskHanlder
(
String
taskId
,
OrgUnit
orgUnit
,
boolean
updateStartTime
);
void
updateTaskHanlder
(
String
taskId
,
OrgUnit
orgUnit
,
boolean
updateStartTime
);
/**
/**
* 更新历史任务扩展状态
* 更新历史任务扩展状态
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param taskStatus 任务状态
* @param taskStatus
* 任务状态
*/
*/
void
updateHistoricTaskInstanceExtensionStatus
(
String
taskId
,
TaskStatus
taskStatus
);
void
updateHistoricTaskInstanceExtensionStatus
(
String
taskId
,
TaskStatus
taskStatus
);
/**
/**
* 更新历史任务扩展为结束状态
* 更新历史任务扩展为结束状态
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param taskStatus 任务状态
* @param taskStatus
* @param deleteReason 删除原因
* 任务状态
* @param deleteReason
* 删除原因
*/
*/
void
updateHistoricTaskInstanceExtensionEnded
(
String
taskId
,
TaskStatus
taskStatus
,
String
deleteReason
);
void
updateHistoricTaskInstanceExtensionEnded
(
String
taskId
,
TaskStatus
taskStatus
,
String
deleteReason
);
/**
/**
* 从数据库中读取一条运行任务扩展信息
* 从数据库中读取一条运行任务扩展信息
*
*
* @param id
* @param id 任务ID
* 任务ID
* @return
* @return
*/
*/
RuntimeTaskExtension
loadRuntimeTaskExtension
(
String
id
);
RuntimeTaskExtension
loadRuntimeTaskExtension
(
String
id
);
...
@@ -143,8 +121,7 @@ public interface ActApplication {
...
@@ -143,8 +121,7 @@ public interface ActApplication {
/**
/**
* 从数据库中读取一条历史任务扩展信息
* 从数据库中读取一条历史任务扩展信息
*
*
* @param id
* @param id 任务ID
* 任务ID
* @return
* @return
*/
*/
HistoricTaskInstanceExtension
loadHistoricTaskInstanceExtension
(
String
id
);
HistoricTaskInstanceExtension
loadHistoricTaskInstanceExtension
(
String
id
);
...
@@ -152,8 +129,7 @@ public interface ActApplication {
...
@@ -152,8 +129,7 @@ public interface ActApplication {
/**
/**
* 查询历史任务实例
* 查询历史任务实例
*
*
* @param ids
* @param ids 任务ID列表
* 任务ID列表
* @return
* @return
*/
*/
List
<
HistoricTaskInstanceExtension
>
queryHistoricTaskInstanceExtensions
(
List
<
String
>
ids
);
List
<
HistoricTaskInstanceExtension
>
queryHistoricTaskInstanceExtensions
(
List
<
String
>
ids
);
...
@@ -161,18 +137,15 @@ public interface ActApplication {
...
@@ -161,18 +137,15 @@ public interface ActApplication {
/**
/**
* 查询未完成的协作历史任务
* 查询未完成的协作历史任务
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
*/
*/
List
<
RuntimeTaskExtension
>
queryCoordinationTaskInstances
(
String
bizId
);
List
<
RuntimeTaskExtension
>
queryCoordinationTaskInstances
(
String
bizId
);
/**
/**
* 查询历史任务
* 查询历史任务
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param procUnitId 环境ID
* @param procUnitId
* 环境ID
* @return
* @return
*/
*/
List
<
HistoricTaskInstanceExtension
>
queryHistoricTaskInstanceByBizAndProcUnitId
(
String
bizId
,
String
procUnitId
);
List
<
HistoricTaskInstanceExtension
>
queryHistoricTaskInstanceByBizAndProcUnitId
(
String
bizId
,
String
procUnitId
);
...
@@ -183,16 +156,14 @@ public interface ActApplication {
...
@@ -183,16 +156,14 @@ public interface ActApplication {
/**
/**
* 删除运行时任务扩展信息
* 删除运行时任务扩展信息
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
*/
*/
void
deleteRuntimeTaskExtension
(
String
taskId
);
void
deleteRuntimeTaskExtension
(
String
taskId
);
/**
/**
* 查询审批历史记录
* 查询审批历史记录
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalHistoryByBizId
(
String
bizId
);
Map
<
String
,
Object
>
queryApprovalHistoryByBizId
(
String
bizId
);
...
@@ -200,8 +171,7 @@ public interface ActApplication {
...
@@ -200,8 +171,7 @@ public interface ActApplication {
/**
/**
* 查询审批历史记录
* 查询审批历史记录
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApprovalHistoryByProcessInstanceId
(
String
processInstanceId
);
Map
<
String
,
Object
>
queryApprovalHistoryByProcessInstanceId
(
String
processInstanceId
);
...
@@ -209,12 +179,9 @@ public interface ActApplication {
...
@@ -209,12 +179,9 @@ public interface ActApplication {
/**
/**
* 查询回退任务
* 查询回退任务
*
*
* @param bizCode
* @param bizCode 业务编码
* 业务编码
* @param procUnitId 流程环节ID
* @param procUnitId
* @param groupId 组ID
* 流程环节ID
* @param groupId
* 组ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryBackTasksByBizCode
(
String
bizCode
,
String
procUnitId
,
Integer
groupId
);
Map
<
String
,
Object
>
queryBackTasksByBizCode
(
String
bizCode
,
String
procUnitId
,
Integer
groupId
);
...
@@ -222,8 +189,7 @@ public interface ActApplication {
...
@@ -222,8 +189,7 @@ public interface ActApplication {
/**
/**
* 查询流程申请人
* 查询流程申请人
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApplicantByProcessInstanceId
(
String
processInstanceId
);
Map
<
String
,
Object
>
queryApplicantByProcessInstanceId
(
String
processInstanceId
);
...
@@ -231,8 +197,7 @@ public interface ActApplication {
...
@@ -231,8 +197,7 @@ public interface ActApplication {
/**
/**
* 查询申请人任务
* 查询申请人任务
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @return
* @return
*/
*/
HistoricTaskInstanceExtension
queryApplicantTask
(
String
bizId
);
HistoricTaskInstanceExtension
queryApplicantTask
(
String
bizId
);
...
@@ -240,8 +205,7 @@ public interface ActApplication {
...
@@ -240,8 +205,7 @@ public interface ActApplication {
/**
/**
* 查询申请人任务
* 查询申请人任务
*
*
* @param bizCode
* @param bizCode 业务编码
* 业务编码
* @return
* @return
*/
*/
HistoricTaskInstanceExtension
queryApplicantTaskByBizCode
(
String
bizCode
);
HistoricTaskInstanceExtension
queryApplicantTaskByBizCode
(
String
bizCode
);
...
@@ -249,8 +213,7 @@ public interface ActApplication {
...
@@ -249,8 +213,7 @@ public interface ActApplication {
/**
/**
* 查询任务明细
* 查询任务明细
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @return
* @return
*/
*/
TaskDetail
queryTaskDetail
(
String
taskId
);
TaskDetail
queryTaskDetail
(
String
taskId
);
...
@@ -258,8 +221,7 @@ public interface ActApplication {
...
@@ -258,8 +221,7 @@ public interface ActApplication {
/**
/**
* 查询流程申请人
* 查询流程申请人
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryApplicantByBizId
(
String
bizId
);
Map
<
String
,
Object
>
queryApplicantByBizId
(
String
bizId
);
...
@@ -267,12 +229,20 @@ public interface ActApplication {
...
@@ -267,12 +229,20 @@ public interface ActApplication {
/**
/**
* 从数据库中读取一条运行任务
* 从数据库中读取一条运行任务
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @deprecated 已被 {@link #queryByRuntimeTaskById(String)} 替代。
* @return
*/
*/
@Deprecated
Map
<
String
,
Object
>
loadRuntimeTaskById
(
String
taskId
);
Map
<
String
,
Object
>
loadRuntimeTaskById
(
String
taskId
);
/**
* 从数据库中读取一条运行任务
*
* @param taskId 任务ID
* @since 1.1.3
*/
RuntimeTaskExtension
queryByRuntimeTaskById
(
String
taskId
);
/**
/**
* 根据bizId从数据库中读取一条运行任务
* 根据bizId从数据库中读取一条运行任务
*
*
...
@@ -284,8 +254,7 @@ public interface ActApplication {
...
@@ -284,8 +254,7 @@ public interface ActApplication {
/**
/**
* 从数据库中读取一条历史任务
* 从数据库中读取一条历史任务
*
*
* @param taskId
* @param taskId 任务id
* 任务id
* @return
* @return
*/
*/
Map
<
String
,
Object
>
loadHistoricTaskById
(
String
taskId
);
Map
<
String
,
Object
>
loadHistoricTaskById
(
String
taskId
);
...
@@ -293,8 +262,7 @@ public interface ActApplication {
...
@@ -293,8 +262,7 @@ public interface ActApplication {
/**
/**
* 根据业务编码查询任务数据
* 根据业务编码查询任务数据
*
*
* @param bizCode
* @param bizCode 业务编码
* 业务编码
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryHiTaskInstsByBizCode
(
String
bizCode
);
Map
<
String
,
Object
>
queryHiTaskInstsByBizCode
(
String
bizCode
);
...
@@ -302,10 +270,8 @@ public interface ActApplication {
...
@@ -302,10 +270,8 @@ public interface ActApplication {
/**
/**
* 根据业务编码和类别ID查询任务数据
* 根据业务编码和类别ID查询任务数据
*
*
* @param bizCode
* @param bizCode 业务编码
* 业务编码
* @param kindId 类别ID
* @param kindId
* 类别ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryHiTaskInstsByBizCodeAndKindId
(
String
bizCode
,
String
kindId
);
Map
<
String
,
Object
>
queryHiTaskInstsByBizCodeAndKindId
(
String
bizCode
,
String
kindId
);
...
@@ -313,28 +279,23 @@ public interface ActApplication {
...
@@ -313,28 +279,23 @@ public interface ActApplication {
/**
/**
* 保存任务关联
* 保存任务关联
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param historicTaskInstRelation 任务关联对象
* @param historicTaskInstRelation
* 任务关联对象
*/
*/
void
saveHiTaskinstRelations
(
String
bizId
,
List
<
HistoricTaskInstanceRelation
>
historicTaskInstRelations
);
void
saveHiTaskinstRelations
(
String
bizId
,
List
<
HistoricTaskInstanceRelation
>
historicTaskInstRelations
);
/**
/**
* 删除任务关联
* 删除任务关联
*
*
* @param ids
* @param ids 任务关联ID列表
* 任务关联ID列表
*/
*/
void
deleteHiTaskinstRelations
(
List
<
String
>
ids
);
void
deleteHiTaskinstRelations
(
List
<
String
>
ids
);
/**
/**
* 查询任务关联
* 查询任务关联
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
* @param bizId 业务ID
* @param bizId
* 业务ID
* @return
* @return
*/
*/
Map
<
String
,
Object
>
queryHiTaskinstRelations
(
String
taskId
,
String
bizId
);
Map
<
String
,
Object
>
queryHiTaskinstRelations
(
String
taskId
,
String
bizId
);
...
@@ -346,8 +307,7 @@ public interface ActApplication {
...
@@ -346,8 +307,7 @@ public interface ActApplication {
/**
/**
* 加载流程实例扩展
* 加载流程实例扩展
*
*
* @param id
* @param id 流程实例扩展ID
* 流程实例扩展ID
* @return
* @return
*/
*/
HistoricProcessInstanceExtension
loadHistoricProcessInstanceExtension
(
String
id
);
HistoricProcessInstanceExtension
loadHistoricProcessInstanceExtension
(
String
id
);
...
@@ -355,8 +315,7 @@ public interface ActApplication {
...
@@ -355,8 +315,7 @@ public interface ActApplication {
/**
/**
* 根据流程实例ID加载流程实例扩展
* 根据流程实例ID加载流程实例扩展
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @return
* @return
*/
*/
HistoricProcessInstanceExtension
loadHistoricProcessInstanceExtensionByProcInstId
(
String
processInstanceId
);
HistoricProcessInstanceExtension
loadHistoricProcessInstanceExtensionByProcInstId
(
String
processInstanceId
);
...
@@ -364,16 +323,11 @@ public interface ActApplication {
...
@@ -364,16 +323,11 @@ public interface ActApplication {
/**
/**
* 添加流程实例扩展信息
* 添加流程实例扩展信息
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @param businessKey 业务主键ID
* @param businessKey
* @param initiatorPersonMemberId 申请人员ID
* 业务主键ID
* @param description 流程实例描述(标题)
* @param initiatorPersonMemberId
* @param processStatus 流程状态
* 申请人员ID
* @param description
* 流程实例描述(标题)
* @param processStatus
* 流程状态
*/
*/
void
saveHistoricProcessInstanceExtension
(
HistoricProcessInstanceEntity
historicProcessInstanceEntity
,
String
initiatorPersonMemberId
,
String
description
,
void
saveHistoricProcessInstanceExtension
(
HistoricProcessInstanceEntity
historicProcessInstanceEntity
,
String
initiatorPersonMemberId
,
String
description
,
ProcessStatus
processStatus
);
ProcessStatus
processStatus
);
...
@@ -381,32 +335,25 @@ public interface ActApplication {
...
@@ -381,32 +335,25 @@ public interface ActApplication {
/**
/**
* 更新流程实例扩展状态
* 更新流程实例扩展状态
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @param processStatus 流程状态
* @param processStatus
* 流程状态
*/
*/
void
updateHistoricProcessInstanceExtensionStatus
(
String
processInstanceId
,
ProcessStatus
processStatus
);
void
updateHistoricProcessInstanceExtensionStatus
(
String
processInstanceId
,
ProcessStatus
processStatus
);
/**
/**
* 更新流程实例扩展已完成
* 更新流程实例扩展已完成
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @param processStatus 流程状态
* @param processStatus
* @param deleteReason 删除原因
* 流程状态
* @param endActivityId 结束环节ID
* @param deleteReason
* 删除原因
* @param endActivityId
* 结束环节ID
*/
*/
void
updateHistoricProcessInstanceExtensionEnded
(
String
processInstanceId
,
ProcessStatus
processStatus
,
String
deleteReason
,
String
endActivityId
);
void
updateHistoricProcessInstanceExtensionEnded
(
String
processInstanceId
,
ProcessStatus
processStatus
,
String
deleteReason
,
String
endActivityId
);
/**
/**
* 根据流程环节处理人ID查询最近的历史任务实例扩展数据
* 根据流程环节处理人ID查询最近的历史任务实例扩展数据
*
*
* @param procUnitHandlerId
* @param procUnitHandlerId 环节处理人ID
* 环节处理人ID
* @return
* @return
*/
*/
HistoricTaskInstanceExtension
queryRecentHiTaskInstExtensionByProcUnitHandlerId
(
String
procUnitHandlerId
);
HistoricTaskInstanceExtension
queryRecentHiTaskInstExtensionByProcUnitHandlerId
(
String
procUnitHandlerId
);
...
@@ -414,8 +361,7 @@ public interface ActApplication {
...
@@ -414,8 +361,7 @@ public interface ActApplication {
/**
/**
* 根据流程环节处理人ID查询最历史任务实例扩展数据
* 根据流程环节处理人ID查询最历史任务实例扩展数据
*
*
* @param procUnitHandlerId
* @param procUnitHandlerId 环节处理人ID
* 环节处理人ID
* @return
* @return
*/
*/
List
<
HistoricTaskInstanceExtension
>
queryHiTaskInstExtensionByProcUnitHandlerId
(
String
procUnitHandlerId
);
List
<
HistoricTaskInstanceExtension
>
queryHiTaskInstExtensionByProcUnitHandlerId
(
String
procUnitHandlerId
);
...
@@ -430,20 +376,16 @@ public interface ActApplication {
...
@@ -430,20 +376,16 @@ public interface ActApplication {
/**
/**
* 查询完成的历史任务ID集合
* 查询完成的历史任务ID集合
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @param previousTaskId 前驱任务ID
* @param previousTaskId
* 前驱任务ID
*/
*/
List
<
String
>
queryHiTaskIdsByProcessInstanceAndPreviousId
(
String
processInstanceId
,
String
previousTaskId
);
List
<
String
>
queryHiTaskIdsByProcessInstanceAndPreviousId
(
String
processInstanceId
,
String
previousTaskId
);
/**
/**
* 查询运行时任务ID集合
* 查询运行时任务ID集合
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @param previousTaskId 前驱任务ID
* @param previousTaskId
* 前驱任务ID
* @return 任务ID集合
* @return 任务ID集合
*/
*/
List
<
String
>
queryRuTaskIdsByProcessInstanceAndPreviousId
(
String
processInstanceId
,
String
previousTaskId
);
List
<
String
>
queryRuTaskIdsByProcessInstanceAndPreviousId
(
String
processInstanceId
,
String
previousTaskId
);
...
@@ -451,10 +393,8 @@ public interface ActApplication {
...
@@ -451,10 +393,8 @@ public interface ActApplication {
/**
/**
* 查询主审的协审人任务ID列表
* 查询主审的协审人任务ID列表
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param chiefId 主审ID
* @param chiefId
* 主审ID
* @return
* @return
*/
*/
List
<
String
>
queryRuAssistantTaskIds
(
String
bizId
,
String
chiefId
);
List
<
String
>
queryRuAssistantTaskIds
(
String
bizId
,
String
chiefId
);
...
@@ -462,8 +402,7 @@ public interface ActApplication {
...
@@ -462,8 +402,7 @@ public interface ActApplication {
/**
/**
* 查询运行时任务ID集合
* 查询运行时任务ID集合
*
*
* @param processInstanceId
* @param processInstanceId 流程实例ID
* 流程实例ID
* @return 任务ID集合
* @return 任务ID集合
*/
*/
List
<
String
>
queryRuTaskIdsByProcessInstanceId
(
String
processInstanceId
);
List
<
String
>
queryRuTaskIdsByProcessInstanceId
(
String
processInstanceId
);
...
@@ -473,8 +412,7 @@ public interface ActApplication {
...
@@ -473,8 +412,7 @@ public interface ActApplication {
/**
/**
* 统计待办流程任务数
* 统计待办流程任务数
*
*
* @param bizCode
* @param bizCode 业务编码
* 业务编码
* @return
* @return
*/
*/
long
countReadyProcTasksByBizCode
(
String
bizCode
);
long
countReadyProcTasksByBizCode
(
String
bizCode
);
...
@@ -482,10 +420,8 @@ public interface ActApplication {
...
@@ -482,10 +420,8 @@ public interface ActApplication {
/**
/**
* 统计等待的协审任务书
* 统计等待的协审任务书
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param chiefId 主审ID
* @param chiefId
* 主审ID
* @return
* @return
*/
*/
Integer
countWaitedAssistantTask
(
String
bizId
,
String
chiefId
);
Integer
countWaitedAssistantTask
(
String
bizId
,
String
chiefId
);
...
@@ -493,8 +429,7 @@ public interface ActApplication {
...
@@ -493,8 +429,7 @@ public interface ActApplication {
/**
/**
* 流程中存在打回任务数
* 流程中存在打回任务数
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @return
* @return
*/
*/
boolean
existsReplenishTask
(
String
bizId
);
boolean
existsReplenishTask
(
String
bizId
);
...
...
huigou-core-api/src/main/java/com/huigou/uasp/bpm/engine/domain/model/ProcUnitHandlerBase.java
View file @
d382ecaa
...
@@ -36,7 +36,7 @@ import com.huigou.util.StringUtil;
...
@@ -36,7 +36,7 @@ import com.huigou.util.StringUtil;
* @author gongmm
* @author gongmm
*/
*/
@MappedSuperclass
@MappedSuperclass
@EntityListeners
({
VersionListener
.
class
})
@EntityListeners
({
VersionListener
.
class
})
public
class
ProcUnitHandlerBase
implements
IdentifiedEntity
,
Cloneable
,
Serializable
{
public
class
ProcUnitHandlerBase
implements
IdentifiedEntity
,
Cloneable
,
Serializable
{
private
static
final
long
serialVersionUID
=
7627740680619707939L
;
private
static
final
long
serialVersionUID
=
7627740680619707939L
;
...
@@ -214,6 +214,13 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
...
@@ -214,6 +214,13 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
private
String
clientName
;
private
String
clientName
;
private
Integer
sequence
;
private
Integer
sequence
;
/**
* 分组最少审批人数。
*
* @since 1.1.3
*/
@Column
(
name
=
"limit_handler"
)
private
Integer
limitHandler
;
@Override
@Override
public
String
getId
()
{
public
String
getId
()
{
...
@@ -475,6 +482,14 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
...
@@ -475,6 +482,14 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
this
.
sendMessage
=
sendMessage
;
this
.
sendMessage
=
sendMessage
;
}
}
public
Integer
getLimitHandler
()
{
return
limitHandler
;
}
public
void
setLimitHandler
(
Integer
limitHandler
)
{
this
.
limitHandler
=
limitHandler
;
}
public
void
updateHandleResult
(
int
result
,
String
opinion
,
int
status
)
{
public
void
updateHandleResult
(
int
result
,
String
opinion
,
int
status
)
{
this
.
setResult
(
result
);
this
.
setResult
(
result
);
this
.
setOpinion
(
opinion
);
this
.
setOpinion
(
opinion
);
...
@@ -546,7 +561,8 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
...
@@ -546,7 +561,8 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
}
}
public
enum
Status
{
public
enum
Status
{
INITIAL
(-
2
,
"补审初始化状态"
),
MERGED
(-
1
,
"已合并"
),
READY
(
0
,
"未处理"
),
COMPLETED
(
1
,
"已处理"
),
RETURNED
(
2
,
"已回退"
),
;
INITIAL
(-
2
,
"补审初始化状态"
),
MERGED
(-
1
,
"已合并"
),
READY
(
0
,
"未处理"
),
COMPLETED
(
1
,
"已处理"
),
RETURNED
(
2
,
"已回退"
),
;
private
final
int
id
;
private
final
int
id
;
private
final
String
displayName
;
private
final
String
displayName
;
...
@@ -581,7 +597,7 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
...
@@ -581,7 +597,7 @@ public class ProcUnitHandlerBase implements IdentifiedEntity, Cloneable, Seriali
case
2
:
case
2
:
return
RETURNED
;
return
RETURNED
;
default
:
default
:
throw
new
ApplicationException
(
String
.
format
(
"无效的流程环节处理状态“%s”。"
,
new
Object
[]
{
Integer
.
valueOf
(
id
)
}));
throw
new
ApplicationException
(
String
.
format
(
"无效的流程环节处理状态“%s”。"
,
new
Object
[]{
Integer
.
valueOf
(
id
)
}));
}
}
}
}
}
}
...
...
huigou-data/src/main/java/com/huigou/data/query/parser/impl/SQLBuilderImpl.java
View file @
d382ecaa
package
com
.
huigou
.
data
.
query
.
parser
.
impl
;
package
com
.
huigou
.
data
.
query
.
parser
.
impl
;
import
java.util.Map
;
import
java.util.regex.Matcher
;
import
com.huigou.data.domain.query.QueryAbstractRequest
;
import
com.huigou.data.domain.query.QueryAbstractRequest
;
import
com.huigou.data.query.QueryPermissionBuilder
;
import
com.huigou.data.query.QueryPermissionBuilder
;
import
com.huigou.data.query.SQLExecutor
;
import
com.huigou.data.query.SQLExecutor
;
import
com.huigou.data.query.XMLParseUtil
;
import
com.huigou.data.query.XMLParseUtil
;
import
com.huigou.data.query.model.QueryDescriptor
;
import
com.huigou.data.query.parser.SQLBuilder
;
import
com.huigou.data.query.parser.SQLBuilder
;
import
com.huigou.data.query.parser.model.ConditionModel
;
import
com.huigou.data.query.parser.model.ConditionModel
;
import
com.huigou.data.query.parser.model.DataFilterGroup
;
import
com.huigou.data.query.parser.model.DataFilterGroup
;
...
@@ -21,6 +17,9 @@ import com.huigou.uasp.bmp.query.QueryDocument.Query;
...
@@ -21,6 +17,9 @@ import com.huigou.uasp.bmp.query.QueryDocument.Query;
import
com.huigou.uasp.bmp.query.SqlDocument.Sql
;
import
com.huigou.uasp.bmp.query.SqlDocument.Sql
;
import
com.huigou.util.StringUtil
;
import
com.huigou.util.StringUtil
;
import
java.util.Map
;
import
java.util.regex.Matcher
;
/**
/**
* 根据查询对象组合SQL
* 根据查询对象组合SQL
*
*
...
...
huigou-uasp/src/main/java/com/huigou/uasp/bpm/FlowBroker.java
View file @
d382ecaa
package
com
.
huigou
.
uasp
.
bpm
;
package
com
.
huigou
.
uasp
.
bpm
;
import
java.lang.reflect.InvocationTargetException
;
import
java.lang.reflect.InvocationTargetException
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.Arrays
;
import
java.util.stream.Collectors
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
...
@@ -84,6 +80,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -84,6 +80,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
private
static
final
long
serialVersionUID
=
-
6575998537083218220L
;
private
static
final
long
serialVersionUID
=
-
6575998537083218220L
;
private
static
final
String
PREEMPT_CANCEL_VARIABLE
=
"preemptCancel"
;
private
static
final
String
PREEMPT_CANCEL_VARIABLE
=
"preemptCancel"
;
/**
* @since 1.1.3
*/
private
static
final
String
LIMIT_HANDLER_CANCEL_VARIABLE
=
"limitHandlerCancel"
;
private
static
final
String
CHIEF_APPROVE_PASSED_VARIABLE
=
"chiefApprovePassed"
;
private
static
final
String
CHIEF_APPROVE_PASSED_VARIABLE
=
"chiefApprovePassed"
;
...
@@ -236,8 +236,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -236,8 +236,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 设置任务ID
* 设置任务ID
*
*
* @param taskId
* @param taskId 任务ID
* 任务ID
*/
*/
protected
void
setNewTaskId
(
String
taskId
)
{
protected
void
setNewTaskId
(
String
taskId
)
{
getBizAndApprovalData
().
putProperty
(
"newTaskId"
,
taskId
);
getBizAndApprovalData
().
putProperty
(
"newTaskId"
,
taskId
);
...
@@ -286,8 +285,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -286,8 +285,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 当前任务是否为审批环节
* 当前任务是否为审批环节
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @return 当前任务是否为审批环节
* @return 当前任务是否为审批环节
*/
*/
protected
boolean
isApprovalProcUnit
(
DelegateTask
delegateTask
)
{
protected
boolean
isApprovalProcUnit
(
DelegateTask
delegateTask
)
{
...
@@ -297,15 +295,14 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -297,15 +295,14 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 当前任务是否为审批环节
* 当前任务是否为审批环节
*
*
* @param procUnitId
* @param procUnitId 环节id
* 环节id
* @return 当前任务是否为审批环节
* @return 当前任务是否为审批环节
*/
*/
protected
boolean
isApprovalProcUnit
(
String
procUnitId
)
{
protected
boolean
isApprovalProcUnit
(
String
procUnitId
)
{
return
ActivityKind
.
APPROVE
.
equalsIgnoreCase
(
procUnitId
);
return
ActivityKind
.
APPROVE
.
equalsIgnoreCase
(
procUnitId
);
}
}
/**
/**
currentGroupChiefApprovePassed
* 流程通知事件处理
* 流程通知事件处理
* <ul>
* <ul>
* <li>流程实例启动事件:调用<code>onStart</code>保存业务数据和历史流程实例扩展数据。</li>
* <li>流程实例启动事件:调用<code>onStart</code>保存业务数据和历史流程实例扩展数据。</li>
...
@@ -318,6 +315,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -318,6 +315,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>流程实例撤销事件</li>
* <li>流程实例撤销事件</li>
* </ul>
* </ul>
*/
*/
@Override
public
void
notify
(
DelegateExecution
delegateExecution
)
{
public
void
notify
(
DelegateExecution
delegateExecution
)
{
String
eventName
=
delegateExecution
.
getEventName
();
String
eventName
=
delegateExecution
.
getEventName
();
try
{
try
{
...
@@ -379,6 +377,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -379,6 +377,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>预览处理人事件</li>
* <li>预览处理人事件</li>
* </ul>
* </ul>
*/
*/
@Override
public
void
notify
(
DelegateTask
delegateTask
)
{
public
void
notify
(
DelegateTask
delegateTask
)
{
String
eventName
=
delegateTask
.
getEventName
();
String
eventName
=
delegateTask
.
getEventName
();
try
{
try
{
...
@@ -420,8 +419,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -420,8 +419,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 审批是否完成
* 审批是否完成
*
*
* @param procUnitId
* @param procUnitId 流程环节ID
* 流程环节ID
* @return 审批是否完成
* @return 审批是否完成
*/
*/
protected
boolean
approveFinished
(
String
procUnitId
)
{
protected
boolean
approveFinished
(
String
procUnitId
)
{
...
@@ -447,7 +445,11 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -447,7 +445,11 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
*/
*/
protected
boolean
currentGroupChiefApprovePassed
(
String
procUnitId
)
{
protected
boolean
currentGroupChiefApprovePassed
(
String
procUnitId
)
{
int
groupId
=
getCurrentHandleGroupId
();
int
groupId
=
getCurrentHandleGroupId
();
return
this
.
procUnitHandlerApplication
.
checkCurrentGroupChiefApprovePassed
(
getApprovalParameter
().
getBizId
(),
procUnitId
,
groupId
);
if
(
this
.
procUnitHandlerApplication
.
checkCurrentGroupChiefApprovePassed
(
getApprovalParameter
().
getBizId
(),
procUnitId
,
groupId
))
{
return
true
;
}
ProcUnitHandler
procUnitHandler
=
procUnitHandlerApplication
.
queryProcUnitHandlers
(
getApprovalParameter
().
getBizId
(),
procUnitId
,
groupId
).
get
(
0
);
return
isLimitHandler
(
procUnitId
,
groupId
,
procUnitHandler
.
getLimitHandler
());
}
}
private
String
getTaskDescriptionPrefix
()
{
private
String
getTaskDescriptionPrefix
()
{
...
@@ -473,8 +475,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -473,8 +475,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 设置默认任务主题
* 设置默认任务主题
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
setTaskDescription
(
DelegateTask
delegateTask
)
{
protected
void
setTaskDescription
(
DelegateTask
delegateTask
)
{
...
@@ -483,10 +484,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -483,10 +484,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 处理设置任务处理人信息(非申请环节和审批环节)
* 处理设置任务处理人信息(非申请环节和审批环节)
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param runtimeTaskExtension 运行时任务扩展数据
* @param runtimeTaskExtension
* 运行时任务扩展数据
*/
*/
protected
void
doOtherSetCurrentTaskHandler
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
protected
void
doOtherSetCurrentTaskHandler
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
...
@@ -495,10 +494,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -495,10 +494,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 应用代理规则
* 应用代理规则
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param procUnitHandler 环节处理人
* @param procUnitHandler
* 环节处理人
* @return
* @return
*/
*/
protected
Agent
applyAgentRule
(
DelegateTask
delegateTask
,
ProcUnitHandler
procUnitHandler
)
{
protected
Agent
applyAgentRule
(
DelegateTask
delegateTask
,
ProcUnitHandler
procUnitHandler
)
{
...
@@ -528,8 +525,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -528,8 +525,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 填充申请人扩展数据
* 填充申请人扩展数据
*
*
* @param runtimeTaskExtension
* @param runtimeTaskExtension 运行时任务扩展数据
* 运行时任务扩展数据
*/
*/
private
void
fillApplicantExtendData
(
RuntimeTaskExtension
runtimeTaskExtension
)
{
private
void
fillApplicantExtendData
(
RuntimeTaskExtension
runtimeTaskExtension
)
{
SDO
sdo
=
ThreadLocalUtil
.
getVariable
(
Constants
.
SDO
,
SDO
.
class
);
SDO
sdo
=
ThreadLocalUtil
.
getVariable
(
Constants
.
SDO
,
SDO
.
class
);
...
@@ -556,10 +552,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -556,10 +552,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 3、设置扩展属性的处理人
* 3、设置扩展属性的处理人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param runtimeTaskExtension 运行时任务扩展数据
* @param runtimeTaskExtension
* 运行时任务扩展数据
*/
*/
protected
void
setCurrentTaskHandler
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
protected
void
setCurrentTaskHandler
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
String
processDefinitionId
=
delegateTask
.
getExecution
().
getProcessDefinitionId
();
String
processDefinitionId
=
delegateTask
.
getExecution
().
getProcessDefinitionId
();
...
@@ -734,8 +728,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -734,8 +728,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 与<code>saveBizAndApprovalData()</code>不同,可以通过本方法设置任务属性。
* 与<code>saveBizAndApprovalData()</code>不同,可以通过本方法设置任务属性。
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @return
* @return
* @see #saveBizAndApprovalData()
* @see #saveBizAndApprovalData()
*/
*/
...
@@ -750,8 +743,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -750,8 +743,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>保存历史流程实例扩展表</li>
* <li>保存历史流程实例扩展表</li>
* </ul>
* </ul>
*
*
* @param delegateExecution
* @param delegateExecution 代理执行
* 代理执行
*/
*/
protected
void
onStart
(
DelegateExecution
delegateExecution
)
{
protected
void
onStart
(
DelegateExecution
delegateExecution
)
{
String
startModel
=
(
String
)
delegateExecution
.
getVariable
(
"startModel"
);
String
startModel
=
(
String
)
delegateExecution
.
getVariable
(
"startModel"
);
...
@@ -776,8 +768,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -776,8 +768,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 流程结束事件
* 流程结束事件
*
*
* @param delegateExecution
* @param delegateExecution 代理执行
* 代理执行
*/
*/
protected
void
onEnd
(
DelegateExecution
delegateExecution
)
{
protected
void
onEnd
(
DelegateExecution
delegateExecution
)
{
boolean
isMakeACopyFor
=
ClassHelper
.
convert
(
delegateExecution
.
getVariable
(
IS_MAKE_A_COPY_FOR
),
Boolean
.
class
,
false
);
boolean
isMakeACopyFor
=
ClassHelper
.
convert
(
delegateExecution
.
getVariable
(
IS_MAKE_A_COPY_FOR
),
Boolean
.
class
,
false
);
...
@@ -803,8 +794,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -803,8 +794,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 流程撤销事件
* 流程撤销事件
*
*
* @param delegateExecution
* @param delegateExecution 代理执行实例
* 代理执行实例
*/
*/
protected
void
onRecallProcessInstance
(
DelegateExecution
delegateExecution
)
{
protected
void
onRecallProcessInstance
(
DelegateExecution
delegateExecution
)
{
...
@@ -813,8 +803,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -813,8 +803,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 删除流程实例事件
* 删除流程实例事件
*
*
* @param delegateExecution
* @param delegateExecution 代理执行
* 代理执行
*/
*/
protected
void
onDeleteProcessInstance
(
DelegateExecution
delegateExecution
)
{
protected
void
onDeleteProcessInstance
(
DelegateExecution
delegateExecution
)
{
}
}
...
@@ -822,8 +811,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -822,8 +811,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 终止流程实例事件
* 终止流程实例事件
*
*
* @param delegateExecution
* @param delegateExecution 代理执行
* 代理执行
*/
*/
protected
void
onAbortProcessInstance
(
DelegateExecution
delegateExecution
)
{
protected
void
onAbortProcessInstance
(
DelegateExecution
delegateExecution
)
{
boolean
isMakeACopyFor
=
ClassHelper
.
convert
(
delegateExecution
.
getVariable
(
IS_MAKE_A_COPY_FOR
),
Boolean
.
class
,
false
);
boolean
isMakeACopyFor
=
ClassHelper
.
convert
(
delegateExecution
.
getVariable
(
IS_MAKE_A_COPY_FOR
),
Boolean
.
class
,
false
);
...
@@ -899,10 +887,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -899,10 +887,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 设置任务扩展数据默认值
* 设置任务扩展数据默认值
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param runtimeTaskExtension 运行时任务数据
* @param runtimeTaskExtension
* 运行时任务数据
*/
*/
private
void
setTaskExtendData
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
private
void
setTaskExtendData
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
runtimeTaskExtension
.
setGenerateReason
(
getApprovalParameter
().
getProcessAction
());
runtimeTaskExtension
.
setGenerateReason
(
getApprovalParameter
().
getProcessAction
());
...
@@ -914,10 +900,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -914,10 +900,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 设置任务是否计时
* 设置任务是否计时
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param runtimeTaskExtension 运行时任务数据
* @param runtimeTaskExtension
* 运行时任务数据
*/
*/
protected
void
setTaskLimitTime
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
protected
void
setTaskLimitTime
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
if
(!
this
.
isApplyProcUnit
(
delegateTask
))
{
if
(!
this
.
isApplyProcUnit
(
delegateTask
))
{
...
@@ -936,10 +920,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -936,10 +920,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 修正扩展数据
* 修正扩展数据
*
*
* @param delegateTask
* @param delegateTask 代理人员
* 代理人员
* @param runtimeTaskExtension 任务扩展
* @param runtimeTaskExtension
* 任务扩展
*/
*/
protected
void
reviseExtendData
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
protected
void
reviseExtendData
(
DelegateTask
delegateTask
,
RuntimeTaskExtension
runtimeTaskExtension
)
{
...
@@ -956,8 +938,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -956,8 +938,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>设置任务执行人信息
* <li>设置任务执行人信息
* </ul>
* </ul>
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onBeforeCreate
(
DelegateTask
delegateTask
)
{
protected
void
onBeforeCreate
(
DelegateTask
delegateTask
)
{
RuntimeTaskExtension
runtimeTaskExtension
=
new
RuntimeTaskExtension
();
RuntimeTaskExtension
runtimeTaskExtension
=
new
RuntimeTaskExtension
();
...
@@ -1057,8 +1038,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1057,8 +1038,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>给任务赋默认值
* <li>给任务赋默认值
* </ul>
* </ul>
*
*
* @param delegateTas
* @param delegateTas 代理任务
* 代理任务
*/
*/
@Transactional
@Transactional
public
void
onCreate
(
DelegateTask
delegateTask
)
{
public
void
onCreate
(
DelegateTask
delegateTask
)
{
...
@@ -1068,8 +1048,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1068,8 +1048,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 给任务赋处理人事件
* 给任务赋处理人事件
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
public
void
onAssignment
(
DelegateTask
delegateTask
)
{
public
void
onAssignment
(
DelegateTask
delegateTask
)
{
...
@@ -1090,8 +1069,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1090,8 +1069,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 是否抢占取消任务
* 是否抢占取消任务
*
*
* @param delegateTask
* @param delegateTask 任务代理
* 任务代理
* @return
* @return
*/
*/
private
boolean
isPreemptCanceledTask
(
DelegateTask
delegateTask
)
{
private
boolean
isPreemptCanceledTask
(
DelegateTask
delegateTask
)
{
...
@@ -1102,6 +1080,17 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1102,6 +1080,17 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
return
false
;
return
false
;
}
}
/**
* @since 1.1.3
*/
private
boolean
isLimitHandlerCanceledTask
(
DelegateTask
delegateTask
)
{
Object
object
=
delegateTask
.
getVariable
(
LIMIT_HANDLER_CANCEL_VARIABLE
);
if
(
object
!=
null
)
{
return
delegateTask
.
getVariable
(
LIMIT_HANDLER_CANCEL_VARIABLE
,
Boolean
.
class
);
}
return
false
;
}
/**
/**
* 处理任务协作模式
* 处理任务协作模式
*
*
...
@@ -1140,7 +1129,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1140,7 +1129,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
List
<
String
>
taskIds
=
this
.
actApplication
.
queryRuTaskIdsByProcessInstanceId
(
delegateTask
.
getProcessInstanceId
());
List
<
String
>
taskIds
=
this
.
actApplication
.
queryRuTaskIdsByProcessInstanceId
(
delegateTask
.
getProcessInstanceId
());
for
(
String
taskId
:
taskIds
)
{
for
(
String
taskId
:
taskIds
)
{
if
(!
delegateTask
.
getId
().
equals
(
taskId
))
{
if
(!
delegateTask
.
getId
().
equals
(
taskId
))
{
Map
<
String
,
Object
>
variables
=
new
HashMap
<
String
,
Object
>(
1
);
Map
<
String
,
Object
>
variables
=
new
HashMap
<>(
1
);
variables
.
put
(
PREEMPT_CANCEL_VARIABLE
,
true
);
variables
.
put
(
PREEMPT_CANCEL_VARIABLE
,
true
);
this
.
workflowService
.
getTaskService
().
complete
(
taskId
,
variables
,
true
);
this
.
workflowService
.
getTaskService
().
complete
(
taskId
,
variables
,
true
);
}
}
...
@@ -1148,6 +1137,19 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1148,6 +1137,19 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
this
.
procUnitHandlerApplication
.
updateOtherProcUnitHandlersResultSystemComplete
(
this
.
getBizId
(),
delegateTask
.
getTaskDefinitionKey
(),
this
.
procUnitHandlerApplication
.
updateOtherProcUnitHandlersResultSystemComplete
(
this
.
getBizId
(),
delegateTask
.
getTaskDefinitionKey
(),
this
.
getCurrentHandleGroupId
(),
procUnitHandlerId
,
null
);
this
.
getCurrentHandleGroupId
(),
procUnitHandlerId
,
null
);
}
else
{
}
else
{
// @since 1.1.3
if
(
isLimitHandler
(
procUnitHandler
.
getProcUnitId
(),
procUnitHandler
.
getGroupId
(),
procUnitHandler
.
getLimitHandler
()))
{
// 系统完成其他人的任务(包括协审任务)
Map
<
String
,
Object
>
variables
=
new
HashMap
<>(
1
);
variables
.
put
(
LIMIT_HANDLER_CANCEL_VARIABLE
,
true
);
this
.
actApplication
.
queryRuTaskIdsByProcessInstanceId
(
delegateTask
.
getProcessInstanceId
())
.
stream
()
.
filter
(
taskId
->
!
taskId
.
equals
(
delegateTask
.
getId
()))
.
forEach
(
taskId
->
workflowService
.
getTaskService
().
complete
(
taskId
,
variables
,
true
));
this
.
procUnitHandlerApplication
.
updateOtherProcUnitHandlersResultSystemComplete
(
this
.
getBizId
(),
delegateTask
.
getTaskDefinitionKey
(),
this
.
getCurrentHandleGroupId
(),
procUnitHandlerId
,
null
);
return
;
}
// 主审完成后,查询协审任务添加到通知事件环境中
// 主审完成后,查询协审任务添加到通知事件环境中
List
<
String
>
taskIds
=
this
.
actApplication
.
queryRuAssistantTaskIds
(
this
.
getBizId
(),
procUnitHandlerId
);
List
<
String
>
taskIds
=
this
.
actApplication
.
queryRuAssistantTaskIds
(
this
.
getBizId
(),
procUnitHandlerId
);
for
(
String
taskId
:
taskIds
)
{
for
(
String
taskId
:
taskIds
)
{
...
@@ -1156,11 +1158,28 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1156,11 +1158,28 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
}
}
}
}
/**
* @since 1.1.3
*/
private
boolean
isLimitHandler
(
String
procUnitId
,
Integer
groupId
,
Integer
limitHandler
)
{
int
procUnitHandlerCount
=
procUnitHandlerApplication
.
queryProcUnitHandlerIds
(
getBizId
(),
procUnitId
,
groupId
).
size
();
if
(
procUnitHandlerCount
<
2
)
{
return
false
;
}
// 已完成的环节处理人(主审)
List
<
ProcUnitHandler
>
completedChiefProcUnitHandlers
=
procUnitHandlerApplication
.
queryCompletedProcUnitHandlers
(
getBizId
(),
procUnitId
,
groupId
)
.
stream
()
.
filter
(
handler
->
CooperationModelKind
.
isChief
(
handler
.
getCooperationModelId
()))
.
collect
(
Collectors
.
toList
());
return
limitHandler
!=
null
&&
limitHandler
>
0
&&
Objects
.
equals
(
limitHandler
,
completedChiefProcUnitHandlers
.
size
());
}
/**
/**
* 任务完成前事件处理
* 任务完成前事件处理
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onBeforeComplete
(
DelegateTask
delegateTask
)
{
protected
void
onBeforeComplete
(
DelegateTask
delegateTask
)
{
if
(
isApprovalProcUnit
(
delegateTask
))
{
if
(
isApprovalProcUnit
(
delegateTask
))
{
...
@@ -1205,8 +1224,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1205,8 +1224,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 任务完成后事件处理
* 任务完成后事件处理
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onAfterComplete
(
DelegateTask
delegateTask
)
{
protected
void
onAfterComplete
(
DelegateTask
delegateTask
)
{
...
@@ -1217,8 +1235,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1217,8 +1235,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 基类只处理申请环节提交后,计算审批环节处理人
* 基类只处理申请环节提交后,计算审批环节处理人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
@Deprecated
@Deprecated
protected
void
calculateNextProcUnitHandlers
(
DelegateTask
delegateTask
)
{
protected
void
calculateNextProcUnitHandlers
(
DelegateTask
delegateTask
)
{
...
@@ -1348,7 +1365,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1348,7 +1365,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
private
void
calculateNextProcUnitHandlersForQueryAdvance
(
VariableScope
variableScope
,
String
processDefinitionKey
,
String
nextProcUnitId
)
{
private
void
calculateNextProcUnitHandlersForQueryAdvance
(
VariableScope
variableScope
,
String
processDefinitionKey
,
String
nextProcUnitId
)
{
List
<
Object
>
inputHandlers
=
this
.
getBizAndApprovalData
().
getList
(
"procUnitHandlers"
);
List
<
Object
>
inputHandlers
=
this
.
getBizAndApprovalData
().
getList
(
"procUnitHandlers"
);
List
<
Map
<
String
,
Object
>>
handlerList
=
new
ArrayList
<
Map
<
String
,
Object
>
>(
inputHandlers
.
size
());
List
<
Map
<
String
,
Object
>>
handlerList
=
new
ArrayList
<>(
inputHandlers
.
size
());
checkQueryAdvance
(
inputHandlers
);
checkQueryAdvance
(
inputHandlers
);
...
@@ -1428,8 +1445,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1428,8 +1445,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 修正下一环节处理人
* 修正下一环节处理人
*
*
* @param handlerList
* @param handlerList 环节处理人
* 环节处理人
*/
*/
protected
void
reviseNextProcUnitHandlers
(
List
<
Map
<
String
,
Object
>>
handlerList
)
{
protected
void
reviseNextProcUnitHandlers
(
List
<
Map
<
String
,
Object
>>
handlerList
)
{
...
@@ -1527,8 +1543,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1527,8 +1543,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 计算下一环节处理人
* 计算下一环节处理人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
doCalculateNextProcUnitHandlers
(
DelegateTask
delegateTask
)
{
protected
void
doCalculateNextProcUnitHandlers
(
DelegateTask
delegateTask
)
{
checkLicense
();
checkLicense
();
...
@@ -1566,8 +1581,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1566,8 +1581,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 2、当前环节已审批完成,获取下一环节第一组审批人
* 2、当前环节已审批完成,获取下一环节第一组审批人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
fillNextGroupHandlers
(
DelegateTask
delegateTask
)
{
protected
void
fillNextGroupHandlers
(
DelegateTask
delegateTask
)
{
Boolean
needApprove
=
ClassHelper
.
convert
(
delegateTask
.
getVariable
(
"needApprove"
),
Boolean
.
class
,
true
);
Boolean
needApprove
=
ClassHelper
.
convert
(
delegateTask
.
getVariable
(
"needApprove"
),
Boolean
.
class
,
true
);
...
@@ -1605,8 +1619,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1605,8 +1619,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 保存逻辑处理
* 保存逻辑处理
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onSave
(
DelegateTask
delegateTask
)
{
protected
void
onSave
(
DelegateTask
delegateTask
)
{
}
}
...
@@ -1614,8 +1627,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1614,8 +1627,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 提交事件
* 提交事件
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onAdvance
(
DelegateTask
delegateTask
)
{
protected
void
onAdvance
(
DelegateTask
delegateTask
)
{
...
@@ -1624,10 +1636,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1624,10 +1636,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 抓回逻辑处理
* 抓回逻辑处理
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param destActivityId 目标环境id
* @param destActivityId
* 目标环境id
*/
*/
protected
void
onWithdraw
(
DelegateTask
delegateTask
,
String
destActivityId
)
{
protected
void
onWithdraw
(
DelegateTask
delegateTask
,
String
destActivityId
)
{
...
@@ -1734,7 +1744,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1734,7 +1744,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
result
=
true
;
result
=
true
;
break
;
break
;
}
}
if
(
isLimitHandlerCanceledTask
(
delegateTask
))
{
result
=
true
;
break
;
}
String
bizId
=
approvalParameter
.
getBizId
();
String
bizId
=
approvalParameter
.
getBizId
();
if
(
StringUtil
.
isNotBlank
(
bizId
))
{
if
(
StringUtil
.
isNotBlank
(
bizId
))
{
if
(
approvalParameter
.
isQueryAdvanceProcessAction
()
||
approvalParameter
.
getOnlyAdvance
())
{
if
(
approvalParameter
.
isQueryAdvanceProcessAction
()
||
approvalParameter
.
getOnlyAdvance
())
{
...
@@ -1793,8 +1806,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1793,8 +1806,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <li>计算并填充流出节点的处理人
* <li>计算并填充流出节点的处理人
* </ul>
* </ul>
*
*
* @param delegateTask
* @param delegateTask 代理人
* 代理人
*/
*/
public
void
onComplete
(
DelegateTask
delegateTask
)
{
public
void
onComplete
(
DelegateTask
delegateTask
)
{
if
(
fireEvent
(
delegateTask
))
{
if
(
fireEvent
(
delegateTask
))
{
...
@@ -1908,10 +1920,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1908,10 +1920,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 取出下一组审批人列表,放入到handlerList中
* 取出下一组审批人列表,放入到handlerList中
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param nextProcUnitId 下一环节ID
* @param nextProcUnitId
* 下一环节ID
*/
*/
protected
void
fillHandlerListVariable
(
DelegateTask
delegateTask
,
String
nextProcUnitId
)
{
protected
void
fillHandlerListVariable
(
DelegateTask
delegateTask
,
String
nextProcUnitId
)
{
List
<
String
>
handlers
=
buildNextActivityGroupHandlers
(
delegateTask
.
getExecution
().
getProcessBusinessKey
(),
nextProcUnitId
,
getCurrentHandleGroupId
());
List
<
String
>
handlers
=
buildNextActivityGroupHandlers
(
delegateTask
.
getExecution
().
getProcessBusinessKey
(),
nextProcUnitId
,
getCurrentHandleGroupId
());
...
@@ -1931,10 +1941,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1931,10 +1941,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
* <p>
* <p>
* 2、当前环节已审批完成,获取下一环节第一组审批人
* 2、当前环节已审批完成,获取下一环节第一组审批人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @param nextProcUnitId 下一环节ID
* @param nextProcUnitId
* 下一环节ID
*/
*/
protected
void
doFillNextGroupHandlers
(
DelegateTask
delegateTask
,
String
nextProcUnitId
)
{
protected
void
doFillNextGroupHandlers
(
DelegateTask
delegateTask
,
String
nextProcUnitId
)
{
if
(
StringUtil
.
isNotBlank
(
nextProcUnitId
))
{
if
(
StringUtil
.
isNotBlank
(
nextProcUnitId
))
{
...
@@ -1967,8 +1975,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -1967,8 +1975,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 任务删除事件
* 任务删除事件
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
void
onDelete
(
DelegateTask
delegateTask
)
{
protected
void
onDelete
(
DelegateTask
delegateTask
)
{
// 审批未通过终止,删除流程实例的时候,任务已删除。
// 审批未通过终止,删除流程实例的时候,任务已删除。
...
@@ -2058,8 +2065,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2058,8 +2065,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 保存业务数据
* 保存业务数据
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
protected
String
onSaveBizData
(
DelegateTask
delegateTask
)
{
protected
String
onSaveBizData
(
DelegateTask
delegateTask
)
{
return
saveBizAndApprovalData
(
delegateTask
);
return
saveBizAndApprovalData
(
delegateTask
);
...
@@ -2067,8 +2073,6 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2067,8 +2073,6 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 检查审批规则处理人不能为空
* 检查审批规则处理人不能为空
*
* @param approvalRuleHandlers
*/
*/
private
void
checkApprovalRuleHandlerNotNull
(
ApprovalRule
approvalRule
)
{
private
void
checkApprovalRuleHandlerNotNull
(
ApprovalRule
approvalRule
)
{
// 检查审批人是否为空
// 检查审批人是否为空
...
@@ -2108,18 +2112,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2108,18 +2112,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
return
false
;
return
false
;
}
}
/**
*
*/
/**
/**
* 生成任务执行模型
* 生成任务执行模型
*
*
* @param approvalRule
* @param approvalRule 审批规则
* 审批规则
* @param groupId 分组ID
* @param groupId
* @param handler 处理人
* 分组ID
* @param handler
* 处理人
*/
*/
private
void
buildTaskExecuteMode
(
ApprovalRule
approvalRule
,
Integer
groupId
,
Map
<
String
,
Object
>
handler
)
{
private
void
buildTaskExecuteMode
(
ApprovalRule
approvalRule
,
Integer
groupId
,
Map
<
String
,
Object
>
handler
)
{
ApprovalRuleHandlerGroup
approvalRuleHandlerGroup
=
approvalRule
.
findApprovalRuleHandlerGroup
(
groupId
);
ApprovalRuleHandlerGroup
approvalRuleHandlerGroup
=
approvalRule
.
findApprovalRuleHandlerGroup
(
groupId
);
...
@@ -2131,18 +2129,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2131,18 +2129,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 生成环节预览处理人
* 生成环节预览处理人
*
*
* @param processDefinitionKey
* @param processDefinitionKey 流程定义ID
* 流程定义ID
* @param procUnitId 流程环节ID
* @param procUnitId
* @param procUnitName 流程环节名称
* 流程环节ID
* @param hasGatewayManual 是否有选择网关
* @param procUnitName
* @param bizParams 业务参数
* 流程环节名称
* @param handlers 处理人
* @param hasGatewayManual
* 是否有选择网关
* @param bizParams
* 业务参数
* @param handlers
* 处理人
* @return
* @return
*/
*/
protected
boolean
buildProcUnitHandlersForQuery
(
DelegateTask
delegateTask
,
String
processDefinitionKey
,
String
procUnitId
,
String
procUnitName
,
protected
boolean
buildProcUnitHandlersForQuery
(
DelegateTask
delegateTask
,
String
processDefinitionKey
,
String
procUnitId
,
String
procUnitName
,
...
@@ -2259,8 +2251,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2259,8 +2251,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 预览处理人事件
* 预览处理人事件
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
*/
*/
@SuppressWarnings
(
"unchecked"
)
@SuppressWarnings
(
"unchecked"
)
protected
void
onQueryHandlers
(
DelegateTask
delegateTask
)
{
protected
void
onQueryHandlers
(
DelegateTask
delegateTask
)
{
...
@@ -2284,11 +2275,11 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2284,11 +2275,11 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
Integer
porcUnitSequence
=
0
;
Integer
porcUnitSequence
=
0
;
List
<
Map
<
String
,
Object
>>
handlers
=
new
ArrayList
<
Map
<
String
,
Object
>
>(
nextProcUnits
.
size
());
List
<
Map
<
String
,
Object
>>
handlers
=
new
ArrayList
<>(
nextProcUnits
.
size
());
List
<
Map
<
String
,
Object
>>
currentProcUnitHandlers
;
List
<
Map
<
String
,
Object
>>
currentProcUnitHandlers
;
for
(
String
procUnitId
:
nextProcUnits
.
keySet
())
{
for
(
String
procUnitId
:
nextProcUnits
.
keySet
())
{
currentProcUnitHandlers
=
new
ArrayList
<
Map
<
String
,
Object
>
>();
currentProcUnitHandlers
=
new
ArrayList
<>();
if
(
hasGatewayManual
)
{
if
(
hasGatewayManual
)
{
if
(
nextProcUnits
.
get
(
procUnitId
)
instanceof
EndEvent
)
{
if
(
nextProcUnits
.
get
(
procUnitId
)
instanceof
EndEvent
)
{
handlers
.
add
(
buildEndHandlersForQuery
(
procUnitId
));
handlers
.
add
(
buildEndHandlersForQuery
(
procUnitId
));
...
@@ -2351,10 +2342,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2351,10 +2342,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 冒泡排序处理人
* 冒泡排序处理人
*
*
* @param handlers
* @param handlers 处理人
* 处理人
* @param sortField 排序字段
* @param sortField
* 排序字段
*/
*/
private
void
bubbleSortHandlers
(
List
<
Map
<
String
,
Object
>>
handlers
,
String
sortField
)
{
private
void
bubbleSortHandlers
(
List
<
Map
<
String
,
Object
>>
handlers
,
String
sortField
)
{
Integer
currentValue
,
nextValue
;
Integer
currentValue
,
nextValue
;
...
@@ -2405,8 +2394,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2405,8 +2394,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 得到流程业务参数
* 得到流程业务参数
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @return 业务参数
* @return 业务参数
*/
*/
protected
Map
<
String
,
Object
>
getProcessBizParams
(
String
bizId
)
{
protected
Map
<
String
,
Object
>
getProcessBizParams
(
String
bizId
)
{
...
@@ -2416,8 +2404,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2416,8 +2404,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 得到当前Activity
* 得到当前Activity
*
*
* @param processDefinitionId
* @param processDefinitionId 流程定义ID
* 流程定义ID
* @return activity 环节ID
* @return activity 环节ID
*/
*/
protected
ActivityImpl
getCurrentActivity
(
String
processDefinitionId
,
String
activityId
)
{
protected
ActivityImpl
getCurrentActivity
(
String
processDefinitionId
,
String
activityId
)
{
...
@@ -2436,8 +2423,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2436,8 +2423,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 是否申请环节
* 是否申请环节
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @return 是否申请环节
* @return 是否申请环节
*/
*/
protected
boolean
isApplyProcUnit
(
DelegateTask
delegateTask
)
{
protected
boolean
isApplyProcUnit
(
DelegateTask
delegateTask
)
{
...
@@ -2575,18 +2561,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2575,18 +2561,12 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 生成环节处理人
* 生成环节处理人
*
*
* @param approvalRule
* @param approvalRule 审批规则
* 审批规则
* @param approvalRuleHandler 审批规则处理人
* @param approvalRuleHandler
* @param bizId 业务ID
* 审批规则处理人
* @param procUnitId 流程环节ID
* @param bizId
* @param orgUnit 组织单元
* 业务ID
* @param sequence 序号
* @param procUnitId
* 流程环节ID
* @param orgUnit
* 组织单元
* @param sequence
* 序号
* @return
* @return
*/
*/
protected
Map
<
String
,
Object
>
buildProcUnitHandler
(
ApprovalRule
approvalRule
,
ApprovalRuleHandler
approvalRuleHandler
,
String
bizId
,
String
procUnitId
,
protected
Map
<
String
,
Object
>
buildProcUnitHandler
(
ApprovalRule
approvalRule
,
ApprovalRuleHandler
approvalRuleHandler
,
String
bizId
,
String
procUnitId
,
...
@@ -2600,6 +2580,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2600,6 +2580,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
approvalRuleHandler
.
getGroupId
(),
sequence
,
0
);
approvalRuleHandler
.
getGroupId
(),
sequence
,
0
);
if
(
approvalRule
!=
null
)
{
if
(
approvalRule
!=
null
)
{
buildTaskExecuteMode
(
approvalRule
,
approvalRuleHandler
.
getGroupId
(),
handler
);
buildTaskExecuteMode
(
approvalRule
,
approvalRuleHandler
.
getGroupId
(),
handler
);
buildLimitHandler
(
approvalRule
,
approvalRuleHandler
,
handler
);
}
}
// 发送消息
// 发送消息
handler
.
put
(
"sendMessage"
,
approvalRuleHandler
.
getSendMessage
());
handler
.
put
(
"sendMessage"
,
approvalRuleHandler
.
getSendMessage
());
...
@@ -2607,6 +2588,16 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2607,6 +2588,16 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
return
handler
;
return
handler
;
}
}
/**
* @since 1.1.3
*/
private
void
buildLimitHandler
(
ApprovalRule
approvalRule
,
ApprovalRuleHandler
approvalRuleHandler
,
Map
<
String
,
Object
>
handler
)
{
ApprovalRuleHandlerGroup
approvalRuleHandlerGroup
=
approvalRule
.
findApprovalRuleHandlerGroup
(
approvalRuleHandler
.
getGroupId
());
if
(
approvalRuleHandlerGroup
!=
null
)
{
handler
.
put
(
"limitHandler"
,
approvalRuleHandlerGroup
.
getLimitHandler
());
}
}
/**
/**
* 添加附加审批人员
* 添加附加审批人员
* <p>
* <p>
...
@@ -2625,14 +2616,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2625,14 +2616,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 添加附加处理人
* 添加附加处理人
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param chiefHandlers 主审人
* @param chiefHandlers
* @param additionalHandlers 附加处理人
* 主审人
* @param currentProcUnitId 当前流程环节ID
* @param additionalHandlers
* 附加处理人
* @param currentProcUnitId
* 当前流程环节ID
*/
*/
protected
void
addAdditionalHandlers
(
String
bizId
,
List
<
Map
<
String
,
Object
>>
chiefHandlers
,
List
<
Map
<
String
,
Object
>>
additionalHandlers
,
protected
void
addAdditionalHandlers
(
String
bizId
,
List
<
Map
<
String
,
Object
>>
chiefHandlers
,
List
<
Map
<
String
,
Object
>>
additionalHandlers
,
String
currentProcUnitId
)
{
String
currentProcUnitId
)
{
...
@@ -2678,8 +2665,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2678,8 +2665,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 通过环节ID获取环节处理人
* 通过环节ID获取环节处理人
*
*
* @param delegateTask
* @param delegateTask 代理任务
* 代理任务
* @return 环节处理人
* @return 环节处理人
*/
*/
protected
List
<
OrgUnit
>
getHandlersByProcUnitId
(
DelegateTask
delegateTask
,
String
procUnitId
)
{
protected
List
<
OrgUnit
>
getHandlersByProcUnitId
(
DelegateTask
delegateTask
,
String
procUnitId
)
{
...
@@ -2750,7 +2736,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2750,7 +2736,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
continue
;
continue
;
}
}
currentPersonId
=
currentPersonId
.
substring
(
0
,
currentPersonId
.
indexOf
(
'@'
));
currentPersonId
=
currentPersonId
.
substring
(
0
,
currentPersonId
.
indexOf
(
'@'
));
handlersLoop:
for
(
int
j
=
i
-
1
;
j
>=
0
;
j
--)
{
handlersLoop:
for
(
int
j
=
i
-
1
;
j
>=
0
;
j
--)
{
priorHandler
=
handlers
.
get
(
j
);
priorHandler
=
handlers
.
get
(
j
);
priorPersonId
=
ClassHelper
.
convert
(
priorHandler
.
get
(
"handlerId"
),
String
.
class
);
priorPersonId
=
ClassHelper
.
convert
(
priorHandler
.
get
(
"handlerId"
),
String
.
class
);
priorStatus
=
ClassHelper
.
convert
(
priorHandler
.
get
(
"status"
),
Integer
.
class
,
0
);
priorStatus
=
ClassHelper
.
convert
(
priorHandler
.
get
(
"status"
),
Integer
.
class
,
0
);
...
@@ -2799,10 +2786,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2799,10 +2786,8 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 排除指定人员
* 排除指定人员
*
*
* @param bizId
* @param bizId 业务ID
* 业务ID
* @param handlers 处理人集合
* @param handlers
* 处理人集合
*/
*/
private
void
excludeSpecifiedHandler
(
String
bizId
,
List
<
Map
<
String
,
Object
>>
handlers
)
{
private
void
excludeSpecifiedHandler
(
String
bizId
,
List
<
Map
<
String
,
Object
>>
handlers
)
{
List
<
String
>
specifiedExcludeHandler
=
getSpecifiedExcludeHandler
(
bizId
);
List
<
String
>
specifiedExcludeHandler
=
getSpecifiedExcludeHandler
(
bizId
);
...
@@ -2840,8 +2825,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2840,8 +2825,7 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 得到指定的排除人员列表
* 得到指定的排除人员列表
*
*
* @param bizId
* @param bizId 业务id
* 业务id
* @return
* @return
*/
*/
protected
List
<
String
>
getSpecifiedExcludeHandler
(
String
bizId
)
{
protected
List
<
String
>
getSpecifiedExcludeHandler
(
String
bizId
)
{
...
@@ -2851,12 +2835,9 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2851,12 +2835,9 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 内部抄送
* 内部抄送
*
*
* @param orgUnits
* @param orgUnits 组织单元
* 组织单元
* @param taskId 任务ID
* @param taskId
* @param description 标题
* 任务ID
* @param description
* 标题
*/
*/
private
void
internalMakeACopyFor
(
List
<
OrgUnit
>
orgUnits
,
String
taskId
,
String
description
)
{
private
void
internalMakeACopyFor
(
List
<
OrgUnit
>
orgUnits
,
String
taskId
,
String
description
)
{
if
(
orgUnits
.
size
()
>
0
)
{
if
(
orgUnits
.
size
()
>
0
)
{
...
@@ -2874,14 +2855,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
...
@@ -2874,14 +2855,10 @@ public class FlowBroker extends BaseApplication implements TaskListener, Executi
/**
/**
* 给指定的管理权限发抄送任务
* 给指定的管理权限发抄送任务
*
*
* @param orgId
* @param orgId 组织ID
* 组织ID
* @param manageType 业务管理权限类别
* @param manageType
* @param taskId 任务ID
* 业务管理权限类别
* @param description 标题
* @param taskId
* 任务ID
* @param description
* 标题
*/
*/
protected
void
makeACopyForToManageType
(
String
orgId
,
String
manageType
,
String
taskId
,
String
description
)
{
protected
void
makeACopyForToManageType
(
String
orgId
,
String
manageType
,
String
taskId
,
String
description
)
{
List
<
OrgUnit
>
orgUnits
=
orgFun
.
findManagers
(
orgId
,
manageType
,
false
,
null
);
List
<
OrgUnit
>
orgUnits
=
orgFun
.
findManagers
(
orgId
,
manageType
,
false
,
null
);
...
...
huigou-uasp/src/main/java/com/huigou/uasp/bpm/configuration/application/impl/ApprovalRuleApplicationImpl.java
View file @
d382ecaa
...
@@ -461,10 +461,16 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
...
@@ -461,10 +461,16 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
}
}
@Override
@Override
@Transactional
@Transactional
(
rollbackFor
=
RuntimeException
.
class
)
public
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
public
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerUIElmentPermission
>
uiElmentPermissions
)
{
List
<
ApprovalRuleHandlerUIElmentPermission
>
fieldAuthorizations
)
{
saveApprovalRuleHandler
(
approvalRuleId
,
approvalRuleHandler
,
taskExecuteMode
,
null
,
assistants
,
ccs
,
fieldAuthorizations
);
}
@Transactional
(
rollbackFor
=
RuntimeException
.
class
)
@Override
public
void
saveApprovalRuleHandler
(
String
approvalRuleId
,
ApprovalRuleHandler
approvalRuleHandler
,
TaskExecuteMode
taskExecuteMode
,
Integer
limitHandler
,
List
<
ApprovalRuleHandlerAssist
>
assistants
,
List
<
ApprovalRuleHandlerAssist
>
ccs
,
List
<
ApprovalRuleHandlerUIElmentPermission
>
fieldAuthorizations
)
{
Assert
.
hasText
(
approvalRuleId
,
"参数approvalRuleId不能为空。"
);
Assert
.
hasText
(
approvalRuleId
,
"参数approvalRuleId不能为空。"
);
Assert
.
notNull
(
approvalRuleHandler
,
"参数approvalRuleHandler不能为空。"
);
Assert
.
notNull
(
approvalRuleHandler
,
"参数approvalRuleHandler不能为空。"
);
...
@@ -473,13 +479,18 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
...
@@ -473,13 +479,18 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
ApprovalRuleHandler
sourceApprovalRuleHandler
=
approvalRule
.
findApprovalRuleHandler
(
approvalRuleHandler
.
getId
());
ApprovalRuleHandler
sourceApprovalRuleHandler
=
approvalRule
.
findApprovalRuleHandler
(
approvalRuleHandler
.
getId
());
ApprovalRuleHandlerGroup
approvalRuleHandlerGroup
=
approvalRule
.
findApprovalRuleHandlerGroup
(
sourceApprovalRuleHandler
.
getGroupId
());
ApprovalRuleHandlerGroup
approvalRuleHandlerGroup
=
approvalRule
.
findApprovalRuleHandlerGroup
(
sourceApprovalRuleHandler
.
getGroupId
());
sourceApprovalRuleHandler
.
fromEntity
(
approvalRuleHandler
);
sourceApprovalRuleHandler
.
fromEntity
(
approvalRuleHandler
);
if
(
taskExecuteMode
==
null
)
{
if
(
taskExecuteMode
==
null
&&
limitHandler
==
null
)
{
if
(
approvalRuleHandlerGroup
!=
null
)
{
if
(
approvalRuleHandlerGroup
!=
null
)
{
approvalRule
.
getApprovalRuleHandlerGroups
().
remove
(
approvalRuleHandlerGroup
);
approvalRule
.
getApprovalRuleHandlerGroups
().
remove
(
approvalRuleHandlerGroup
);
}
}
}
if
(
taskExecuteMode
==
null
)
{
if
(
approvalRuleHandlerGroup
!=
null
)
{
approvalRuleHandlerGroup
.
setTaskExecuteMode
(
null
);
}
}
else
{
}
else
{
if
(
approvalRuleHandlerGroup
==
null
)
{
if
(
approvalRuleHandlerGroup
==
null
)
{
approvalRuleHandlerGroup
=
new
ApprovalRuleHandlerGroup
();
approvalRuleHandlerGroup
=
new
ApprovalRuleHandlerGroup
();
...
@@ -488,6 +499,21 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
...
@@ -488,6 +499,21 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
approvalRuleHandlerGroup
.
setGroupId
(
sourceApprovalRuleHandler
.
getGroupId
());
approvalRuleHandlerGroup
.
setGroupId
(
sourceApprovalRuleHandler
.
getGroupId
());
approvalRuleHandlerGroup
.
setTaskExecuteMode
(
taskExecuteMode
);
approvalRuleHandlerGroup
.
setTaskExecuteMode
(
taskExecuteMode
);
}
}
if
(
limitHandler
==
null
)
{
if
(
approvalRuleHandlerGroup
!=
null
)
{
approvalRuleHandlerGroup
.
setLimitHandler
(
null
);
}
}
else
{
if
(
approvalRuleHandlerGroup
==
null
)
{
approvalRuleHandlerGroup
=
new
ApprovalRuleHandlerGroup
();
approvalRule
.
getApprovalRuleHandlerGroups
().
add
(
approvalRuleHandlerGroup
);
}
approvalRuleHandlerGroup
.
setGroupId
(
sourceApprovalRuleHandler
.
getGroupId
());
approvalRuleHandlerGroup
.
setLimitHandler
(
limitHandler
);
}
// 协审 抄送
// 协审 抄送
sourceApprovalRuleHandler
.
getAssists
().
clear
();
sourceApprovalRuleHandler
.
getAssists
().
clear
();
if
(
assistants
!=
null
)
{
if
(
assistants
!=
null
)
{
...
@@ -498,8 +524,8 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
...
@@ -498,8 +524,8 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
}
}
// 权限字段
// 权限字段
sourceApprovalRuleHandler
.
getUIElmentPermissions
().
clear
();
sourceApprovalRuleHandler
.
getUIElmentPermissions
().
clear
();
if
(
uiElmentPermiss
ions
!=
null
)
{
if
(
fieldAuthorizat
ions
!=
null
)
{
sourceApprovalRuleHandler
.
getUIElmentPermissions
().
addAll
(
uiElmentPermiss
ions
);
sourceApprovalRuleHandler
.
getUIElmentPermissions
().
addAll
(
fieldAuthorizat
ions
);
}
}
this
.
commonDomainService
.
saveTreeEntity
(
approvalRule
,
this
.
approvalRuleRepository
,
approvalRule
.
getName
(),
false
);
this
.
commonDomainService
.
saveTreeEntity
(
approvalRule
,
this
.
approvalRuleRepository
,
approvalRule
.
getName
(),
false
);
}
}
...
@@ -521,7 +547,7 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
...
@@ -521,7 +547,7 @@ public class ApprovalRuleApplicationImpl extends BaseApplication implements Appr
if
(
procunithandlerIds
!=
null
&&
procunithandlerIds
.
size
()
>
0
)
{
if
(
procunithandlerIds
!=
null
&&
procunithandlerIds
.
size
()
>
0
)
{
List
<
Object
[]>
updateIds
=
new
ArrayList
<>(
procunithandlerIds
.
size
());
List
<
Object
[]>
updateIds
=
new
ArrayList
<>(
procunithandlerIds
.
size
());
for
(
String
procunithandlerId
:
procunithandlerIds
)
{
for
(
String
procunithandlerId
:
procunithandlerIds
)
{
updateIds
.
add
(
new
Object
[]
{
procunithandlerId
});
updateIds
.
add
(
new
Object
[]
{
procunithandlerId
});
}
}
if
(
updateIds
.
size
()
>
0
)
{
if
(
updateIds
.
size
()
>
0
)
{
this
.
sqlExecutorDao
.
batchUpdate
(
"update wf_procunithandler t set t.approval_rule_handler_id='' where t.id=?"
,
updateIds
);
this
.
sqlExecutorDao
.
batchUpdate
(
"update wf_procunithandler t set t.approval_rule_handler_id='' where t.id=?"
,
updateIds
);
...
...
huigou-uasp/src/main/java/com/huigou/uasp/bpm/configuration/controller/ApprovalRuleController.java
View file @
d382ecaa
...
@@ -343,7 +343,7 @@ public class ApprovalRuleController extends CommonController {
...
@@ -343,7 +343,7 @@ public class ApprovalRuleController extends CommonController {
return
success
();
return
success
();
}
}
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则处理人"
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则处理人"
)
public
String
saveApprovalRuleHandlers
()
{
public
String
saveApprovalRuleHandlers
()
{
SDO
params
=
this
.
getSDO
();
SDO
params
=
this
.
getSDO
();
...
@@ -356,7 +356,7 @@ public class ApprovalRuleController extends CommonController {
...
@@ -356,7 +356,7 @@ public class ApprovalRuleController extends CommonController {
return
success
();
return
success
();
}
}
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则处理人"
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则处理人"
)
public
String
saveApprovalRuleHandler
()
{
public
String
saveApprovalRuleHandler
()
{
SDO
params
=
this
.
getSDO
();
SDO
params
=
this
.
getSDO
();
...
@@ -365,6 +365,8 @@ public class ApprovalRuleController extends CommonController {
...
@@ -365,6 +365,8 @@ public class ApprovalRuleController extends CommonController {
ApprovalRuleHandler
approvalRuleHandler
=
params
.
toObject
(
ApprovalRuleHandler
.
class
);
ApprovalRuleHandler
approvalRuleHandler
=
params
.
toObject
(
ApprovalRuleHandler
.
class
);
// 分组 任务执行模式
// 分组 任务执行模式
TaskExecuteMode
taskExecuteMode
=
TaskExecuteMode
.
fromId
(
params
.
getString
(
"taskExecuteMode"
));
TaskExecuteMode
taskExecuteMode
=
TaskExecuteMode
.
fromId
(
params
.
getString
(
"taskExecuteMode"
));
// 最少审批人数
Integer
limitHandler
=
params
.
getInteger
(
"limitHandler"
);
// 协审
// 协审
List
<
ApprovalRuleHandlerAssist
>
assistants
=
params
.
getList
(
"assistantList"
,
ApprovalRuleHandlerAssist
.
class
);
List
<
ApprovalRuleHandlerAssist
>
assistants
=
params
.
getList
(
"assistantList"
,
ApprovalRuleHandlerAssist
.
class
);
// 抄送
// 抄送
...
@@ -372,7 +374,7 @@ public class ApprovalRuleController extends CommonController {
...
@@ -372,7 +374,7 @@ public class ApprovalRuleController extends CommonController {
// 字段权限
// 字段权限
List
<
ApprovalRuleHandlerUIElmentPermission
>
uiElmentPermissions
=
params
.
getList
(
"fieldPermissionList"
,
ApprovalRuleHandlerUIElmentPermission
.
class
);
List
<
ApprovalRuleHandlerUIElmentPermission
>
uiElmentPermissions
=
params
.
getList
(
"fieldPermissionList"
,
ApprovalRuleHandlerUIElmentPermission
.
class
);
this
.
approvalRuleApplication
.
saveApprovalRuleHandler
(
approvalRuleId
,
approvalRuleHandler
,
taskExecuteMode
,
assistants
,
ccs
,
uiElmentPermissions
);
this
.
approvalRuleApplication
.
saveApprovalRuleHandler
(
approvalRuleId
,
approvalRuleHandler
,
taskExecuteMode
,
limitHandler
,
assistants
,
ccs
,
uiElmentPermissions
);
return
success
();
return
success
();
}
}
...
@@ -409,7 +411,7 @@ public class ApprovalRuleController extends CommonController {
...
@@ -409,7 +411,7 @@ public class ApprovalRuleController extends CommonController {
return
toResult
(
data
);
return
toResult
(
data
);
}
}
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@RequiresPermissions
(
value
=
{
"ProcApprovalRuleConfig:create"
,
"ProcApprovalRuleConfig:update"
},
logical
=
Logical
.
OR
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则审批要素"
)
@LogInfo
(
logType
=
LogType
.
SYS
,
subType
=
""
,
operaionType
=
OperationType
.
SAVE
,
description
=
"保存流程审批规则审批要素"
)
public
String
saveApprovalRuleElements
()
{
public
String
saveApprovalRuleElements
()
{
SDO
params
=
this
.
getSDO
();
SDO
params
=
this
.
getSDO
();
...
@@ -448,6 +450,7 @@ public class ApprovalRuleController extends CommonController {
...
@@ -448,6 +450,7 @@ public class ApprovalRuleController extends CommonController {
if
(
approvalRuleHandlerGroup
!=
null
)
{
if
(
approvalRuleHandlerGroup
!=
null
)
{
this
.
putAttribute
(
"taskExecuteMode"
,
approvalRuleHandlerGroup
.
getTaskExecuteMode
());
this
.
putAttribute
(
"taskExecuteMode"
,
approvalRuleHandlerGroup
.
getTaskExecuteMode
());
this
.
putAttribute
(
"limitHandler"
,
approvalRuleHandlerGroup
.
getLimitHandler
());
}
}
return
forward
(
"ApprovalHandlerDetailConfig"
,
approvalRuleHandler
);
return
forward
(
"ApprovalHandlerDetailConfig"
,
approvalRuleHandler
);
...
...
huigou-uasp/src/main/java/com/huigou/uasp/bpm/engine/application/impl/ActApplicationImpl.java
View file @
d382ecaa
package
com
.
huigou
.
uasp
.
bpm
.
engine
.
application
.
impl
;
package
com
.
huigou
.
uasp
.
bpm
.
engine
.
application
.
impl
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.Iterator
;
import
java.util.List
;
import
java.util.Map
;
import
com.huigou.data.query.executor.SQLExecutorDao
;
import
com.huigou.util.*
;
import
org.activiti.engine.impl.context.Context
;
import
org.activiti.engine.impl.persistence.entity.HistoricProcessInstanceEntity
;
import
org.activiti.engine.task.Task
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
import
com.huigou.cache.SystemCache
;
import
com.huigou.cache.SystemCache
;
import
com.huigou.context.MessageSourceContext
;
import
com.huigou.context.MessageSourceContext
;
import
com.huigou.context.Operator
;
import
com.huigou.context.Operator
;
...
@@ -29,28 +12,28 @@ import com.huigou.data.query.model.QueryModel;
...
@@ -29,28 +12,28 @@ import com.huigou.data.query.model.QueryModel;
import
com.huigou.uasp.bmp.common.application.BaseApplication
;
import
com.huigou.uasp.bmp.common.application.BaseApplication
;
import
com.huigou.uasp.bmp.fn.impl.ProcessFun
;
import
com.huigou.uasp.bmp.fn.impl.ProcessFun
;
import
com.huigou.uasp.bmp.opm.domain.model.org.Org
;
import
com.huigou.uasp.bmp.opm.domain.model.org.Org
;
import
com.huigou.uasp.bpm.ActivityKind
;
import
com.huigou.uasp.bpm.*
;
import
com.huigou.uasp.bpm.HandleResult
;
import
com.huigou.uasp.bpm.ProcessStatus
;
import
com.huigou.uasp.bpm.TaskKind
;
import
com.huigou.uasp.bpm.TaskScope
;
import
com.huigou.uasp.bpm.TaskStatus
;
import
com.huigou.uasp.bpm.engine.application.ActApplication
;
import
com.huigou.uasp.bpm.engine.application.ActApplication
;
import
com.huigou.uasp.bpm.engine.application.ProcUnitHandlerApplication
;
import
com.huigou.uasp.bpm.engine.application.ProcUnitHandlerApplication
;
import
com.huigou.uasp.bpm.engine.application.WorkflowApplication
;
import
com.huigou.uasp.bpm.engine.application.WorkflowApplication
;
import
com.huigou.uasp.bpm.engine.domain.dto.BackTaskInfo
;
import
com.huigou.uasp.bpm.engine.domain.dto.BackTaskInfo
;
import
com.huigou.uasp.bpm.engine.domain.model.HistoricProcessInstanceExtension
;
import
com.huigou.uasp.bpm.engine.domain.model.*
;
import
com.huigou.uasp.bpm.engine.domain.model.HistoricTaskInstanceExtension
;
import
com.huigou.uasp.bpm.engine.domain.model.HistoricTaskInstanceRelation
;
import
com.huigou.uasp.bpm.engine.domain.model.ProcUnitHandler
;
import
com.huigou.uasp.bpm.engine.domain.model.ProcUnitHandlerManuscript
;
import
com.huigou.uasp.bpm.engine.domain.model.RuntimeTaskExtension
;
import
com.huigou.uasp.bpm.engine.domain.query.TaskDetail
;
import
com.huigou.uasp.bpm.engine.domain.query.TaskDetail
;
import
com.huigou.uasp.bpm.engine.repository.HistoricProcInstanceExtensionRepository
;
import
com.huigou.uasp.bpm.engine.repository.HistoricProcInstanceExtensionRepository
;
import
com.huigou.uasp.bpm.engine.repository.HistoricTaskInstanceExtensionRepository
;
import
com.huigou.uasp.bpm.engine.repository.HistoricTaskInstanceExtensionRepository
;
import
com.huigou.uasp.bpm.engine.repository.HistoricTaskInstanceRelationRepository
;
import
com.huigou.uasp.bpm.engine.repository.HistoricTaskInstanceRelationRepository
;
import
com.huigou.uasp.bpm.engine.repository.RuntimeTaskExtensionRepository
;
import
com.huigou.uasp.bpm.engine.repository.RuntimeTaskExtensionRepository
;
import
com.huigou.uasp.bpm.managment.application.ProcDefinitionApplication
;
import
com.huigou.uasp.bpm.managment.application.ProcDefinitionApplication
;
import
com.huigou.util.*
;
import
org.activiti.engine.impl.context.Context
;
import
org.activiti.engine.impl.persistence.entity.HistoricProcessInstanceEntity
;
import
org.activiti.engine.task.Task
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.Assert
;
import
java.util.*
;
@Service
(
"actApplication"
)
@Service
(
"actApplication"
)
public
class
ActApplicationImpl
extends
BaseApplication
implements
ActApplication
{
public
class
ActApplicationImpl
extends
BaseApplication
implements
ActApplication
{
...
@@ -536,6 +519,11 @@ public class ActApplicationImpl extends BaseApplication implements ActApplicatio
...
@@ -536,6 +519,11 @@ public class ActApplicationImpl extends BaseApplication implements ActApplicatio
return
this
.
sqlExecutorDao
.
queryToMap
(
sql
,
taskId
);
return
this
.
sqlExecutorDao
.
queryToMap
(
sql
,
taskId
);
}
}
@Override
public
RuntimeTaskExtension
queryByRuntimeTaskById
(
String
taskId
)
{
return
runtimeTaskExtensionRepository
.
findOne
(
taskId
);
}
@Override
@Override
public
Map
<
String
,
Object
>
loadRuntimeTaskByBizId
(
String
bizId
)
{
public
Map
<
String
,
Object
>
loadRuntimeTaskByBizId
(
String
bizId
)
{
String
sql
=
this
.
getQuerySqlByName
(
"loadRuntimeTaskByBizId"
);
String
sql
=
this
.
getQuerySqlByName
(
"loadRuntimeTaskByBizId"
);
...
...
huigou-xt/src/main/webapp/system/configtool/approvalRule/ApprovalHandlerDetailConfig.jsp
View file @
d382ecaa
...
@@ -39,8 +39,11 @@
...
@@ -39,8 +39,11 @@
label=
"任务执行模式"
emptyOption=
"true"
fieldCol=
"4"
/>
label=
"任务执行模式"
emptyOption=
"true"
fieldCol=
"4"
/>
</div>
</div>
<div
class=
"hg-form-row"
>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"limitHandler"
label=
"最少审批人数"
spinner=
"true"
mask=
"nnn"
fieldCol=
"4"
/>
<x:inputC
name=
"groupId"
spinner=
"true"
mask=
"nnn"
<x:inputC
name=
"groupId"
spinner=
"true"
mask=
"nnn"
dataOptions=
"min:1"
required=
"true"
label=
"审批分组"
fieldCol=
"4"
/>
dataOptions=
"min:1"
required=
"true"
label=
"审批分组"
fieldCol=
"4"
/>
</div>
<div
class=
"hg-form-row"
>
<x:inputC
name=
"sequence"
spinner=
"true"
mask=
"nnn"
<x:inputC
name=
"sequence"
spinner=
"true"
mask=
"nnn"
dataOptions=
"min:1"
required=
"true"
label=
"审批序号"
fieldCol=
"4"
/>
dataOptions=
"min:1"
required=
"true"
label=
"审批序号"
fieldCol=
"4"
/>
</div>
</div>
...
...
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