Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibzou
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibzou
提交
6d5ed466
提交
6d5ed466
编写于
6月 08, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ibiz4j 发布系统代码
上级
c62dd8cb
变更
42
展开全部
显示空白字符变更
内嵌
并排
正在显示
42 个修改的文件
包含
1135 行增加
和
571 行删除
+1135
-571
app-register.ts
app_web/src/app-register.ts
+2
-0
app-autocomplete.vue
app_web/src/components/app-autocomplete/app-autocomplete.vue
+20
-12
app-breadcrumb.vue
app_web/src/components/app-breadcrumb/app-breadcrumb.vue
+30
-37
app-checkbox-list.vue
...eb/src/components/app-checkbox-list/app-checkbox-list.vue
+22
-14
app-embed-picker.vue
app_web/src/components/app-embed-picker/app-embed-picker.vue
+26
-22
app-mpicker.vue
app_web/src/components/app-mpicker/app-mpicker.vue
+22
-14
app-picker-select-view.vue
...ponents/app-picker-select-view/app-picker-select-view.vue
+58
-53
app-picker.vue
app_web/src/components/app-picker/app-picker.vue
+14
-9
app-radio-group.vue
app_web/src/components/app-radio-group/app-radio-group.vue
+22
-14
app-span.vue
app_web/src/components/app-span/app-span.vue
+12
-4
app-transfer.less
app_web/src/components/app-transfer/app-transfer.less
+6
-0
app-transfer.vue
app_web/src/components/app-transfer/app-transfer.vue
+300
-0
app-tree-picker.vue
app_web/src/components/app-tree-picker/app-tree-picker.vue
+32
-28
codelist.vue
app_web/src/components/codelist/codelist.vue
+16
-8
context-menu.less
app_web/src/components/context-menu/context-menu.less
+5
-0
dropdown-list-dynamic.vue
...omponents/dropdown-list-dynamic/dropdown-list-dynamic.vue
+15
-7
dropdown-list-mpicker.vue
...omponents/dropdown-list-mpicker/dropdown-list-mpicker.vue
+16
-8
dropdown-list.vue
app_web/src/components/dropdown-list/dropdown-list.vue
+14
-6
tab-page-exp.less
app_web/src/components/tab-page-exp/tab-page-exp.less
+63
-109
tab-page-exp.vue
app_web/src/components/tab-page-exp/tab-page-exp.vue
+37
-15
edit-view-engine.ts
app_web/src/engine/view/edit-view-engine.ts
+4
-3
index.ts
app_web/src/locale/index.ts
+2
-1
en-US.ts
app_web/src/locale/lang/en-US.ts
+3
-0
zh-CN.ts
app_web/src/locale/lang/zh-CN.ts
+3
-0
ibzdepartment-mpickup-view-base.vue
...partment-mpickup-view/ibzdepartment-mpickup-view-base.vue
+3
-0
ibzemployee-mpickup-view-base.vue
...bzemployee-mpickup-view/ibzemployee-mpickup-view-base.vue
+3
-0
router.ts
app_web/src/pages/ou/ouindex-view/router.ts
+234
-117
shims-vue.d.ts
app_web/src/shims-vue.d.ts
+2
-1
default.less
app_web/src/styles/default.less
+6
-0
util.d.ts
app_web/src/utils/types/util.d.ts
+14
-0
util.ts
app_web/src/utils/util/util.ts
+38
-0
dept-tree-treeview-service.ts
...partment/dept-tree-treeview/dept-tree-treeview-service.ts
+1
-2
edit-grid-grid-base.vue
...gets/ibzdepartment/edit-grid-grid/edit-grid-grid-base.vue
+2
-1
main-form-base.vue
...eb/src/widgets/ibzdepartment/main-form/main-form-base.vue
+4
-12
tree-exp-viewtreeexpbar-treeexpbar-base.vue
...ar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar-base.vue
+16
-22
main-form-base.vue
...b/src/widgets/ibzdept-member/main-form/main-form-base.vue
+4
-2
edit-grid-grid-base.vue
...idgets/ibzemployee/edit-grid-grid/edit-grid-grid-base.vue
+19
-3
main-form-base.vue
app_web/src/widgets/ibzemployee/main-form/main-form-base.vue
+4
-2
main-form-base.vue
.../src/widgets/ibzorganization/main-form/main-form-base.vue
+4
-12
org-tree-treeview-service.ts
...ganization/org-tree-treeview/org-tree-treeview-service.ts
+1
-2
tree-exp-viewtreeexpbar-treeexpbar-base.vue
...ar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar-base.vue
+16
-22
pom.xml
ibzou-dependencies/pom.xml
+20
-9
未找到文件。
app_web/src/app-register.ts
浏览文件 @
6d5ed466
...
...
@@ -77,6 +77,7 @@ import IBizGroupSelect from './components/ibiz-group-select/ibiz-group-select.vu
import
IBizGroupPicker
from
'./components/ibiz-group-picker/ibiz-group-picker.vue'
import
AppWFApproval
from
'./components/app-wf-approval/app-wf-approval.vue'
import
Breadcrumb
from
'./components/app-breadcrumb/app-breadcrumb.vue'
;
import
AppTransfer
from
'./components/app-transfer/app-transfer.vue'
// 全局挂载UI实体服务注册中心
window
[
'uiServiceRegister'
]
=
uiServiceRegister
;
...
...
@@ -163,5 +164,6 @@ export const AppComponents = {
v
.
component
(
'ibiz-group-picker'
,
IBizGroupPicker
);
v
.
component
(
'app-wf-approval'
,
AppWFApproval
);
v
.
component
(
'app-breadcrumb'
,
Breadcrumb
);
v
.
component
(
'app-transfer'
,
AppTransfer
);
},
};
\ No newline at end of file
app_web/src/components/app-autocomplete/app-autocomplete.vue
浏览文件 @
6d5ed466
...
...
@@ -100,12 +100,20 @@ export default class AppAutocomplete extends Vue {
@
Prop
()
public
name
!
:
string
;
/**
*
编辑器
参数
*
局部上下文导航
参数
*
* @type {
string
}
* @type {
any
}
* @memberof AppAutocomplete
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppAutocomplete
*/
@
Prop
()
public
localParam
!
:
any
;
/**
* 值项名称
...
...
@@ -119,7 +127,7 @@ export default class AppAutocomplete extends Vue {
* 值
*
* @type {*}
* @memberof App
Picker
* @memberof App
Autocomplete
*/
@
Model
(
'change'
)
public
value
?:
any
;
...
...
@@ -127,7 +135,7 @@ export default class AppAutocomplete extends Vue {
* 当前值
*
* @type {string}
* @memberof App
Picker
* @memberof App
Autocomplete
*/
public
curvalue
:
string
=
''
;
...
...
@@ -160,7 +168,7 @@ export default class AppAutocomplete extends Vue {
*
* @param {*} newVal
* @param {*} oldVal
* @memberof App
Picker
* @memberof App
Autocomplete
*/
@
Watch
(
'value'
)
public
onValueChange
(
newVal
:
any
,
oldVal
:
any
)
{
...
...
@@ -277,19 +285,19 @@ export default class AppAutocomplete extends Vue {
*/
public
handlePublicParams
(
arg
:
any
):
boolean
{
if
(
!
this
.
data
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'components.
appPicker.error'
)
as
any
),
desc
:
(
this
.
$t
(
'components.appPicker
.formdataException'
)
as
any
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'components.
AppAutocomplete.error'
)
as
any
),
desc
:
(
this
.
$t
(
'components.AppAutocomplete
.formdataException'
)
as
any
)
});
return
false
;
}
// 合并表单参数
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
return
true
;
...
...
app_web/src/components/app-breadcrumb/app-breadcrumb.vue
浏览文件 @
6d5ed466
...
...
@@ -9,7 +9,7 @@
:key=
"item.path"
>
<span
v-if=
"i
tem.redirect === 'noredirect' || i
ndex === breadcrumbs.length-1"
v-if=
"index === breadcrumbs.length-1"
class=
"no-redirect"
>
{{
$t
(
item
.
meta
.
caption
)
}}
</span>
<a
...
...
@@ -22,64 +22,57 @@
</
template
>
<
script
lang=
"ts"
>
import
{
compile
}
from
'path-to-regexp'
import
{
Component
,
Vue
,
Watch
,
Prop
}
from
'vue-property-decorator'
import
{
RouteRecord
,
Route
}
from
'vue-router'
@
Component
({
name
:
'Breadcrumb'
})
export
default
class
extends
Vue
{
private
breadcrumbs
:
RouteRecord
[]
=
[]
export
default
class
Breadcrumb
extends
Vue
{
private
breadcrumbs
:
RouteRecord
[]
=
[];
//面包屑列表
@
Prop
()
public
defPSAppView
?:
any
;
@
Prop
()
public
defPSAppView
:
any
;
//默认视图
/**
* 监听路由
*
* @memberof Breadcrumb
*/
@
Watch
(
'$route'
)
private
onRouteChange
(
route
:
Route
)
{
// if you go to the redirect page, do not update the breadcrumbs
if
(
route
.
path
.
startsWith
(
'/redirect/'
))
{
return
}
this
.
getBreadcrumb
()
}
/**
* vue 生命周期
*
* @memberof Breadcrumb
*/
created
()
{
this
.
getBreadcrumb
()
}
/**
* 获取面包屑数据
*
* @memberof Breadcrumb
*/
private
getBreadcrumb
()
{
let
matched
=
this
.
$route
.
matched
.
filter
((
item
)
=>
item
.
meta
&&
item
.
meta
.
caption
)
const
first
=
matched
[
0
]
if
(
!
this
.
isDashboard
(
first
))
{
matched
=
[{
path
:
"/index/:index?"
,
meta
:
{
caption
:
'app.views.index.caption'
,
viewType
:
'APPINDEX'
,
parameters
:
[
{
pathName
:
'index'
,
parameterName
:
'index'
},
],
requireAuth
:
true
,
}
}
as
RouteRecord
].
concat
(
matched
)
}
this
.
breadcrumbs
=
matched
.
filter
((
item
)
=>
{
return
item
.
meta
&&
item
.
meta
.
caption
&&
item
.
meta
.
breadcrumb
!==
false
this
.
breadcrumbs
=
this
.
$route
.
matched
.
filter
((
item
)
=>
{
return
item
.
meta
&&
item
.
meta
.
caption
})
if
(
this
.
defPSAppView
){
/**如果配置了默认视图,给面包屑第一级赋值默认视图为首页 */
}
private
isDashboard
(
route
:
RouteRecord
)
{
const
name
=
route
&&
route
.
meta
.
parameters
[
0
].
pathName
;
if
(
!
name
)
{
return
false
}
return
name
.
trim
().
toLocaleLowerCase
()
===
'index'
.
toLocaleLowerCase
()
}
private
pathCompile
(
item
:
any
)
{
const
{
params
,
path
,
query
}
=
item
;
return
{
params
,
path
,
query
};
}
/**
* 单机面包屑
*
* @memberof Breadcrumb
*/
private
handleLink
(
item
:
any
)
{
this
.
$router
.
push
(
this
.
pathCompile
(
item
)
).
catch
(
err
=>
{
this
.
$router
.
push
(
item
).
catch
(
err
=>
{
console
.
warn
(
err
);
});
}
...
...
app_web/src/components/app-checkbox-list/app-checkbox-list.vue
浏览文件 @
6d5ed466
...
...
@@ -57,23 +57,31 @@ export default class AppCheckBox extends Vue {
* 传入表单数据
*
* @type {*}
* @memberof
DropDownList
* @memberof
AppCheckBox
*/
@
Prop
()
public
data
?:
any
;
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @memberof DropDownList
* @type {any}
* @memberof AppCheckBox
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppCheckBox
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
*
* @type {*}
* @memberof App
Autocomplete
* @memberof App
CheckBox
*/
@
Prop
()
public
context
!
:
any
;
...
...
@@ -81,7 +89,7 @@ export default class AppCheckBox extends Vue {
* 视图参数
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
CheckBox
*/
@
Prop
()
public
viewparams
!
:
any
;
...
...
@@ -203,19 +211,19 @@ export default class AppCheckBox extends Vue {
*
* @param {*} arg
* @returns
* @memberof
DropDownList
* @memberof
AppCheckBox
*/
public
handlePublicParams
(
arg
:
any
)
{
// 合并表单参数
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
@@ -253,7 +261,7 @@ export default class AppCheckBox extends Vue {
/**
* 监听表单数据变化
*
* @memberof App
OrgSelect
* @memberof App
CheckBox
*/
@
Watch
(
'data'
,{
immediate
:
true
,
deep
:
true
})
onDataChange
(
newVal
:
any
,
oldVal
:
any
)
{
...
...
app_web/src/components/app-embed-picker/app-embed-picker.vue
浏览文件 @
6d5ed466
...
...
@@ -62,7 +62,7 @@ export default class AppEmbedPicker extends Vue {
* 表单数据
*
* @type {*}
* @memberof AppPicker
* @memberof App
Embed
Picker
*/
@
Prop
()
public
data
!
:
any
;
...
...
@@ -95,7 +95,7 @@ export default class AppEmbedPicker extends Vue {
* 值项名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Embed
Picker
*/
@
Prop
()
public
valueItem
?:
string
;
...
...
@@ -103,7 +103,7 @@ export default class AppEmbedPicker extends Vue {
* 关联视图名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Embed
Picker
*/
@
Prop
()
public
refviewname
?:
string
;
...
...
@@ -127,17 +127,25 @@ export default class AppEmbedPicker extends Vue {
* 属性项名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Embed
Picker
*/
@
Prop
()
public
name
!
:
string
;
/**
*
关联视图
参数
*
局部上下文导航
参数
*
* @type {
*
}
* @type {
any
}
* @memberof AppEmbedPicker
*/
@
Prop
()
public
itemParam
:
any
;
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppEmbedPicker
*/
@
Prop
()
public
localParam
!
:
any
;
/**
* 是否忽略之变化
...
...
@@ -160,8 +168,8 @@ export default class AppEmbedPicker extends Vue {
*
* @memberof AppEmbedPicker
*/
public
setViewParam
(
activeData
:
any
)
{
if
(
!
this
.
itemParam
||
!
activeD
ata
)
{
public
setViewParam
()
{
if
(
!
this
.
d
ata
)
{
return
;
}
let
arg
:
any
=
{};
...
...
@@ -169,17 +177,13 @@ export default class AppEmbedPicker extends Vue {
let
param
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
));
let
context
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
));
// 附加参数处理
if
(
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
activeData
,
context
,
this
.
itemParam
.
context
);
Object
.
assign
(
context
,
_context
);
}
if
(
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
activeData
,
param
,
this
.
itemParam
.
param
);
Object
.
assign
(
param
,
_param
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localContext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
.
parentdata
)
{
let
_par
entdata
=
this
.
$util
.
formatData
(
activeData
,
param
,
this
.
itemParam
.
parentdata
);
Object
.
assign
(
param
,
_parentdata
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_par
am
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localParam
);
Object
.
assign
(
arg
.
param
,
_param
);
}
this
.
viewdata
=
JSON
.
stringify
(
context
);
this
.
viewparam
=
JSON
.
stringify
(
param
);
...
...
@@ -196,7 +200,7 @@ export default class AppEmbedPicker extends Vue {
onActivedataChange
(
newVal
:
any
,
oldVal
:
any
)
{
const
newFormData
:
any
=
JSON
.
parse
(
newVal
);
const
oldDormData
:
any
=
JSON
.
parse
(
oldVal
);
this
.
setViewParam
(
newFormData
);
this
.
setViewParam
();
if
(
!
this
.
refreshitems
||
this
.
ignorefieldvaluechange
)
{
return
;
}
...
...
@@ -215,7 +219,7 @@ export default class AppEmbedPicker extends Vue {
if
(
this
.
formState
)
{
this
.
formStateEvent
=
this
.
formState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
Object
.
is
(
'load'
,
action
))
{
this
.
setViewParam
(
JSON
.
parse
(
this
.
data
)
);
this
.
setViewParam
();
}
});
}
...
...
app_web/src/components/app-mpicker/app-mpicker.vue
浏览文件 @
6d5ed466
...
...
@@ -45,12 +45,20 @@ export default class AppMpicker extends Vue {
@
Prop
()
curvalue
?:
any
;
/**
*
表单项
参数
*
局部上下文导航
参数
*
* @type {any}
* @memberof AppPicker
* @memberof AppMpicker
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppMpicker
*/
@
Prop
()
public
itemParam
:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 表单项名称
...
...
@@ -61,7 +69,7 @@ export default class AppMpicker extends Vue {
* 视图上下文
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
Mpicker
*/
@
Prop
()
public
context
!
:
any
;
...
...
@@ -69,7 +77,7 @@ export default class AppMpicker extends Vue {
* 视图参数
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
Mpicker
*/
@
Prop
()
public
viewparams
!
:
any
;
...
...
@@ -77,7 +85,7 @@ export default class AppMpicker extends Vue {
* AC参数
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
Mpicker
*/
@
Prop
({
default
:
()
=>
{}})
public
acParams
?:
any
;
...
...
@@ -85,7 +93,7 @@ export default class AppMpicker extends Vue {
* 应用实体主信息属性名称
*
* @type {string}
* @memberof App
Autocomplete
* @memberof App
Mpicker
*/
@
Prop
({
default
:
'srfmajortext'
})
public
deMajorField
!
:
string
;
...
...
@@ -93,7 +101,7 @@ export default class AppMpicker extends Vue {
* 应用实体主键属性名称
*
* @type {string}
* @memberof App
Autocomplete
* @memberof App
Mpicker
*/
@
Prop
({
default
:
'srfkey'
})
public
deKeyField
!
:
string
;
...
...
@@ -101,7 +109,7 @@ export default class AppMpicker extends Vue {
* 表单服务
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
Mpicker
*/
@
Prop
()
public
service
?:
any
;
...
...
@@ -242,19 +250,19 @@ export default class AppMpicker extends Vue {
*/
public
handlePublicParams
(
arg
:
any
):
boolean
{
if
(
!
this
.
activeData
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'components.
appPicker.error'
)
as
any
),
desc
:
(
this
.
$t
(
'components.appP
icker.formdataException'
)
as
any
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'components.
AppMpicker.error'
)
as
any
),
desc
:
(
this
.
$t
(
'components.AppMp
icker.formdataException'
)
as
any
)
});
return
false
;
}
// 合并表单参数
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
activeData
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
activeData
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
activeData
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
activeData
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
return
true
;
...
...
app_web/src/components/app-picker-select-view/app-picker-select-view.vue
浏览文件 @
6d5ed466
此差异已折叠。
点击以展开。
app_web/src/components/app-picker/app-picker.vue
浏览文件 @
6d5ed466
...
...
@@ -153,12 +153,20 @@ export default class AppPicker extends Vue {
@
Prop
()
public
linkview
?:
any
;
/**
*
表单项
参数
*
局部上下文导航
参数
*
* @type {any}
* @memberof AppPicker
*/
@
Prop
()
public
itemParam
:
any
;
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppPicker
*/
@
Prop
()
public
localParam
!
:
any
;
/**
* 值项名称
...
...
@@ -639,9 +647,6 @@ export default class AppPicker extends Vue {
* @memberof AppPicker
*/
public
handlePublicParams
(
arg
:
any
):
boolean
{
if
(
!
this
.
itemParam
)
{
return
true
;
}
if
(
!
this
.
data
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'components.appPicker.error'
)
as
any
),
desc
:
(
this
.
$t
(
'components.appPicker.formdataException'
)
as
any
)
});
return
false
;
...
...
@@ -650,12 +655,12 @@ export default class AppPicker extends Vue {
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
return
true
;
...
...
app_web/src/components/app-radio-group/app-radio-group.vue
浏览文件 @
6d5ed466
...
...
@@ -65,14 +65,14 @@ export default class AppRadioGroup extends Vue {
* 传入表单数据
*
* @type {*}
* @memberof
DropDownList
* @memberof
AppRadioGroup
*/
@
Prop
()
public
data
?:
any
;
/**
* 监听表单数据变化
*
* @memberof App
OrgSelect
* @memberof App
RadioGroup
*/
@
Watch
(
'data'
,{
immediate
:
true
,
deep
:
true
})
onDataChange
(
newVal
:
any
,
oldVal
:
any
)
{
...
...
@@ -103,18 +103,26 @@ export default class AppRadioGroup extends Vue {
@
Prop
()
public
disabled
?:
boolean
;
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @memberof DropDownList
* @type {any}
* @memberof AppRadioGroup
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppRadioGroup
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
*
* @type {*}
* @memberof App
Autocomplete
* @memberof App
RadioGroup
*/
@
Prop
()
public
context
!
:
any
;
...
...
@@ -122,7 +130,7 @@ export default class AppRadioGroup extends Vue {
* 视图参数
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
RadioGroup
*/
@
Prop
()
public
viewparams
!
:
any
;
...
...
@@ -161,19 +169,19 @@ export default class AppRadioGroup extends Vue {
*
* @param {*} arg
* @returns
* @memberof
DropDownList
* @memberof
AppRadioGroup
*/
public
handlePublicParams
(
arg
:
any
)
{
// 合并表单参数
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
app_web/src/components/app-span/app-span.vue
浏览文件 @
6d5ed466
...
...
@@ -72,12 +72,20 @@ export default class AppSpan extends Vue {
@
Prop
()
public
data
?:
any
;
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @type {any}
* @memberof AppSpan
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppSpan
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
...
...
app_web/src/components/app-transfer/app-transfer.less
0 → 100644
浏览文件 @
6d5ed466
.ivu-select-dropdown {
padding: 0px;
.hidden {
display: none;
}
}
\ No newline at end of file
app_web/src/components/app-transfer/app-transfer.vue
0 → 100644
浏览文件 @
6d5ed466
<
template
>
<Select
v-model=
"dataRight"
style=
"width:586px"
multiple
>
<Option
class=
"hidden"
:value=
"item"
v-for=
"(item,i) in dataRight"
:key=
"i"
>
{{
dataLeft
[
item
-
1
].
label
}}
</Option>
<el-transfer
v-model=
"dataRight"
:data=
"dataLeft"
@
change=
dataChange
></el-transfer>
</Select>
</
template
>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
"vue-property-decorator"
;
import
CodeListService
from
"@service/app/codelist-service"
;
@
Component
({})
export
default
class
FromTransfer
extends
Vue
{
/**
* 表单传递右侧框中的数据
*/
@
Prop
()
public
data
:
any
;
/**
* 左侧框数据
*/
public
dataLeft
:
any
[]
=
[];
/**
* 右侧框数据
*/
public
dataRight
:
any
[]
=
[];
/**
* 代码表服务对象
*
* @type {CodeListService}
* @memberof FromTransfer
*/
public
codeListService
:
CodeListService
=
new
CodeListService
({
$store
:
this
.
$store
});
/**
* 额外参数
*
* @type {*}
* @memberof FromTransfer
*/
public
otherParam
:
any
;
/**
* 查询参数
* @type {*}
* @memberof FromTransfer
*/
public
queryParam
:
any
;
/**
* 当前选中值
* @type {any}
* @memberof Drop
*/
@
Model
(
"change"
)
readonly
itemValue
!
:
any
;
/**
* 代码表标识
*
* @type {string}
* @memberof FromTransfer
*/
@
Prop
()
public
tag
?:
string
;
/**
* 代码表类型
*
* @type {string}
* @memberof FromTransfer
*/
@
Prop
()
public
codelistType
?:
string
;
/**
* 监听表单数据
*
* @memberof FromTransfer
*/
@
Watch
(
"data"
,
{
deep
:
true
})
onDataChange
(
newVal
:
any
,
val
:
any
)
{
if
(
newVal
)
{
}
}
/**
* 组件change事件,右侧框数据变化时
* @memberof FromTransfer
*/
dataChange
(
e
:
any
){
console
.
log
(
e
);
let
val
:
any
[]
=
[];
let
newVal
:
any
;
this
.
dataLeft
.
forEach
((
elem
:
any
)
=>
{
e
.
forEach
((
item
:
any
)
=>
{
if
(
elem
.
key
===
item
)
val
.
push
(
elem
.
value
);
});
});
newVal
=
val
.
join
(
','
);
console
.
log
(
newVal
);
this
.
$emit
(
"change"
,
newVal
);
}
/**
* 传入额外参数
*
* @type {*}
* @memberof FromTransfer
*/
@
Prop
()
public
itemParam
?:
any
;
/**
* 视图上下文
*
* @type {*}
* @memberof AppAutocomplete
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof AppFormDRUIPart
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 是否禁用
* @type {any}
* @memberof FromTransfer
*
*/
@
Prop
()
public
disabled
?:
any
;
/**
* 是否支持过滤
* @type {boolean}
* @memberof FromTransfer
*/
@
Prop
()
public
filterable
?:
boolean
;
/**
* 下拉选提示内容
* @type {string}
* @memberof FromTransfer
*/
@
Prop
()
public
placeholder
?:
string
;
/**
* 计算属性(当前值)
* @type {any}
* @memberof FromTransfer
*/
set
currentVal
(
val
:
any
)
{
// const type: string = this.$util.typeOf(val);
// val =
// Object.is(type, "null") || Object.is(type, "undefined") ? undefined : val;
// this.dataLeft.forEach((elem: any) => {
// this.dataRight.forEach((item: any) => {
// if (elem.key === item) val.push(elem.value);
// });
// });
// val=val.join(',');
// this.$emit("change", val);
}
/**
* 获取值对象
*
* @memberof FromTransfer
*/
// get currentVal() {
// return this.itemValue;
// }
get
currentVal
()
{
return
this
.
itemValue
;
}
/**
* 代码表
*
* @type {any[]}
* @memberof FromTransfer
*/
// public items: any[] = [];
/**
* 公共参数处理
*
* @param {*} arg
* @returns
* @memberof FromTransfer
*/
public
handlePublicParams
(
arg
:
any
)
{
// 合并表单参数
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
context
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
param
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
/**
* vue 生命周期
*
* @memberof FromTransfer
*/
public
created
()
{
this
.
dataHandle
();
this
.
initRight
();
}
/**
* 数据处理
*/
public
dataHandle
()
{
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"STATIC"
))
{
const
codelist
=
this
.
$store
.
getters
.
getCodeList
(
this
.
tag
);
if
(
codelist
)
{
this
.
dataLeft
=
[...
JSON
.
parse
(
JSON
.
stringify
(
codelist
.
items
))];
this
.
initLeft
();
console
.
log
(
this
.
dataLeft
);
}
else
{
console
.
log
(
`----
${
this
.
tag
}
----代码表不存在`
);
}
}
else
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"DYNAMIC"
))
{
// 公共参数处理
let
data
:
any
=
{};
this
.
handlePublicParams
(
data
);
// 参数处理
let
_context
=
data
.
context
;
let
_param
=
data
.
param
;
this
.
codeListService
.
getItems
(
this
.
tag
,
_context
,
_param
)
.
then
((
res
:
any
)
=>
{
this
.
dataLeft
=
res
;
console
.
log
(
this
.
dataLeft
);
this
.
initLeft
();
})
.
catch
((
error
:
any
)
=>
{
console
.
log
(
`----
${
this
.
tag
}
----代码表不存在`
);
});
}
}
/**
* 初始化左侧框数据
*/
public
initLeft
()
{
let
left
:
any
[]
=
[];
Object
.
assign
(
left
,
this
.
dataLeft
);
this
.
dataLeft
=
[];
left
.
forEach
((
elem
:
any
,
i
:
any
)
=>
{
this
.
dataLeft
.
push
({
key
:
i
+
1
,
id
:
elem
.
id
,
value
:
elem
.
value
,
label
:
elem
.
label
,
disabled
:
elem
.
disabled
});
});
}
/**
* 初始化右侧框数据
*/
public
initRight
()
{
if
(
this
.
data
)
{
this
.
data
.
forEach
((
elem
:
any
)
=>
{
this
.
dataRight
.
push
(
elem
);
});
}
}
}
</
script
>
<
style
lang=
'less'
>
@import "./app-transfer.less";
</
style
>
\ No newline at end of file
app_web/src/components/app-tree-picker/app-tree-picker.vue
浏览文件 @
6d5ed466
...
...
@@ -36,7 +36,7 @@ export default class AppTreePicker extends Vue {
* 视图上下文
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
TreePicker
*/
@
Prop
()
public
context
!
:
any
;
...
...
@@ -44,7 +44,7 @@ export default class AppTreePicker extends Vue {
* 视图参数
*
* @type {*}
* @memberof App
FormDRUIPart
* @memberof App
TreePicker
*/
@
Prop
()
public
viewparams
!
:
any
;
...
...
@@ -52,7 +52,7 @@ export default class AppTreePicker extends Vue {
* 表单数据
*
* @type {*}
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Prop
()
public
data
!
:
any
;
...
...
@@ -68,7 +68,7 @@ export default class AppTreePicker extends Vue {
* 是否启用
*
* @type {boolean}
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Prop
({
default
:
false
})
public
disabled
!
:
boolean
;
...
...
@@ -101,7 +101,7 @@ export default class AppTreePicker extends Vue {
* 值项名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Prop
()
public
valueItem
?:
string
;
...
...
@@ -109,7 +109,7 @@ export default class AppTreePicker extends Vue {
* 关联视图名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Prop
()
public
refviewname
?:
string
;
...
...
@@ -125,17 +125,25 @@ export default class AppTreePicker extends Vue {
* 属性项名称
*
* @type {string}
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Prop
()
public
name
!
:
string
;
/**
*
关联视图
参数
*
局部上下文导航
参数
*
* @type {*}
* @type {any}
* @memberof AppTreePicker
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof AppTreePicker
*/
@
Prop
()
public
itemParam
:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 是否忽略之变化
...
...
@@ -210,8 +218,8 @@ export default class AppTreePicker extends Vue {
*
* @memberof AppTreePicker
*/
public
setViewParam
(
activeData
:
any
)
{
if
(
!
this
.
itemParam
||
!
activeD
ata
)
{
public
setViewParam
()
{
if
(
!
this
.
d
ata
)
{
return
;
}
let
arg
:
any
=
{};
...
...
@@ -219,17 +227,13 @@ export default class AppTreePicker extends Vue {
let
param
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
));
let
context
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
));
// 附加参数处理
if
(
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
activeData
,
context
,
this
.
itemParam
.
context
);
Object
.
assign
(
context
,
_context
);
}
if
(
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
activeData
,
param
,
this
.
itemParam
.
param
);
Object
.
assign
(
param
,
_param
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localContext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
.
parentdata
)
{
let
_par
entdata
=
this
.
$util
.
formatData
(
activeData
,
param
,
this
.
itemParam
.
parentdata
);
Object
.
assign
(
param
,
_parentdata
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_par
am
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localParam
);
Object
.
assign
(
arg
.
param
,
_param
);
}
this
.
viewdata
=
JSON
.
stringify
(
context
);
this
.
viewparam
=
JSON
.
stringify
(
param
);
...
...
@@ -240,13 +244,13 @@ export default class AppTreePicker extends Vue {
*
* @param {*} newVal
* @param {*} oldVal
* @memberof App
FormDRUIPart
* @memberof App
TreePicker
*/
@
Watch
(
'data'
)
onActivedataChange
(
newVal
:
any
,
oldVal
:
any
)
{
const
newFormData
:
any
=
JSON
.
parse
(
newVal
);
const
oldDormData
:
any
=
JSON
.
parse
(
oldVal
);
this
.
setViewParam
(
newFormData
);
this
.
setViewParam
();
if
(
!
this
.
refreshitems
||
this
.
ignorefieldvaluechange
)
{
return
;
}
...
...
@@ -261,7 +265,7 @@ export default class AppTreePicker extends Vue {
*
* @param {*} newVal
* @param {*} oldVal
* @memberof AppPicker
* @memberof App
Tree
Picker
*/
@
Watch
(
'value'
)
public
onValueChange
(
newVal
:
any
,
oldVal
:
any
)
{
...
...
@@ -277,7 +281,7 @@ export default class AppTreePicker extends Vue {
if
(
this
.
formState
)
{
this
.
formStateEvent
=
this
.
formState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
Object
.
is
(
'load'
,
action
))
{
this
.
setViewParam
(
JSON
.
parse
(
this
.
data
)
);
this
.
setViewParam
();
}
});
}
...
...
@@ -286,7 +290,7 @@ export default class AppTreePicker extends Vue {
/**
* vue 生命周期
*
* @memberof
SelectType
* @memberof
AppTreePicker
*/
public
destroyed
()
{
if
(
this
.
formStateEvent
)
{
...
...
app_web/src/components/codelist/codelist.vue
浏览文件 @
6d5ed466
...
...
@@ -79,12 +79,20 @@ export default class CodeList extends Vue {
@
Prop
()
public
data
?:
any
;
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @type {any}
* @memberof CodeList
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof CodeList
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
...
...
@@ -270,12 +278,12 @@ export default class CodeList extends Vue {
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
app_web/src/components/context-menu/context-menu.less
浏览文件 @
6d5ed466
...
...
@@ -12,6 +12,11 @@
position: absolute;
background: #FFF;
// border: 1px solid #e3e3e3;
.tree-right-menu{
.ivu-select-dropdown{
overflow: auto;
}
}
.ivu-divider{
width: 100%;
}
...
...
app_web/src/components/dropdown-list-dynamic/dropdown-list-dynamic.vue
浏览文件 @
6d5ed466
...
...
@@ -86,12 +86,20 @@ export default class DropDownListDynamic extends Vue {
}
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @memberof DropDownListDynamic
* @memberof DropDownList
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {*}
* @memberof DropDownList
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 是否禁用
...
...
@@ -172,12 +180,12 @@ export default class DropDownListDynamic extends Vue {
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
app_web/src/components/dropdown-list-mpicker/dropdown-list-mpicker.vue
浏览文件 @
6d5ed466
...
...
@@ -85,12 +85,20 @@ export default class DropDownListMpicker extends Vue {
@
Prop
()
public
placeholder
?:
string
;
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @type {any}
* @memberof DropDownListMpicker
*/
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {any}
* @memberof DropDownListMpicker
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
...
...
@@ -157,12 +165,12 @@ export default class DropDownListMpicker extends Vue {
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
param
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
app_web/src/components/dropdown-list/dropdown-list.vue
浏览文件 @
6d5ed466
...
...
@@ -86,12 +86,20 @@ export default class DropDownList extends Vue {
}
/**
*
传入额外
参数
*
局部上下文导航
参数
*
* @type {*}
* @memberof DropDownList
*/
@
Prop
()
public
itemParam
?:
any
;
@
Prop
()
public
localContext
!
:
any
;
/**
* 局部导航参数
*
* @type {*}
* @memberof DropDownList
*/
@
Prop
()
public
localParam
!
:
any
;
/**
* 视图上下文
...
...
@@ -172,12 +180,12 @@ export default class DropDownList extends Vue {
arg
.
param
=
this
.
viewparams
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
viewparams
))
:
{};
arg
.
context
=
this
.
context
?
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
:
{};
// 附加参数处理
if
(
this
.
itemParam
&&
this
.
itemParam
.
context
)
{
let
_context
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
context
,
this
.
itemParam
.
c
ontext
);
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
)
{
let
_context
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localC
ontext
);
Object
.
assign
(
arg
.
context
,
_context
);
}
if
(
this
.
itemParam
&&
this
.
itemParam
.
param
)
{
let
_param
=
this
.
$util
.
formatData
(
this
.
data
,
arg
.
param
,
this
.
itemParam
.
p
aram
);
if
(
this
.
localParam
&&
Object
.
keys
(
this
.
localParam
).
length
>
0
)
{
let
_param
=
this
.
$util
.
computedNavData
(
this
.
data
,
arg
.
context
,
arg
.
param
,
this
.
localP
aram
);
Object
.
assign
(
arg
.
param
,
_param
);
}
}
...
...
app_web/src/components/tab-page-exp/tab-page-exp.less
浏览文件 @
6d5ed466
// .ibiz-page-tag {
// position: relative;
// box-sizing: border-box;
// // width: calc(100% + 30px);
// height: 38px;
// padding: 0 60px 0 30px;
// background: #f6f6f6;
// .tags-body {
// position: relative;
// width: 100%;
// height: 100%;
// overflow: hidden;
// .tags-container {
// position: absolute;
// overflow: visible;
// white-space: nowrap;
// transition: left .3s ease;
// .ivu-tag {
// margin: 0;
// height: 38px;
// line-height: 38px;
// border: 0;
// border-radius: 0;
// border-right: 1px solid #ddd;
// font-size: 14px;
// .text-icon {
// height: 16px;
// margin-bottom: -3px;
// }
// .ivu-icon-ios-close {
// visibility: hidden;
// }
// .tag-text {
// display: table-cell;
// .ivu-tooltip {
// display: block;
// .ivu-tooltip-rel {
// display: block;
// max-width: 200px;
// overflow: hidden;
// text-overflow: ellipsis;
// }
// }
// }
// }
// .ivu-tag.tag-is-active {
// background: #fff;
// }
// .ivu-tag:hover,.ivu-tag.tag-is-active {
// .ivu-icon-ios-close {
// visibility: initial;
// }
// }
// }
// }
// .move-btn {
// font-size: 18px;
// width: 30px;
// height: 38px;
// line-height: 38px;
// border-left: 1px solid #ddd;
// border-right: 1px solid #ddd;
// text-align: center;
// cursor: pointer;
// }
// .move-btn:hover {
// background: #efefef;
// }
// .move-left, .move-right, .ivu-dropdown{
// position: absolute;
// top: 0;
// }
// .move-left {
// left: 0;
// }
// .move-right {
// right: 30px;
// }
// .ivu-dropdown {
// right: 0;
// }
// }
// .tags-transition-move {
// transition: transform .3s;
// }
// .tags-transition-enter,.tags-transition-leave-to{
// opacity: 0;
// }
.ibiz-page-tag {
position: relative;
.left{
.el-tabs__header{
padding-right:120px;
}
}
.right{
position: absolute;
right:0px;
top:0px;
width:120px;
margin:5px 0px;
display: flex;
justify-content: center;
}
>.tag-tabs{
background-color: #F0F0F0 !important;
.el-tabs{
.el-tabs__nav{
padding:0px 10px;
border:none;
}
.el-tabs__active-bar{
background-color: transparent !important;
}
.el-tabs__item{
color:#ccc;
border:none;
height: 32px;
line-height: 32px;
border: 1px solid #e8eaec!important;
color: #515a6e!important;
background: #fff!important;
padding: 0 12px;
display: inline-block;
margin: 4px 4px 4px 0;
border-radius: 3px;
font-size: 12px;
vertical-align: middle;
opacity: 1;
overflow: hidden;
.ivu-tag-dot-inner{
display: inline-block;
width: 12px;
height: 12px;
margin-right: 8px;
border-radius: 50%;
background: #e8eaec;
position: relative;
top: 1px;
}
}
.el-tabs__item:hover{
color:#409eff;
}
.is-active{
color:#409eff;
border-bottom:2px solid #409eff !important;
.ivu-tag-dot-inner{
background-color:#409eff !important;
}
.el-tabs__nav-scroll{
background-color: white;
border-bottom:2px solid transparent !important;
}
.el-tabs__header{
box-shadow: 0 1px 2px 0 rgba(0,0,0,.15);
margin:0 0 1 0;
}
}
}
}
\ No newline at end of file
app_web/src/components/tab-page-exp/tab-page-exp.vue
浏览文件 @
6d5ed466
<
template
>
<div
class=
"ibiz-page-tag"
>
<div
class=
"tag-tabs left"
>
<el-tabs
type=
"card"
@
tab-click=
"changePage"
...
...
@@ -9,12 +10,25 @@
>
<el-tab-pane
v-for=
"(meta, index) of $store.state.pageMetas"
:label=
"getCaption(meta.caption, meta.info)"
:name=
"index+''"
:key=
"index+''"
></el-tab-pane>
>
<span
slot=
"label"
><span
class=
"ivu-tag-dot-inner"
></span>
{{
getCaption
(
meta
.
caption
,
meta
.
info
)
}}
</span>
</el-tab-pane>
</el-tabs>
</div>
<div
v-show=
"$store.state.pageMetas.length > 0"
class=
"right"
>
<el-dropdown
@
command=
"handlerClose"
>
<el-button
size=
"mini"
type=
"primary"
>
更多
<i
class=
"el-icon-arrow-down el-icon--right"
></i>
</el-button>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
:command=
"item"
v-for=
"(item,index) in actions"
:key=
"index"
>
{{
$t
(
item
.
text
)
}}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
</div>
</
template
>
<
script
lang=
"ts"
>
...
...
@@ -23,6 +37,7 @@ import { Environment } from "../../environments/environment";
@
Component
({})
export
default
class
TabPageExp
extends
Vue
{
@
Provide
()
public
styleLeft
:
number
=
0
;
...
...
@@ -32,7 +47,14 @@ export default class TabPageExp extends Vue {
{
text
:
"app.tabpage.closeother"
,
value
:
"closeOther"
}
];
public
editableTabsValue
:
any
=
""
;
/**
* 关闭tab页方法
*/
public
handlerClose
(
item
:
any
){
this
.
doTagAction
(
item
.
value
);
}
public
editableTabsValue
:
any
=
""
;
//tabs页绑定值
@
Watch
(
"$route"
)
public
onRouteChange
(
newVal
:
any
)
{
...
...
app_web/src/engine/view/edit-view-engine.ts
浏览文件 @
6d5ed466
...
...
@@ -101,7 +101,7 @@ export default class EditViewEngine extends ViewEngine {
* @memberof EditViewEngine
*/
public
onFormLoad
(
arg
:
any
):
void
{
this
.
view
.
model
.
dataInfo
=
Object
.
is
(
arg
.
srfuf
,
'1'
)
?
arg
.
srfmajortext
:
'新建'
;
this
.
view
.
model
.
dataInfo
=
Object
.
is
(
arg
.
srfuf
,
'1'
)
?
(
this
.
majorPSDEField
?
arg
[
this
.
majorPSDEField
]:
arg
.
srfmajortext
)
:
this
.
view
.
$t
(
'app.local.new'
)
;
this
.
setTabCaption
(
this
.
view
.
model
.
dataInfo
);
const
newdata
:
boolean
=
!
Object
.
is
(
arg
.
srfuf
,
'1'
);
...
...
@@ -115,7 +115,7 @@ export default class EditViewEngine extends ViewEngine {
* @memberof EditViewEngine
*/
public
onFormSave
(
arg
:
any
):
void
{
this
.
view
.
model
.
dataInfo
=
Object
.
is
(
arg
.
srfuf
,
'1'
)
?
arg
.
srfmajortext
:
'新建'
;
this
.
view
.
model
.
dataInfo
=
Object
.
is
(
arg
.
srfuf
,
'1'
)
?
(
this
.
majorPSDEField
?
arg
[
this
.
majorPSDEField
]:
arg
.
srfmajortext
)
:
this
.
view
.
$t
(
'app.local.new'
)
;
this
.
setTabCaption
(
this
.
view
.
model
.
dataInfo
);
const
newdata
:
boolean
=
!
Object
.
is
(
arg
.
srfuf
,
'1'
);
...
...
@@ -248,7 +248,8 @@ export default class EditViewEngine extends ViewEngine {
public
setTabCaption
(
info
:
string
):
void
{
let
viewdata
:
any
=
this
.
view
.
model
;
if
(
viewdata
&&
info
&&
!
Object
.
is
(
info
,
''
)
&&
this
.
view
.
$tabPageExp
&&
(
viewdata
.
srfTitle
.
indexOf
(
" - "
)
===
-
1
))
{
this
.
view
.
$tabPageExp
.
setCurPageCaption
(
viewdata
.
srfCaption
,
viewdata
.
srfTitle
,
info
);
this
.
view
.
$tabPageExp
.
setCurPageCaption
(
viewdata
.
srfTitle
,
viewdata
.
srfTitle
,
info
);
this
.
view
.
$route
.
meta
.
info
=
info
;
this
.
view
.
model
.
srfTitle
=
`
${
this
.
view
.
$t
(
viewdata
.
srfTitle
)}
-
${
viewdata
.
dataInfo
}
`
;
}
}
...
...
app_web/src/locale/index.ts
浏览文件 @
6d5ed466
...
...
@@ -26,7 +26,8 @@ vueApp.locale = () => { };
const
i18n
=
new
VueI18n
({
locale
:
lang
,
messages
messages
,
silentTranslationWarn
:
true
});
export
default
i18n
;
app_web/src/locale/lang/en-US.ts
浏览文件 @
6d5ed466
...
...
@@ -16,6 +16,9 @@ export default {
ok
:
'OK'
,
cancel
:
'Cancel'
,
},
local
:{
new
:
'New'
},
gridpage
:
{
choicecolumns
:
'Choice columns'
,
refresh
:
'refresh'
,
...
...
app_web/src/locale/lang/zh-CN.ts
浏览文件 @
6d5ed466
...
...
@@ -16,6 +16,9 @@ export default {
ok
:
'确认'
,
cancel
:
'取消'
,
},
local
:{
new
:
'新建'
},
gridpage
:
{
choicecolumns
:
'选择列'
,
refresh
:
'刷新'
,
...
...
app_web/src/pages/ou/ibzdepartment-mpickup-view/ibzdepartment-mpickup-view-base.vue
浏览文件 @
6d5ed466
...
...
@@ -667,6 +667,7 @@ export default class IBZDepartmentMPickupViewBase extends Vue {
});
this
.
viewSelections
=
newSelections
;
});
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
/**
...
...
@@ -677,6 +678,7 @@ export default class IBZDepartmentMPickupViewBase extends Vue {
public
onCLickAllLeft
():
void
{
this
.
viewSelections
=
[];
this
.
containerModel
.
view_leftbtn
.
disabled
=
true
;
this
.
engine
.
onCtrlEvent
(
'pickupviewpanel'
,
'selectionchange'
,
[]);
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
...
...
@@ -704,6 +706,7 @@ export default class IBZDepartmentMPickupViewBase extends Vue {
}
});
});
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
/**
...
...
app_web/src/pages/ou/ibzemployee-mpickup-view/ibzemployee-mpickup-view-base.vue
浏览文件 @
6d5ed466
...
...
@@ -667,6 +667,7 @@ export default class IBZEmployeeMPickupViewBase extends Vue {
});
this
.
viewSelections
=
newSelections
;
});
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
/**
...
...
@@ -677,6 +678,7 @@ export default class IBZEmployeeMPickupViewBase extends Vue {
public
onCLickAllLeft
():
void
{
this
.
viewSelections
=
[];
this
.
containerModel
.
view_leftbtn
.
disabled
=
true
;
this
.
engine
.
onCtrlEvent
(
'pickupviewpanel'
,
'selectionchange'
,
[]);
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
...
...
@@ -704,6 +706,7 @@ export default class IBZEmployeeMPickupViewBase extends Vue {
}
});
});
this
.
selectedData
=
JSON
.
stringify
(
this
.
viewSelections
);
}
/**
...
...
app_web/src/pages/ou/ouindex-view/router.ts
浏览文件 @
6d5ed466
此差异已折叠。
点击以展开。
app_web/src/shims-vue.d.ts
浏览文件 @
6d5ed466
...
...
@@ -9,3 +9,4 @@ declare module '@fullcalendar/list';
declare
module
'@fullcalendar/interaction'
;
declare
module
'vue-grid-layout'
;
declare
module
'vue-print-nb'
;
declare
module
'vuedraggable'
;
\ No newline at end of file
app_web/src/styles/default.less
浏览文件 @
6d5ed466
...
...
@@ -237,6 +237,12 @@
}
}
// 清除看板里视图的阴影
.dashboard .portlet .view-container{
-webkit-box-shadow: none ;
box-shadow: none;
}
/*** END:多数据视图属性布局 ***/
// 看板视图,卡片模式
...
...
app_web/src/utils/types/util.d.ts
浏览文件 @
6d5ed466
...
...
@@ -130,6 +130,20 @@ export declare interface Util {
*/
formatData
(
arg
:
any
,
parent
:
any
,
params
:
any
):
any
;
/**
* 计算导航数据
* 先从当前数据目标计算,然后再从当前上下文计算,最后从当前视图参数计算,没有则为null
*
* @static
* @param {any} data 表单数据
* @param {any} parentContext 外层context
* @param {any} parentParam 外层param
* @param {any} params 附加参数
* @returns {any}
* @memberof Util
*/
computedNavData
(
data
:
any
,
parentContext
:
any
,
parentParam
:
any
,
params
:
any
):
any
;
/**
* 日期格式化
*
...
...
app_web/src/utils/util/util.ts
浏览文件 @
6d5ed466
...
...
@@ -324,6 +324,44 @@ export class Util {
return
_data
;
}
/**
* 计算导航数据
* 先从当前数据目标计算,然后再从当前上下文计算,最后从当前视图参数计算,没有则为null
*
* @static
* @param {any} data 表单数据
* @param {any} parentContext 外层context
* @param {any} parentParam 外层param
* @param {any} params 附加参数
* @returns {any}
* @memberof Util
*/
public
static
computedNavData
(
data
:
any
,
parentContext
:
any
,
parentParam
:
any
,
params
:
any
):
any
{
let
_data
:
any
=
{};
if
(
params
&&
Object
.
keys
(
params
).
length
>
0
){
Object
.
keys
(
params
).
forEach
((
name
:
string
)
=>
{
if
(
!
name
)
{
return
;
}
let
value
:
string
|
null
=
params
[
name
];
if
(
value
&&
value
.
startsWith
(
'%'
)
&&
value
.
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
).
toLowerCase
();
if
(
data
&&
data
.
hasOwnProperty
(
key
))
{
value
=
data
[
key
];
}
else
if
(
parentContext
&&
parentContext
[
key
]){
value
=
parentContext
[
key
];
}
else
if
(
parentParam
&&
parentParam
[
key
]){
value
=
parentParam
[
key
];
}
else
{
value
=
null
;
}
}
Object
.
assign
(
_data
,
{
[
name
.
toLowerCase
()]:
value
});
});
}
return
_data
;
}
/**
* 日期格式化
*
...
...
app_web/src/widgets/ibzdepartment/dept-tree-treeview/dept-tree-treeview-service.ts
浏览文件 @
6d5ed466
...
...
@@ -208,7 +208,7 @@ export default class DeptTreeService extends ControlService {
Object
.
assign
(
treeNode
,
{
id
:
strNodeId
});
Object
.
assign
(
treeNode
,
{
expanded
:
filter
.
isautoexpand
});
Object
.
assign
(
treeNode
,
{
leaf
:
true
});
Object
.
assign
(
treeNode
,
{
navparams
:
'{}'
});
Object
.
assign
(
treeNode
,
{
curData
:
entity
});
Object
.
assign
(
treeNode
,
{
nodeid
:
treeNode
.
srfkey
});
Object
.
assign
(
treeNode
,
{
nodeid2
:
filter
.
strRealNodeId
});
list
.
push
(
treeNode
);
...
...
@@ -330,7 +330,6 @@ export default class DeptTreeService extends ControlService {
Object
.
assign
(
treeNode
,
{
expanded
:
filter
.
isAutoexpand
});
Object
.
assign
(
treeNode
,
{
leaf
:
false
});
Object
.
assign
(
treeNode
,
{
navparams
:
'{}'
});
Object
.
assign
(
treeNode
,
{
nodeid
:
treeNode
.
srfkey
});
Object
.
assign
(
treeNode
,
{
nodeid2
:
filter
.
strRealNodeId
});
list
.
push
(
treeNode
);
...
...
app_web/src/widgets/ibzdepartment/edit-grid-grid/edit-grid-grid-base.vue
浏览文件 @
6d5ed466
...
...
@@ -102,7 +102,8 @@
:data=
"row"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
'
{ }'
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="row.srfuf === 1 ? (3
&
2) !== 2 : (3
&
1) !== 1"
name='pdeptname'
deMajorField='deptname'
...
...
app_web/src/widgets/ibzdepartment/main-form/main-form-base.vue
浏览文件 @
6d5ed466
...
...
@@ -74,23 +74,15 @@
</i-col>
<i-col
v-show=
"detailsModel.createdate.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'createdate'
:itemRules=
"this.rules.createdate"
class=
''
:caption=
"$t('entities.ibzdepartment.main_form.details.createdate')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.createdate.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<app-span
name=
'createdate'
:value=
"data.createdate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
"
{}"
style="">
</app-span>
<app-span
name=
'createdate'
:value=
"data.createdate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }' :localParam ='{ }' style="">
</app-span>
</app-form-item>
</i-col>
<i-col
v-show=
"detailsModel.updatedate.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'updatedate'
:itemRules=
"this.rules.updatedate"
class=
''
:caption=
"$t('entities.ibzdepartment.main_form.details.updatedate')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.updatedate.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<app-span
name=
'updatedate'
:value=
"data.updatedate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
"
{}"
style="">
</app-span>
<app-span
name=
'updatedate'
:value=
"data.updatedate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }' :localParam ='{ }' style="">
</app-span>
</app-form-item>
</i-col>
...
...
app_web/src/widgets/ibzdepartment/tree-exp-viewtreeexpbar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar-base.vue
浏览文件 @
6d5ed466
...
...
@@ -328,38 +328,32 @@ export default class TreeExpViewtreeexpbarBase extends Vue implements ControlInt
})
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
if
(
arg
&&
arg
.
navparams
){
let
curNavParams
:
any
=
JSON
.
parse
(
arg
.
navparams
);
if
(
Object
.
keys
(
curNavParams
).
length
>
0
){
Object
.
keys
(
curNavParams
).
forEach
((
name
:
any
)
=>
{
if
(
!
name
)
{
return
;
}
let
value
:
string
|
null
=
curNavParams
[
name
];
if
(
value
&&
value
.
startsWith
(
'%'
)
&&
value
.
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
);
if
(
arg
&&
arg
.
hasOwnProperty
(
key
))
{
value
=
(
arg
[
key
]
!==
null
&&
arg
[
key
]
!==
undefined
)
?
arg
[
key
]
:
null
;
}
else
{
value
=
null
;
}
}
Object
.
assign
(
tempViewparam
,
{
[
name
]:
value
});
})
this
.
counter
+=
1
;
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
}
Object
.
assign
(
tempContext
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)));
if
(
arg
.
srfappctx
){
Object
.
assign
(
tempContext
,
JSON
.
parse
(
JSON
.
stringify
(
arg
.
srfappctx
)));
}
// 计算导航上下文
if
(
arg
&&
arg
.
navigateContext
&&
Object
.
keys
(
arg
.
navigateContext
).
length
>
0
){
let
tempData
:
any
=
arg
.
curData
?
JSON
.
parse
(
JSON
.
stringify
(
arg
.
curData
)):{};
Object
.
assign
(
tempData
,
arg
);
let
_context
=
this
.
$util
.
computedNavData
(
tempData
,
tempContext
,
tempViewparam
,
arg
.
navigateContext
);
Object
.
assign
(
tempContext
,
_context
);
}
if
(
arg
.
srfparentdename
){
Object
.
assign
(
tempContext
,{
srfparentdename
:
arg
.
srfparentdename
});
}
if
(
arg
.
srfparentkey
){
Object
.
assign
(
tempContext
,{
srfparentkey
:
arg
.
srfparentkey
});
}
// 计算导航参数
if
(
arg
&&
arg
.
navigateParams
&&
Object
.
keys
(
arg
.
navigateParams
).
length
>
0
){
let
tempData
:
any
=
arg
.
curData
?
JSON
.
parse
(
JSON
.
stringify
(
arg
.
curData
)):{};
Object
.
assign
(
tempData
,
arg
);
let
_params
=
this
.
$util
.
computedNavData
(
tempData
,
tempContext
,
tempViewparam
,
arg
.
navigateParams
);
Object
.
assign
(
tempViewparam
,
_params
);
this
.
counter
+=
1
;
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
this
.
selection
=
{};
Object
.
assign
(
this
.
selection
,
{
view
:
{
viewname
:
refview
.
viewname
}
});
Object
.
assign
(
this
.
selection
,{
'viewparam'
:
tempViewparam
,
'context'
:
tempContext
});
...
...
app_web/src/widgets/ibzdept-member/main-form/main-form-base.vue
浏览文件 @
6d5ed466
...
...
@@ -14,7 +14,8 @@
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
'
{ }'
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="detailsModel.deptname.disabled"
name='deptname'
deMajorField='deptname'
...
...
@@ -40,7 +41,8 @@
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
'
{ }'
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="detailsModel.personname.disabled"
name='personname'
deMajorField='personname'
...
...
app_web/src/widgets/ibzemployee/edit-grid-grid/edit-grid-grid-base.vue
浏览文件 @
6d5ed466
...
...
@@ -129,7 +129,8 @@
:data=
"row"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
'
{ }'
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="row.srfuf === 1 ? (3
&
2) !== 2 : (3
&
1) !== 1"
name='orgname'
deMajorField='orgname'
...
...
@@ -180,7 +181,8 @@
:data=
"row"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
'
{ }'
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="row.srfuf === 1 ? (3
&
2) !== 2 : (3
&
1) !== 1"
name='mdeptname'
deMajorField='deptname'
...
...
@@ -213,7 +215,21 @@
<
template
v-slot=
"{row,column,$index}"
>
<template
v-if=
"actualIsOpenEdit"
>
<app-form-item
:error=
"gridItemsModel[$index][column.property].error"
>
<dropdown-list
v-model=
"row[column.property]"
:disabled=
"row.srfuf === 1 ? (3 & 2) !== 2 : (3 & 1) !== 1"
tag=
'CLIBZSex'
codelistType=
'STATIC'
placeholder=
'请选择...'
style=
""
@
change=
"($event)=>
{gridEditItemChange(row, column.property, $event, $index)}">
</dropdown-list>
<dropdown-list
v-model=
"row[column.property]"
:disabled=
"row.srfuf === 1 ? (3 & 2) !== 2 : (3 & 1) !== 1"
:data=
"row"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }'
:localParam ='{ }'
tag='CLIBZSex'
codelistType='STATIC'
placeholder='请选择...'
style=""
@change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}">
</dropdown-list>
</app-form-item>
</
template
>
<
template
v-if=
"!actualIsOpenEdit"
>
...
...
app_web/src/widgets/ibzemployee/main-form/main-form-base.vue
浏览文件 @
6d5ed466
...
...
@@ -58,12 +58,14 @@
</i-col>
<i-col
v-show=
"detailsModel.sex.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'sex'
:itemRules=
"this.rules.sex"
class=
''
:caption=
"$t('entities.ibzemployee.main_form.details.sex')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.sex.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<dropdown-list
v-model=
"data.sex"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
"
{}"
:localContext =
'
{ }'
:localParam ='{ }'
:disabled="detailsModel.sex.disabled"
tag='CLIBZSex'
codelistType='STATIC'
...
...
app_web/src/widgets/ibzorganization/main-form/main-form-base.vue
浏览文件 @
6d5ed466
...
...
@@ -41,23 +41,15 @@
</i-col>
<i-col
v-show=
"detailsModel.createdate.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'createdate'
:itemRules=
"this.rules.createdate"
class=
''
:caption=
"$t('entities.ibzorganization.main_form.details.createdate')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.createdate.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<app-span
name=
'createdate'
:value=
"data.createdate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
"
{}"
style="">
</app-span>
<app-span
name=
'createdate'
:value=
"data.createdate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }' :localParam ='{ }' style="">
</app-span>
</app-form-item>
</i-col>
<i-col
v-show=
"detailsModel.updatedate.visible"
:style=
"
{}" :lg="{ span: 24, offset: 0 }">
<app-form-item
name=
'updatedate'
:itemRules=
"this.rules.updatedate"
class=
''
:caption=
"$t('entities.ibzorganization.main_form.details.updatedate')"
uiStyle=
"DEFAULT"
:labelWidth=
"130"
:isShowCaption=
"true"
:error=
"detailsModel.updatedate.error"
:isEmptyCaption=
"false"
labelPos=
"LEFT"
>
<app-span
name=
'updatedate'
:value=
"data.updatedate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:itemParam=
"
{}"
style="">
</app-span>
<app-span
name=
'updatedate'
:value=
"data.updatedate"
:data=
"data"
:context=
"context"
:viewparams=
"viewparams"
:localContext =
'
{ }' :localParam ='{ }' style="">
</app-span>
</app-form-item>
</i-col>
...
...
app_web/src/widgets/ibzorganization/org-tree-treeview/org-tree-treeview-service.ts
浏览文件 @
6d5ed466
...
...
@@ -198,7 +198,6 @@ export default class OrgTreeService extends ControlService {
Object
.
assign
(
treeNode
,
{
expanded
:
filter
.
isAutoexpand
});
Object
.
assign
(
treeNode
,
{
leaf
:
false
});
Object
.
assign
(
treeNode
,
{
navparams
:
'{}'
});
Object
.
assign
(
treeNode
,
{
nodeid
:
treeNode
.
srfkey
});
Object
.
assign
(
treeNode
,
{
nodeid2
:
filter
.
strRealNodeId
});
list
.
push
(
treeNode
);
...
...
@@ -276,7 +275,7 @@ export default class OrgTreeService extends ControlService {
Object
.
assign
(
treeNode
,
{
id
:
strNodeId
});
Object
.
assign
(
treeNode
,
{
expanded
:
filter
.
isautoexpand
});
Object
.
assign
(
treeNode
,
{
leaf
:
true
});
Object
.
assign
(
treeNode
,
{
navparams
:
'{}'
});
Object
.
assign
(
treeNode
,
{
curData
:
entity
});
Object
.
assign
(
treeNode
,
{
nodeid
:
treeNode
.
srfkey
});
Object
.
assign
(
treeNode
,
{
nodeid2
:
filter
.
strRealNodeId
});
list
.
push
(
treeNode
);
...
...
app_web/src/widgets/ibzorganization/tree-exp-viewtreeexpbar-treeexpbar/tree-exp-viewtreeexpbar-treeexpbar-base.vue
浏览文件 @
6d5ed466
...
...
@@ -328,38 +328,32 @@ export default class TreeExpViewtreeexpbarBase extends Vue implements ControlInt
})
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
if
(
arg
&&
arg
.
navparams
){
let
curNavParams
:
any
=
JSON
.
parse
(
arg
.
navparams
);
if
(
Object
.
keys
(
curNavParams
).
length
>
0
){
Object
.
keys
(
curNavParams
).
forEach
((
name
:
any
)
=>
{
if
(
!
name
)
{
return
;
}
let
value
:
string
|
null
=
curNavParams
[
name
];
if
(
value
&&
value
.
startsWith
(
'%'
)
&&
value
.
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
);
if
(
arg
&&
arg
.
hasOwnProperty
(
key
))
{
value
=
(
arg
[
key
]
!==
null
&&
arg
[
key
]
!==
undefined
)
?
arg
[
key
]
:
null
;
}
else
{
value
=
null
;
}
}
Object
.
assign
(
tempViewparam
,
{
[
name
]:
value
});
})
this
.
counter
+=
1
;
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
}
Object
.
assign
(
tempContext
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)));
if
(
arg
.
srfappctx
){
Object
.
assign
(
tempContext
,
JSON
.
parse
(
JSON
.
stringify
(
arg
.
srfappctx
)));
}
// 计算导航上下文
if
(
arg
&&
arg
.
navigateContext
&&
Object
.
keys
(
arg
.
navigateContext
).
length
>
0
){
let
tempData
:
any
=
arg
.
curData
?
JSON
.
parse
(
JSON
.
stringify
(
arg
.
curData
)):{};
Object
.
assign
(
tempData
,
arg
);
let
_context
=
this
.
$util
.
computedNavData
(
tempData
,
tempContext
,
tempViewparam
,
arg
.
navigateContext
);
Object
.
assign
(
tempContext
,
_context
);
}
if
(
arg
.
srfparentdename
){
Object
.
assign
(
tempContext
,{
srfparentdename
:
arg
.
srfparentdename
});
}
if
(
arg
.
srfparentkey
){
Object
.
assign
(
tempContext
,{
srfparentkey
:
arg
.
srfparentkey
});
}
// 计算导航参数
if
(
arg
&&
arg
.
navigateParams
&&
Object
.
keys
(
arg
.
navigateParams
).
length
>
0
){
let
tempData
:
any
=
arg
.
curData
?
JSON
.
parse
(
JSON
.
stringify
(
arg
.
curData
)):{};
Object
.
assign
(
tempData
,
arg
);
let
_params
=
this
.
$util
.
computedNavData
(
tempData
,
tempContext
,
tempViewparam
,
arg
.
navigateParams
);
Object
.
assign
(
tempViewparam
,
_params
);
this
.
counter
+=
1
;
Object
.
assign
(
tempContext
,{
srfcounter
:
this
.
counter
});
}
this
.
selection
=
{};
Object
.
assign
(
this
.
selection
,
{
view
:
{
viewname
:
refview
.
viewname
}
});
Object
.
assign
(
this
.
selection
,{
'viewparam'
:
tempViewparam
,
'context'
:
tempContext
});
...
...
ibzou-dependencies/pom.xml
浏览文件 @
6d5ed466
...
...
@@ -77,6 +77,9 @@
<!--xxl-job定时服务 -->
<xxl-job.version>
2.1.0
</xxl-job.version>
<oracle.version>
11.2.0.3
</oracle.version>
<postgresql.version>
42.2.6
</postgresql.version>
</properties>
<dependencyManagement>
...
...
@@ -299,12 +302,6 @@
<artifactId>
httpclient
</artifactId>
</dependency>
<!-- MySQL驱动包 -->
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
</dependency>
<!-- 阿里Druid数据源 -->
<dependency>
<groupId>
com.alibaba
</groupId>
...
...
@@ -317,9 +314,23 @@
<artifactId>
h2
</artifactId>
</dependency>
<!-- Error -->
<!-- Security -->
<!-- Oracle驱动包 -->
<dependency>
<groupId>
com.oracle
</groupId>
<artifactId>
ojdbc6
</artifactId>
<version>
${oracle.version}
</version>
</dependency>
<!-- PostgreSQL驱动包 -->
<dependency>
<groupId>
org.postgresql
</groupId>
<artifactId>
postgresql
</artifactId>
<version>
${postgresql.version}
</version>
</dependency>
<!-- MySQL驱动包 -->
<dependency>
<groupId>
mysql
</groupId>
<artifactId>
mysql-connector-java
</artifactId>
</dependency>
</dependencies>
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录