Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibzwf
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibzwf
提交
435d12f8
提交
435d12f8
编写于
5月 06, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ibizdev提交
上级
b85a3000
变更
40
显示空白字符变更
内嵌
并排
正在显示
40 个修改的文件
包含
204 行增加
和
135 行删除
+204
-135
wfdyna-edit-view-engine.ts
app_web/src/engine/view/wfdyna-edit-view-engine.ts
+30
-0
entity-service.ts
app_web/src/service/entity-service.ts
+11
-5
default-searchform-service.ts
.../wfgroup/default-searchform/default-searchform-service.ts
+4
-3
main-form-base.vue
app_web/src/widgets/wfgroup/main-form/main-form-base.vue
+4
-3
main-form-service.ts
app_web/src/widgets/wfgroup/main-form/main-form-service.ts
+4
-3
default-searchform-service.ts
...wfmember/default-searchform/default-searchform-service.ts
+4
-3
main-form-base.vue
app_web/src/widgets/wfmember/main-form/main-form-base.vue
+4
-3
main-form-service.ts
app_web/src/widgets/wfmember/main-form/main-form-service.ts
+4
-3
default-searchform-service.ts
...finition/default-searchform/default-searchform-service.ts
+4
-3
main-form-base.vue
...widgets/wfprocess-definition/main-form/main-form-base.vue
+4
-3
main-form-service.ts
...dgets/wfprocess-definition/main-form/main-form-service.ts
+4
-3
default-searchform-service.ts
...s/wfuser/default-searchform/default-searchform-service.ts
+4
-3
main-form-base.vue
app_web/src/widgets/wfuser/main-form/main-form-base.vue
+4
-3
main-form-service.ts
app_web/src/widgets/wfuser/main-form/main-form-service.ts
+4
-3
config.xml
config.xml
+0
-5
application-dev.yml
ibzwf-boot/src/main/resources/application-dev.yml
+1
-1
WFGroupMapper.java
...n/java/cn/ibizlab/core/workflow/mapper/WFGroupMapper.java
+1
-1
WFMemberMapper.java
.../java/cn/ibizlab/core/workflow/mapper/WFMemberMapper.java
+1
-1
WFProcessDefinitionMapper.java
...izlab/core/workflow/mapper/WFProcessDefinitionMapper.java
+1
-1
WFSystemMapper.java
.../java/cn/ibizlab/core/workflow/mapper/WFSystemMapper.java
+1
-1
WFUserMapper.java
...in/java/cn/ibizlab/core/workflow/mapper/WFUserMapper.java
+1
-1
WFGroupServiceImpl.java
...bizlab/core/workflow/service/impl/WFGroupServiceImpl.java
+1
-0
WFMemberServiceImpl.java
...izlab/core/workflow/service/impl/WFMemberServiceImpl.java
+1
-0
WFProcessDefinitionServiceImpl.java
...workflow/service/impl/WFProcessDefinitionServiceImpl.java
+1
-0
WFProcessInstanceServiceImpl.java
...e/workflow/service/impl/WFProcessInstanceServiceImpl.java
+1
-0
WFProcessNodeServiceImpl.java
.../core/workflow/service/impl/WFProcessNodeServiceImpl.java
+1
-0
WFSystemServiceImpl.java
...izlab/core/workflow/service/impl/WFSystemServiceImpl.java
+1
-0
WFTaskServiceImpl.java
...ibizlab/core/workflow/service/impl/WFTaskServiceImpl.java
+1
-0
WFTaskWayServiceImpl.java
...zlab/core/workflow/service/impl/WFTaskWayServiceImpl.java
+1
-0
WFUserServiceImpl.java
...ibizlab/core/workflow/service/impl/WFUserServiceImpl.java
+1
-0
Dockerfile
ibzwf-provider/ibzwf-provider-api/src/main/docker/Dockerfile
+1
-1
ibzwf-provider-api.yaml
...bzwf-provider-api/src/main/docker/ibzwf-provider-api.yaml
+1
-3
application-api-dev.yml
...f-provider-api/src/main/resources/application-api-dev.yml
+1
-1
application-api-prod.yml
...-provider-api/src/main/resources/application-api-prod.yml
+1
-1
IBZUAAFallback.java
.../src/main/java/cn/ibizlab/util/client/IBZUAAFallback.java
+4
-3
IBZUAAFeignClient.java
...c/main/java/cn/ibizlab/util/client/IBZUAAFeignClient.java
+10
-11
AuthPermissionEvaluator.java
...ava/cn/ibizlab/util/security/AuthPermissionEvaluator.java
+13
-25
AuthenticationUser.java
...ain/java/cn/ibizlab/util/security/AuthenticationUser.java
+2
-3
IBZUAAUserService.java
.../main/java/cn/ibizlab/util/service/IBZUAAUserService.java
+67
-0
SimpleUserService.java
.../main/java/cn/ibizlab/util/service/SimpleUserService.java
+0
-35
未找到文件。
app_web/src/engine/view/wfdyna-edit-view-engine.ts
0 → 100644
浏览文件 @
435d12f8
import
EditViewEngine
from
'./edit-view-engine'
;
/**
* 视图引擎基础
*
* @export
* @class WFDynaEditViewEngine
* @extends {EditViewEngine}
*/
export
default
class
WFDynaEditViewEngine
extends
EditViewEngine
{
/**
* Creates an instance of WFDynaEditViewEngine.
* @memberof WFDynaEditViewEngine
*/
constructor
()
{
super
();
}
/**
* 表单加载完成
*
* @param {*} args
* @memberof WFDynaEditViewEngine
*/
public
onFormLoad
(
arg
:
any
):
void
{
super
.
onFormLoad
(
arg
);
this
.
view
.
getWFLinkModel
();
}
}
\ No newline at end of file
app_web/src/service/entity-service.ts
浏览文件 @
435d12f8
...
...
@@ -759,7 +759,7 @@ export default class EntityService {
* @memberof EntityService
*/
public
async
GetWFLink
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
return
Http
.
getInstance
().
get
(
`/wfcore/
${
this
.
SYSTEMNAME
}
-app-
${
this
.
APPNAME
}
/
${
this
.
APPDENAME
}
/
${
data
[
this
.
APP
DEKEY
]}
/usertasks/
${
data
[
'taskDefinitionKey'
]}
/ways`
);
return
Http
.
getInstance
().
get
(
`/wfcore/
${
this
.
SYSTEMNAME
}
-app-
${
this
.
APPNAME
}
/
${
this
.
APPDENAME
}
/
${
context
[
this
.
APPLY
DEKEY
]}
/usertasks/
${
data
[
'taskDefinitionKey'
]}
/ways`
);
}
/**
...
...
@@ -768,13 +768,19 @@ export default class EntityService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {
boolean} [isEmbeddedApp
]
* @param {
*} [localdata
]
* @returns {Promise<any>}
* @memberof EntityService
*/
public
async
WFSubmit
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
isEmbeddedApp
?:
boolean
):
Promise
<
any
>
{
if
(
isEmbeddedApp
){
return
Http
.
getInstance
().
post
(
`/wfcore/
${
this
.
SYSTEMNAME
}
-app-
${
this
.
APPNAME
}
/
${
this
.
APPDENAME
}
/
${
data
[
this
.
APPDEKEY
]}
/tasks/
${
data
[
'taskId'
]}
`
);
public
async
WFSubmit
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
if
(
localdata
&&
Object
.
keys
(
localdata
).
length
>
0
){
const
requestData
:
any
=
{};
if
(
data
.
viewparams
){
delete
data
.
viewparams
;
}
Object
.
assign
(
requestData
,{
activedata
:
data
});
Object
.
assign
(
requestData
,
localdata
);
return
Http
.
getInstance
().
post
(
`/wfcore/
${
this
.
SYSTEMNAME
}
-app-
${
this
.
APPNAME
}
/
${
this
.
APPDENAME
}
/
${
data
[
this
.
APPDEKEY
]}
/tasks/
${
localdata
[
'taskId'
]}
`
,
requestData
,
isloading
);
}
else
{
const
requestData
:
any
=
{};
if
(
data
.
srfwfmemo
){
...
...
app_web/src/widgets/wfgroup/default-searchform/default-searchform-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class DefaultService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof DefaultService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfgroup/main-form/main-form-base.vue
浏览文件 @
435d12f8
...
...
@@ -1310,10 +1310,11 @@ export default class MainBase extends Vue implements ControlInterface {
* 工作流提交
*
* @param {*} [data={}]
* @param {*} [localdata={}]
* @returns {Promise<any>}
* @memberof Main
*/
protected
async
wfsubmit
(
data
:
any
):
Promise
<
any
>
{
protected
async
wfsubmit
(
data
:
any
,
localdata
?:
any
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
WFSubmitAction
){
this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'WFGroupEditView视图表单WFSubmitAction参数未配置'
});
...
...
@@ -1325,13 +1326,13 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
arg
.
wfgroup
||
Object
.
is
(
arg
.
wfgroup
,
''
))
{
return
;
}
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
post
.
then
((
response
:
any
)
=>
{
const
arg
:
any
=
response
.
data
;
if
(
this
.
viewparams
){
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
}
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
result
.
then
((
response
:
any
)
=>
{
if
(
!
response
||
response
.
status
!==
200
)
{
this
.
$Notice
.
error
({
title
:
''
,
desc
:
'工作流提交失败, '
+
response
.
info
});
...
...
app_web/src/widgets/wfgroup/main-form/main-form-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class MainService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof MainService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfmember/default-searchform/default-searchform-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class DefaultService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof DefaultService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfmember/main-form/main-form-base.vue
浏览文件 @
435d12f8
...
...
@@ -1319,10 +1319,11 @@ export default class MainBase extends Vue implements ControlInterface {
* 工作流提交
*
* @param {*} [data={}]
* @param {*} [localdata={}]
* @returns {Promise<any>}
* @memberof Main
*/
protected
async
wfsubmit
(
data
:
any
):
Promise
<
any
>
{
protected
async
wfsubmit
(
data
:
any
,
localdata
?:
any
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
WFSubmitAction
){
this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'WFMemberEditView视图表单WFSubmitAction参数未配置'
});
...
...
@@ -1334,13 +1335,13 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
arg
.
wfmember
||
Object
.
is
(
arg
.
wfmember
,
''
))
{
return
;
}
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
post
.
then
((
response
:
any
)
=>
{
const
arg
:
any
=
response
.
data
;
if
(
this
.
viewparams
){
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
}
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
result
.
then
((
response
:
any
)
=>
{
if
(
!
response
||
response
.
status
!==
200
)
{
this
.
$Notice
.
error
({
title
:
''
,
desc
:
'工作流提交失败, '
+
response
.
info
});
...
...
app_web/src/widgets/wfmember/main-form/main-form-service.ts
浏览文件 @
435d12f8
...
...
@@ -134,20 +134,21 @@ export default class MainService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof MainService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfprocess-definition/default-searchform/default-searchform-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class DefaultService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof DefaultService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfprocess-definition/main-form/main-form-base.vue
浏览文件 @
435d12f8
...
...
@@ -1424,10 +1424,11 @@ export default class MainBase extends Vue implements ControlInterface {
* 工作流提交
*
* @param {*} [data={}]
* @param {*} [localdata={}]
* @returns {Promise<any>}
* @memberof Main
*/
protected
async
wfsubmit
(
data
:
any
):
Promise
<
any
>
{
protected
async
wfsubmit
(
data
:
any
,
localdata
?:
any
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
WFSubmitAction
){
this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'WFProcessDefinitionEditView视图表单WFSubmitAction参数未配置'
});
...
...
@@ -1439,13 +1440,13 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
arg
.
wfprocessdefinition
||
Object
.
is
(
arg
.
wfprocessdefinition
,
''
))
{
return
;
}
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
post
.
then
((
response
:
any
)
=>
{
const
arg
:
any
=
response
.
data
;
if
(
this
.
viewparams
){
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
}
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
result
.
then
((
response
:
any
)
=>
{
if
(
!
response
||
response
.
status
!==
200
)
{
this
.
$Notice
.
error
({
title
:
''
,
desc
:
'工作流提交失败, '
+
response
.
info
});
...
...
app_web/src/widgets/wfprocess-definition/main-form/main-form-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class MainService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof MainService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfuser/default-searchform/default-searchform-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class DefaultService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof DefaultService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
app_web/src/widgets/wfuser/main-form/main-form-base.vue
浏览文件 @
435d12f8
...
...
@@ -1268,10 +1268,11 @@ export default class MainBase extends Vue implements ControlInterface {
* 工作流提交
*
* @param {*} [data={}]
* @param {*} [localdata={}]
* @returns {Promise<any>}
* @memberof Main
*/
protected
async
wfsubmit
(
data
:
any
):
Promise
<
any
>
{
protected
async
wfsubmit
(
data
:
any
,
localdata
?:
any
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
WFSubmitAction
){
this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'WFUserEditView视图表单WFSubmitAction参数未配置'
});
...
...
@@ -1283,13 +1284,13 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
arg
.
wfuser
||
Object
.
is
(
arg
.
wfuser
,
''
))
{
return
;
}
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
post
:
Promise
<
any
>
=
Object
.
is
(
arg
.
srfuf
,
'1'
)?
this
.
service
.
update
(
this
.
updateAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
):
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
post
.
then
((
response
:
any
)
=>
{
const
arg
:
any
=
response
.
data
;
if
(
this
.
viewparams
){
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
}
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
);
const
result
:
Promise
<
any
>
=
this
.
service
.
wfsubmit
(
_this
.
WFSubmitAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
arg
,
this
.
showBusyIndicator
,
localdata
);
result
.
then
((
response
:
any
)
=>
{
if
(
!
response
||
response
.
status
!==
200
)
{
this
.
$Notice
.
error
({
title
:
''
,
desc
:
'工作流提交失败, '
+
response
.
info
});
...
...
app_web/src/widgets/wfuser/main-form/main-form-service.ts
浏览文件 @
435d12f8
...
...
@@ -122,20 +122,21 @@ export default class MainService extends ControlService {
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @param {*} [localdata]
* @returns {Promise<any>}
* @memberof MainService
*/
@
Errorlog
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
wfsubmit
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
,
localdata
?:
any
):
Promise
<
any
>
{
data
=
this
.
handleWFData
(
data
,
true
);
context
=
this
.
handleRequestData
(
action
,
context
,
data
).
context
;
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
);
result
=
_appEntityService
[
action
](
context
,
data
,
isloading
,
localdata
);
}
else
{
result
=
this
.
appEntityService
.
Create
(
context
,
data
,
isloading
);
result
=
this
.
appEntityService
.
WFSubmit
(
context
,
data
,
isloading
,
localdata
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
...
...
config.xml
浏览文件 @
435d12f8
...
...
@@ -38,11 +38,6 @@
git clone -b master $para2 ibzwf/
export NODE_OPTIONS=--max-old-space-size=4096
cd ibzwf/
mvn clean package -Papi
cd ibzwf-provider/ibzwf-provider-api
mvn -Papi docker:build
mvn -Papi docker:push
docker -H $para1 stack deploy --compose-file=src/main/docker/ibzwf-provider-api.yaml dev --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
...
...
ibzwf-boot/src/main/resources/application-dev.yml
浏览文件 @
435d12f8
server
:
port
:
40003
port
:
8080
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/mapper/WFGroupMapper.java
浏览文件 @
435d12f8
...
...
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
java.util.Map
;
import
java.util.
Hash
Map
;
import
org.apache.ibatis.annotations.Select
;
import
cn.ibizlab.core.workflow.domain.WFGroup
;
import
cn.ibizlab.core.workflow.filter.WFGroupSearchContext
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/mapper/WFMemberMapper.java
浏览文件 @
435d12f8
...
...
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
java.util.Map
;
import
java.util.
Hash
Map
;
import
org.apache.ibatis.annotations.Select
;
import
cn.ibizlab.core.workflow.domain.WFMember
;
import
cn.ibizlab.core.workflow.filter.WFMemberSearchContext
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/mapper/WFProcessDefinitionMapper.java
浏览文件 @
435d12f8
...
...
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
java.util.Map
;
import
java.util.
Hash
Map
;
import
org.apache.ibatis.annotations.Select
;
import
cn.ibizlab.core.workflow.domain.WFProcessDefinition
;
import
cn.ibizlab.core.workflow.filter.WFProcessDefinitionSearchContext
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/mapper/WFSystemMapper.java
浏览文件 @
435d12f8
...
...
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
java.util.Map
;
import
java.util.
Hash
Map
;
import
org.apache.ibatis.annotations.Select
;
import
cn.ibizlab.core.workflow.domain.WFSystem
;
import
cn.ibizlab.core.workflow.filter.WFSystemSearchContext
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/mapper/WFUserMapper.java
浏览文件 @
435d12f8
...
...
@@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
java.util.Map
;
import
java.util.
Hash
Map
;
import
org.apache.ibatis.annotations.Select
;
import
cn.ibizlab.core.workflow.domain.WFUser
;
import
cn.ibizlab.core.workflow.filter.WFUserSearchContext
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFGroupServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFMemberServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFProcessDefinitionServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFProcessInstanceServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFProcessNodeServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFSystemServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFTaskServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFTaskWayServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-core/src/main/java/cn/ibizlab/core/workflow/service/impl/WFUserServiceImpl.java
浏览文件 @
435d12f8
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.Set
;
import
java.util.HashSet
;
import
java.util.HashMap
;
import
java.util.Collection
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
ibzwf-provider/ibzwf-provider-api/src/main/docker/Dockerfile
浏览文件 @
435d12f8
...
...
@@ -9,6 +9,6 @@ CMD echo "The application will start in ${IBZ_SLEEP}s..." && \
sleep ${IBZ_SLEEP} && \
java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /ibzwf-provider-api.jar
EXPOSE
40003
EXPOSE
8081
ADD
ibzwf-provider-api.jar /ibzwf-provider-api.jar
ibzwf-provider/ibzwf-provider-api/src/main/docker/ibzwf-provider-api.yaml
浏览文件 @
435d12f8
...
...
@@ -3,11 +3,9 @@ services:
ibzwf-provider-api
:
image
:
registry.cn-shanghai.aliyuncs.com/ibizsys/ibzwf-provider-api:latest
ports
:
-
"
40003:40003
"
-
"
8081:8081
"
networks
:
-
agent_network
environment
:
SPRING_CLOUD_NACOS_DISCOVERY_IP
:
172.16.180.237
deploy
:
mode
:
replicated
replicas
:
1
...
...
ibzwf-provider/ibzwf-provider-api/src/main/resources/application-api-dev.yml
浏览文件 @
435d12f8
server
:
port
:
40003
\ No newline at end of file
port
:
8081
\ No newline at end of file
ibzwf-provider/ibzwf-provider-api/src/main/resources/application-api-prod.yml
浏览文件 @
435d12f8
server
:
port
:
40003
port
:
8081
ibzwf-util/src/main/java/cn/ibizlab/util/client/IBZUAAFallback.java
浏览文件 @
435d12f8
package
cn
.
ibizlab
.
util
.
client
;
import
com.alibaba.fastjson.JSONObject
;
import
cn.ibizlab.util.security.AuthenticationUser
;
import
cn.ibizlab.util.security.AuthorizationLogin
;
import
org.springframework.stereotype.Component
;
import
java.util.Map
;
...
...
@@ -8,12 +9,12 @@ import java.util.Map;
public
class
IBZUAAFallback
implements
IBZUAAFeignClient
{
@Override
public
JSONObject
getUserPermissionData
(
String
loginName
,
String
systemId
)
{
public
Map
<
String
,
Object
>
pushSystemPermissionData
(
Map
<
String
,
Object
>
systemPermissionData
,
String
systemId
)
{
return
null
;
}
@Override
public
Map
<
String
,
Object
>
pushSystemPermissionData
(
Map
<
String
,
Object
>
systemPermissionData
,
String
systemId
)
{
public
AuthenticationUser
login
(
AuthorizationLogin
authorizationLogin
)
{
return
null
;
}
...
...
ibzwf-util/src/main/java/cn/ibizlab/util/client/IBZUAAFeignClient.java
浏览文件 @
435d12f8
package
cn
.
ibizlab
.
util
.
client
;
import
com.alibaba.fastjson.JSONObject
;
import
cn.ibizlab.util.security.AuthenticationUser
;
import
cn.ibizlab.util.security.AuthorizationLogin
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.Map
;
...
...
@@ -8,16 +9,6 @@ import java.util.Map;
@FeignClient
(
value
=
"ibzuaa"
,
fallback
=
IBZUAAFallback
.
class
)
public
interface
IBZUAAFeignClient
{
/**
* 从uaa中获取当前用户权限
* @param loginName
* @param systemId
* @return
*/
@GetMapping
(
value
=
"/uaa/permission/{loginname}"
)
JSONObject
getUserPermissionData
(
@PathVariable
(
"loginname"
)
String
loginName
,
@RequestParam
(
"systemid"
)
String
systemId
);
/**
* 推送系统权限数据到uaa
* @param systemPermissionData
...
...
@@ -27,4 +18,12 @@ public interface IBZUAAFeignClient
@PostMapping
(
"/uaa/permission/save"
)
Map
<
String
,
Object
>
pushSystemPermissionData
(
@RequestBody
Map
<
String
,
Object
>
systemPermissionData
,
@RequestParam
(
"systemid"
)
String
systemId
);
/**
* 用户登录
* @param authorizationLogin 登录信息
* @return
*/
@PostMapping
(
value
=
"/uaa/authentication/login"
)
AuthenticationUser
login
(
@RequestBody
AuthorizationLogin
authorizationLogin
);
}
ibzwf-util/src/main/java/cn/ibizlab/util/security/AuthPermissionEvaluator.java
浏览文件 @
435d12f8
...
...
@@ -4,8 +4,6 @@ import com.alibaba.fastjson.JSONArray;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.mongodb.BasicDBList
;
import
com.mongodb.BasicDBObject
;
import
com.mongodb.QueryBuilder
;
import
cn.ibizlab.util.annotation.DEField
;
import
cn.ibizlab.util.domain.EntityBase
;
...
...
@@ -13,9 +11,7 @@ import cn.ibizlab.util.enums.DEPredefinedFieldType;
import
cn.ibizlab.util.filter.QueryBuildContext
;
import
cn.ibizlab.util.filter.QueryWrapperContext
;
import
cn.ibizlab.util.helper.DEFieldCacheMap
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.domain.PageImpl
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.BasicQuery
;
import
org.springframework.data.mongodb.core.query.Query
;
...
...
@@ -25,13 +21,9 @@ import org.springframework.stereotype.Component;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.StringUtils
;
import
javax.annotation.Resource
;
import
javax.swing.text.html.parser.Entity
;
import
java.io.Serializable
;
import
java.lang.reflect.Field
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
/**
* spring security 权限管理类
...
...
@@ -440,13 +432,11 @@ public class AuthPermissionEvaluator implements PermissionEvaluator {
String
orgDeptField
=
permissionField
.
get
(
"orgsecfield"
);
String
createManField
=
permissionField
.
get
(
"createmanfield"
);
AuthenticationUser
authenticationUser
=
AuthenticationUser
.
getAuthenticationUser
();
JSONObject
userInfo
=
authenticationUser
.
getOrgInfo
();
JSONObject
orgObject
=
userInfo
.
getJSONObject
(
"org"
);
JSONArray
orgParent
=
orgObject
.
getJSONArray
(
"porg"
);
JSONArray
orgChild
=
orgObject
.
getJSONArray
(
"sorg"
);
JSONObject
orgDeptObject
=
userInfo
.
getJSONObject
(
"orgdept"
);
JSONArray
orgDeptParent
=
orgDeptObject
.
getJSONArray
(
"porgdept"
);
JSONArray
orgDeptChild
=
orgDeptObject
.
getJSONArray
(
"sorgdept"
);
Map
<
String
,
Set
<
String
>>
userInfo
=
authenticationUser
.
getOrgInfo
();
Set
<
String
>
orgParent
=
userInfo
.
get
(
"parentorg"
);
Set
<
String
>
orgChild
=
userInfo
.
get
(
"suborg"
);
Set
<
String
>
orgDeptParent
=
userInfo
.
get
(
"parentdept"
);
Set
<
String
>
orgDeptChild
=
userInfo
.
get
(
"subdept"
);
for
(
int
i
=
0
;
i
<
oppriList
.
size
();
i
++){
String
permissionCond
=
oppriList
.
getString
(
i
);
//权限配置条件
...
...
@@ -492,13 +482,11 @@ public class AuthPermissionEvaluator implements PermissionEvaluator {
String
createManField
=
permissionField
.
get
(
"createmanfield"
);
StringBuffer
permissionSQL
=
new
StringBuffer
();
AuthenticationUser
authenticationUser
=
AuthenticationUser
.
getAuthenticationUser
();
JSONObject
userInfo
=
authenticationUser
.
getOrgInfo
();
JSONObject
orgObject
=
userInfo
.
getJSONObject
(
"org"
);
JSONArray
orgParent
=
orgObject
.
getJSONArray
(
"porg"
);
JSONArray
orgChild
=
orgObject
.
getJSONArray
(
"sorg"
);
JSONObject
orgDeptObject
=
userInfo
.
getJSONObject
(
"orgdept"
);
JSONArray
orgDeptParent
=
orgDeptObject
.
getJSONArray
(
"porgdept"
);
JSONArray
orgDeptChild
=
orgDeptObject
.
getJSONArray
(
"sorgdept"
);
Map
<
String
,
Set
<
String
>>
userInfo
=
authenticationUser
.
getOrgInfo
();
Set
<
String
>
orgParent
=
userInfo
.
get
(
"parentorg"
);
Set
<
String
>
orgChild
=
userInfo
.
get
(
"suborg"
);
Set
<
String
>
orgDeptParent
=
userInfo
.
get
(
"parentdept"
);
Set
<
String
>
orgDeptChild
=
userInfo
.
get
(
"subdept"
);
for
(
int
i
=
0
;
i
<
oppriList
.
size
();
i
++){
permissionSQL
.
append
(
"OR"
);
...
...
@@ -607,7 +595,7 @@ public class AuthPermissionEvaluator implements PermissionEvaluator {
* 转换[a,b]格式字符串到 'a','b'格式
* @return
*/
private
String
formatStringArr
(
JSONArray
array
)
{
private
String
formatStringArr
(
Set
<
String
>
array
)
{
String
[]
arr
=
array
.
toArray
(
new
String
[
array
.
size
()]);
return
"'"
+
String
.
join
(
"','"
,
arr
)
+
"'"
;
...
...
ibzwf-util/src/main/java/cn/ibizlab/util/security/AuthenticationUser.java
浏览文件 @
435d12f8
...
...
@@ -12,6 +12,7 @@ import java.util.Map;
import
java.util.HashMap
;
import
java.sql.Timestamp
;
import
java.util.Collection
;
import
java.util.Set
;
import
com.alibaba.fastjson.JSONObject
;
@Data
...
...
@@ -60,14 +61,12 @@ public class AuthenticationUser implements UserDetails
private
Collection
<
GrantedAuthority
>
authorities
;
@JsonIgnore
private
int
superuser
;
@JsonIgnore
private
JSONObject
permisionList
;
private
String
orglevel
;
//单位级别
private
String
deptlevel
;
//部门级别
@JsonIgnore
private
Map
<
String
,
Object
>
userSessionParam
;
//用户自定义session值
@JsonIgnore
private
JSONObject
orgInfo
;
//上下级组织信息
private
Map
<
String
,
Set
<
String
>>
orgInfo
;
//上下级组织信息
@JsonIgnore
...
...
ibzwf-util/src/main/java/cn/ibizlab/util/service/IBZUAAUserService.java
0 → 100644
浏览文件 @
435d12f8
package
cn
.
ibizlab
.
util
.
service
;
import
com.alibaba.fastjson.JSONObject
;
import
cn.ibizlab.util.client.IBZOUFeignClient
;
import
cn.ibizlab.util.client.IBZUAAFeignClient
;
import
cn.ibizlab.util.security.AuthenticationUser
;
import
cn.ibizlab.util.security.AuthorizationLogin
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.DigestUtils
;
import
org.springframework.util.StringUtils
;
/**
* 实体[IBZUSER] 服务对象接口实现
*/
//@Primary
@Service
(
"IBZUAAUserService"
)
public
class
IBZUAAUserService
implements
AuthenticationUserService
{
@Autowired
private
IBZUAAFeignClient
uaaFeignClient
;
@Override
public
AuthenticationUser
loadUserByUsername
(
String
username
)
{
String
[]
data
=
username
.
split
(
"[|]"
);
String
loginname
=
username
;
String
domains
=
""
;
String
password
=
""
;
if
(
data
.
length
==
3
)
{
loginname
=
data
[
0
].
trim
();
domains
=
data
[
1
].
trim
();
password
=
data
[
2
].
trim
();
}
else
if
(
data
.
length
==
2
)
{
loginname
=
data
[
0
].
trim
();
password
=
data
[
1
].
trim
();
}
AuthorizationLogin
user
=
new
AuthorizationLogin
();
user
.
setDomain
(
domains
);
user
.
setLoginname
(
loginname
);
user
.
setPassword
(
password
);
return
uaaFeignClient
.
login
(
user
);
}
@Override
public
AuthenticationUser
loadUserByLogin
(
String
username
,
String
password
)
{
AuthenticationUser
authuserdetail
=
loadUserByUsername
(
username
+
"|"
+
password
);
return
authuserdetail
;
}
@Override
public
AuthenticationUser
loadUserByLogin
(
String
domain
,
String
username
,
String
password
)
{
if
(!
StringUtils
.
isEmpty
(
domain
))
username
=
username
+
"|"
+
domain
;
return
loadUserByLogin
(
username
,
password
);
}
@Override
public
void
resetByUsername
(
String
username
)
{
}
}
ibzwf-util/src/main/java/cn/ibizlab/util/service/SimpleUserService.java
浏览文件 @
435d12f8
...
...
@@ -25,12 +25,6 @@ public class SimpleUserService implements AuthenticationUserService{
@Value
(
"${ibiz.systemid:2C40DFCD-0DF5-47BF-91A5-C45F810B0001}"
)
private
String
systemid
;
@Autowired
private
IBZUAAFeignClient
uaaFeignClient
;
@Autowired
private
IBZOUFeignClient
ouFeignClient
;
@Override
public
AuthenticationUser
loadUserByUsername
(
String
username
)
{
AuthenticationUser
user
=
new
AuthenticationUser
();
...
...
@@ -60,9 +54,6 @@ public class SimpleUserService implements AuthenticationUserService{
user
.
setOrgcode
(
domains
);
user
.
setOrgname
(
domains
);
setUserPermission
(
user
);
setUserOrgInfo
(
user
);
return
user
;
}
...
...
@@ -85,30 +76,4 @@ public class SimpleUserService implements AuthenticationUserService{
}
/**
* 设置用户权限
*/
private
void
setUserPermission
(
AuthenticationUser
user
)
{
if
(
enablePermissionValid
){
JSONObject
permission
=
uaaFeignClient
.
getUserPermissionData
(
user
.
getLoginname
(),
systemid
);
user
.
setPermisionList
(
permission
);
}
}
/**
* 设置用户组织相关信息
* @param user
*/
private
void
setUserOrgInfo
(
AuthenticationUser
user
)
{
if
(
enablePermissionValid
)
{
JSONObject
orgInfo
=
ouFeignClient
.
getOrgInfo
(
user
.
getLoginname
());
if
(
orgInfo
==
null
)
throw
new
RuntimeException
(
"获取用户信息失败,请检查用户中心[IBZOU]中是否存在当前用户!"
);
JSONObject
curUser
=
orgInfo
.
getJSONObject
(
"curuser"
);
user
.
setOrgInfo
(
orgInfo
);
user
.
setMdeptid
(
curUser
.
getString
(
"orgdept"
));
user
.
setOrgid
(
curUser
.
getString
(
"org"
));
}
}
}
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录