Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
功
功能演示系统
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
示例
功能演示系统
提交
701b54b1
提交
701b54b1
编写于
2月 15, 2023
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tony001 部署微服务应用 [后台服务,演示应用]
上级
3a913a8e
变更
19
显示空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
410 行增加
和
141 行删除
+410
-141
Dockerfile
app_Web/Dockerfile
+6
-0
quicksearchform-searchform-base.vue
...searchform-searchform/quicksearchform-searchform-base.vue
+2
-2
usr2-dataview-base.vue
...src/widgets/ibizbook/usr2-dataview/usr2-dataview-base.vue
+22
-52
usr2-dataview-model.ts
...src/widgets/ibizbook/usr2-dataview/usr2-dataview-model.ts
+12
-1
usr4-dataview-model.ts
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
+0
-5
main-grid-base.vue
...src/widgets/ibizorder-detail/main-grid/main-grid-base.vue
+6
-6
swarm.yaml
app_Web/swarm.yaml
+40
-0
config.xml
config.xml
+42
-0
Dockerfile-APP
demo-boot/src/main/docker/Dockerfile-APP
+6
-0
demo-app-web-k8s.yaml
demo-boot/src/main/docker/demo-app-web-k8s.yaml
+63
-0
demo-app-web.yaml
demo-boot/src/main/docker/demo-app-web.yaml
+53
-0
gateway-web.yml
demo-boot/src/main/docker/gateway-web.yml
+83
-0
MYSQL5.json
...ZSample0007/PSDEDATAQUERIES/CurGW/PSDEDQCODES/MYSQL5.json
+1
-1
MYSQL5.json
...PSDEDATAQUERIES/CurIBIZSample0014/PSDEDQCODES/MYSQL5.json
+1
-1
MYSQL5.json
...IZSupplier/PSDEDATAQUERIES/CalUni/PSDEDQCODES/MYSQL5.json
+1
-1
Usr.json
...SSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSGANTTS/Usr.json
+24
-24
TreeTable.json
.../PSAPPDATAENTITIES/IBIZBOOK/PSTREEGRIDICES/TreeTable.json
+12
-12
IBIZBOOKGanttView.json
...temodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKGanttView.json
+24
-24
IBIZBOOKTreeGridExView.json
...el/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKTreeGridExView.json
+12
-12
未找到文件。
app_Web/Dockerfile
0 → 100644
浏览文件 @
701b54b1
FROM
ibiz4j/ibizlab-gateway:2.4.0.2
ENV
TZ=Asia/Shanghai
EXPOSE
51001
WORKDIR
/
COPY
dist /dist
ADD
application-gateway.yml /application-gateway.yml
app_Web/src/widgets/ibizbook/quicksearchform-searchform/quicksearchform-searchform-base.vue
浏览文件 @
701b54b1
...
...
@@ -670,7 +670,7 @@ export default class QUICKSEARCHFORMBase extends Vue implements ControlInterface
*/
public
load
(
opt
:
any
=
{}):
void
{
if
(
!
this
.
loadAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
List
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Calendar
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
};
...
...
@@ -706,7 +706,7 @@ export default class QUICKSEARCHFORMBase extends Vue implements ControlInterface
*/
public
async
loadDraft
(
opt
:
any
=
{},
mode
?:
string
):
Promise
<
any
>
{
if
(
!
this
.
loaddraftAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
List
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Calendar
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
app_Web/src/widgets/ibizbook/usr2-dataview/usr2-dataview-base.vue
浏览文件 @
701b54b1
...
...
@@ -48,14 +48,14 @@
<div
v-show=
"flag"
class=
"batch-toolbar"
>
<div
class=
'toolbar-container'
>
<tooltip
:transfer=
"true"
:max-width=
"600"
>
<i-button
v-show=
"
dataviewexpviewdataviewexpbar_dataview_batchtoolbarModels.deuiaction1.visabled"
:disabled=
"dataviewexpviewdataviewexpbar_dataview_batchtoolbarModels.deuiaction1.disabled"
class=
''
v-button-loading:i-button
@
click=
"dataviewexpbar_
dataview_batchtoolbar_click({ tag: 'deuiaction1' }, $event)"
>
<i-button
v-show=
"
usr2dataviewdataview_batchtoolbarModels.deuiaction1.visabled"
:disabled=
"usr2dataviewdataview_batchtoolbarModels.deuiaction1.disabled"
class=
''
v-button-loading:i-button
@
click=
"
dataview_batchtoolbar_click({ tag: 'deuiaction1' }, $event)"
>
<i
class=
'fa fa-edit'
></i>
<span
class=
'caption'
>
{{'编辑'}}
</span>
</i-button>
<div
slot=
'content'
>
{{$t('TBB.TEXT.*.EDIT', '编辑')}}
</div>
</tooltip>
<tooltip
:transfer=
"true"
:max-width=
"600"
>
<i-button
v-show=
"
dataviewexpviewdataviewexpbar_dataview_batchtoolbarModels.deuiaction2.visabled"
:disabled=
"dataviewexpviewdataviewexpbar_dataview_batchtoolbarModels.deuiaction2.disabled"
class=
''
v-button-loading:i-button
@
click=
"dataviewexpbar_
dataview_batchtoolbar_click({ tag: 'deuiaction2' }, $event)"
>
<i-button
v-show=
"
usr2dataviewdataview_batchtoolbarModels.deuiaction2.visabled"
:disabled=
"usr2dataviewdataview_batchtoolbarModels.deuiaction2.disabled"
class=
''
v-button-loading:i-button
@
click=
"
dataview_batchtoolbar_click({ tag: 'deuiaction2' }, $event)"
>
<i
class=
'fa fa-remove'
></i>
<span
class=
'caption'
>
{{'删除'}}
</span>
</i-button>
...
...
@@ -202,18 +202,18 @@ export default class Usr2Base extends Vue implements ControlInterface {
public
appEntityService
:
IBIZBOOKEntityService
=
new
IBIZBOOKEntityService
({
$store
:
this
.
$store
});
/**
* dataview
expbar_dataview
_batchtoolbar 部件 click 事件
* dataview_batchtoolbar 部件 click 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof Usr2Base
*/
public
dataview
expbar_dataview
_batchtoolbar_click
(
$event
:
any
,
$event2
?:
any
)
{
public
dataview_batchtoolbar_click
(
$event
:
any
,
$event2
?:
any
)
{
if
(
Object
.
is
(
$event
.
tag
,
'deuiaction1'
))
{
this
.
dataview
expbar_dataview_batchtoolbar_deuiaction1_click
(
null
,
'dataviewexpbar_
dataview_batchtoolbar'
,
$event2
);
this
.
dataview
_batchtoolbar_deuiaction1_click
(
null
,
'
dataview_batchtoolbar'
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'deuiaction2'
))
{
this
.
dataview
expbar_dataview_batchtoolbar_deuiaction2_click
(
null
,
'dataviewexpbar_
dataview_batchtoolbar'
,
$event2
);
this
.
dataview
_batchtoolbar_deuiaction2_click
(
null
,
'
dataview_batchtoolbar'
,
$event2
);
}
}
...
...
@@ -226,7 +226,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event]
* @memberof
*/
public
dataview
expbar_dataview
_batchtoolbar_deuiaction1_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
public
dataview_batchtoolbar_deuiaction1_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
...
...
@@ -254,7 +254,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event]
* @memberof
*/
public
dataview
expbar_dataview
_batchtoolbar_deuiaction2_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
public
dataview_batchtoolbar_deuiaction2_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
...
...
@@ -282,7 +282,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event]
* @memberof
*/
public
dataview
expbar_dataview
_memo1_u37f11a8_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
public
dataview_memo1_u37f11a8_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
...
...
@@ -309,7 +309,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event]
* @memberof
*/
public
dataview
expbar_dataview
_memo1_uc365542_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
public
dataview_memo1_uc365542_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
...
...
@@ -337,7 +337,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOK
DataViewExp
ViewBase
* @memberof IBIZBOOK
Usr2Data
ViewBase
*/
public
Edit
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
if
(
args
.
length
===
0
)
{
...
...
@@ -363,7 +363,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof IBIZBOOK
DataViewExp
ViewBase
* @memberof IBIZBOOK
Usr2Data
ViewBase
*/
public
Remove
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
...
...
@@ -427,12 +427,6 @@ export default class Usr2Base extends Vue implements ControlInterface {
}
let
result
:
boolean
=
true
;
Object
.
assign
(
actionData
,
args
);
if
(
'selectionchange'
.
indexOf
(
eventName
)
!==
-
1
)
{
result
=
await
this
.
execute_dataviewexpbar_selectionchange_ctrl_logic
(
actionData
)
&&
result
;
}
if
(
'load'
.
indexOf
(
eventName
)
!==
-
1
)
{
result
=
await
this
.
execute_dataviewexpbar_load_ctrl_logic
(
actionData
)
&&
result
;
}
if
(
!
result
)
{
return
false
;
}
...
...
@@ -440,30 +434,6 @@ export default class Usr2Base extends Vue implements ControlInterface {
return
true
;
}
/**
* 部件逻辑 -- dataviewexpbar_selectionchange
*
* @param {string} eventName 部件事件名称
* @param {any[]} data 数据
* @param {*} event 源事件对象
* @memberof Usr2Base
*/
public
async
execute_dataviewexpbar_selectionchange_ctrl_logic
(
actionData
:
any
):
Promise
<
boolean
>
{
console
.
log
(
'暂未支持 CUSTOM 类型'
);
return
true
;
}
/**
* 部件逻辑 -- dataviewexpbar_load
*
* @param {string} eventName 部件事件名称
* @param {any[]} data 数据
* @param {*} event 源事件对象
* @memberof Usr2Base
*/
public
async
execute_dataviewexpbar_load_ctrl_logic
(
actionData
:
any
):
Promise
<
boolean
>
{
console
.
log
(
'暂未支持 CUSTOM 类型'
);
return
true
;
}
...
...
@@ -708,9 +678,9 @@ export default class Usr2Base extends Vue implements ControlInterface {
* 工具栏模型
*
* @type {*}
* @memberof IBIZBOOK
DataViewExp
View
* @memberof IBIZBOOK
Usr2Data
View
*/
public
dataviewexpviewdataviewexpbar_
dataview_batchtoolbarModels
:
any
=
{
public
usr2dataview
dataview_batchtoolbarModels
:
any
=
{
deuiaction1
:
{
name
:
'deuiaction1'
,
actiontarget
:
'NONE'
,
caption
:
'编辑'
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Edit'
,
target
:
'SINGLEKEY'
}
},
deuiaction2
:
{
name
:
'deuiaction2'
,
actiontarget
:
'NONE'
,
caption
:
'删除'
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Remove'
,
target
:
'MULTIKEY'
}
},
...
...
@@ -1043,7 +1013,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
*/
public
async
load
(
opt
:
any
=
{},
isReset
:
boolean
=
false
):
Promise
<
any
>
{
if
(
!
this
.
fetchAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
DataViewExp
View'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr2Data
View'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{...
opt
};
...
...
@@ -1138,7 +1108,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
*/
public
async
remove
(
datas
:
any
[]):
Promise
<
any
>
{
if
(
!
this
.
removeAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
DataViewExp
View'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr2Data
View'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
return
;
}
let
_datas
:
any
[]
=
[];
...
...
@@ -1255,7 +1225,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
try
{
if
(
Object
.
is
(
item
.
rowDataState
,
'create'
)){
if
(
!
this
.
createAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
DataViewExp
View'
+
(
this
.
$t
(
'app.list.notConfig.createAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr2Data
View'
+
(
this
.
$t
(
'app.list.notConfig.createAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,{
viewparams
:
this
.
viewparams
});
let
response
=
await
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
item
,
this
.
showBusyIndicator
);
...
...
@@ -1263,7 +1233,7 @@ export default class Usr2Base extends Vue implements ControlInterface {
}
}
else
if
(
Object
.
is
(
item
.
rowDataState
,
'update'
)){
if
(
!
this
.
updateAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
DataViewExp
View'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr2Data
View'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,{
viewparams
:
this
.
viewparams
});
if
(
item
.
ibizbook
){
...
...
@@ -1365,16 +1335,16 @@ export default class Usr2Base extends Vue implements ControlInterface {
public
uiAction
(
data
:
any
,
tag
:
any
,
$event
:
any
)
{
$event
.
stopPropagation
();
if
(
Object
.
is
(
'Edit'
,
tag
))
{
this
.
dataview
expbar_dataview
_batchtoolbar_deuiaction1_click
(
data
,
tag
,
$event
);
this
.
dataview_batchtoolbar_deuiaction1_click
(
data
,
tag
,
$event
);
}
if
(
Object
.
is
(
'Remove'
,
tag
))
{
this
.
dataview
expbar_dataview
_batchtoolbar_deuiaction2_click
(
data
,
tag
,
$event
);
this
.
dataview_batchtoolbar_deuiaction2_click
(
data
,
tag
,
$event
);
}
if
(
Object
.
is
(
'Edit'
,
tag
))
{
this
.
dataview
expbar_dataview
_memo1_u37f11a8_click
(
data
,
tag
,
$event
);
this
.
dataview_memo1_u37f11a8_click
(
data
,
tag
,
$event
);
}
if
(
Object
.
is
(
'Remove'
,
tag
))
{
this
.
dataview
expbar_dataview
_memo1_uc365542_click
(
data
,
tag
,
$event
);
this
.
dataview_memo1_uc365542_click
(
data
,
tag
,
$event
);
}
}
...
...
app_Web/src/widgets/ibizbook/usr2-dataview/usr2-dataview-model.ts
浏览文件 @
701b54b1
...
...
@@ -11,7 +11,7 @@ export default class Usr2Model {
* 获取数据项集合
*
* @returns {any[]}
* @memberof Usr2Data
viewexpbar_datav
iewMode
* @memberof Usr2Data
V
iewMode
*/
public
getDataItems
():
any
[]
{
return
[
...
...
@@ -43,6 +43,17 @@ export default class Usr2Model {
dataType
:
'FONTKEY'
,
},
{
name
:
'n_ibizbookname_like'
,
prop
:
'n_ibizbookname_like'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'n_price_gtandeq'
,
prop
:
'n_price_gtandeq'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'size'
,
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
浏览文件 @
701b54b1
...
...
@@ -70,11 +70,6 @@ export default class Usr4Model {
prop
:
'n_ibizbookname_like'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'n_price_gtandeq'
,
prop
:
'n_price_gtandeq'
,
dataType
:
'QUERYPARAM'
},
{
...
...
app_Web/src/widgets/ibizorder-detail/main-grid/main-grid-base.vue
浏览文件 @
701b54b1
...
...
@@ -964,7 +964,7 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
this
.
fetchAction
)
{
this
.
$Notice
.
error
({
title
:
this
.
$t
(
"app.commonWords.wrong"
)
as
string
,
desc
:
"IBIZOrderDetailSGridView
9
"
+
(
this
.
$t
(
"app.gridpage.notConfig.fetchAction"
)
as
string
),
desc
:
"IBIZOrderDetailSGridView"
+
(
this
.
$t
(
"app.gridpage.notConfig.fetchAction"
)
as
string
),
});
return
;
}
...
...
@@ -1123,7 +1123,7 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
this
.
removeAction
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView
9
'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
desc
:
'IBIZOrderDetailSGridView'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
return
;
}
...
...
@@ -1237,7 +1237,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
addBatch
(
arg
:
any
=
{}):
void
{
if
(
!
this
.
fetchAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView
9
'
+
(
this
.
$t
(
'app.gridpage.notConfig.fetchAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView'
+
(
this
.
$t
(
'app.gridpage.notConfig.fetchAction'
)
as
string
)
});
return
;
}
if
(
!
arg
){
...
...
@@ -2132,7 +2132,7 @@ export default class MainBase extends Vue implements ControlInterface {
try
{
if
(
Object
.
is
(
item
.
rowDataState
,
'create'
))
{
if
(
!
this
.
createAction
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView
9
'
+
(
this
.
$t
(
'app.gridpage.notConfig.createAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView'
+
(
this
.
$t
(
'app.gridpage.notConfig.createAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,
{
viewparams
:
this
.
viewparams
});
const
tempContext
=
Util
.
deepCopy
(
this
.
context
);
...
...
@@ -2141,7 +2141,7 @@ export default class MainBase extends Vue implements ControlInterface {
}
}
else
if
(
Object
.
is
(
item
.
rowDataState
,
'update'
)){
if
(
!
this
.
updateAction
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView
9
'
+
(
this
.
$t
(
'app.gridpage.notConfig.updateAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView'
+
(
this
.
$t
(
'app.gridpage.notConfig.updateAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,
{
viewparams
:
this
.
viewparams
});
const
tempContext
=
Util
.
deepCopy
(
this
.
context
);
...
...
@@ -2217,7 +2217,7 @@ export default class MainBase extends Vue implements ControlInterface {
if
(
!
this
.
loaddraftAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZOrderDetailSGridView
9
'
+
(
this
.
$t
(
'app.gridpage.notConfig.loaddraftAction'
)
as
string
)
desc
:
'IBIZOrderDetailSGridView'
+
(
this
.
$t
(
'app.gridpage.notConfig.loaddraftAction'
)
as
string
)
});
return
;
}
...
...
app_Web/swarm.yaml
0 → 100644
浏览文件 @
701b54b1
version
:
"
3.2"
services
:
demo-app-web
:
image
:
dstimage
ports
:
-
"
22:22"
networks
:
-
agent_network
#logging:
# driver: loki
# options:
# loki-url: "http://172.16.240.111:3100/loki/api/v1/push"
# max-size: "50m"
# max-file: "10"
environment
:
-
SPRING_CLOUD_NACOS_DISCOVERY_IP=172.16.240.110
-
SERVER_PORT=22
-
SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR=172.16.240.110:8848
-
SPRING_CLOUD_NACOS_CONFIG_SERVER-ADDR=172.16.240.110:8848
-
SPRING_APPLICATION_NAME=demosys-web
-
NACOS=172.16.240.110:8848
-
SEATA_REGISTRY_NACOS_SERVER-ADDR=172.16.240.110:8848
-
SEATA_ENABLED=true
deploy
:
resources
:
limits
:
memory
:
800M
reservations
:
memory
:
400M
mode
:
replicated
replicas
:
1
restart_policy
:
condition
:
on-failure
max_attempts
:
3
window
:
120s
networks
:
agent_network
:
driver
:
overlay
attachable
:
true
config.xml
浏览文件 @
701b54b1
...
...
@@ -55,6 +55,48 @@
git clone -b master $para2 demosys/
export NODE_OPTIONS=--max-old-space-size=4096
cd demosys/
mkdir -p /var/lib/jenkins/appcache/EA54E35C-DA18-4FCE-8058-197C10BF5508
if [ -e app_Web/app/vue.config.js ]
then
mv -f demo-boot/src/main/docker/demo-app-web.yaml app_Web/app/swarm.yaml
mv -f demo-boot/src/main/docker/Dockerfile-APP app_Web/app/Dockerfile
mv -f demo-boot/src/main/docker/gateway-web.yml app_Web/app/application-gateway.yml
cd app_Web/app
else
mv -f demo-boot/src/main/docker/demo-app-web.yaml app_Web/swarm.yaml
mv -f demo-boot/src/main/docker/Dockerfile-APP app_Web/Dockerfile
mv -f demo-boot/src/main/docker/gateway-web.yml app_Web/application-gateway.yml
cd app_Web
fi
sed -i "s#dstimage#$para5#g" swarm.yaml
if [[ $para3 = all ]];then
sed -i "s#BaseUrl#//BaseUrl#g" public/environments/environment.js
sed -i "3a BaseUrl: '/demosys__web'," public/environments/environment.js
sed -i "s#outputDir#//outputDir#g" vue.config.js
yarn
ln -s /var/lib/jenkins/appcache/EA54E35C-DA18-4FCE-8058-197C10BF5508 node_modules/.cache
set +e
if [ -e app/vue.config.js ]
then
ln -s ../../../../demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web ./public/assets/model
else
ln -s ../../../demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web ./public/assets/model
fi
set -e
yarn build
else
if [ -e app/vue.config.js ]
then
mv ../../demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web model
else
mv ../demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web model
fi
sed -i "s#srcimagename#$para4#g" Dockerfile-MODEL
mv Dockerfile-MODEL Dockerfile
fi
docker build -t $para5 .
docker push $para5
docker -H $para1 stack deploy --compose-file=swarm.yaml iBizDemo --with-registry-auth
</command>
</hudson.tasks.Shell>
</builders>
...
...
demo-boot/src/main/docker/Dockerfile-APP
0 → 100644
浏览文件 @
701b54b1
FROM ibiz4j/ibizlab-gateway:2.4.0.2
ENV TZ=Asia/Shanghai
EXPOSE 51001
WORKDIR /
COPY dist /dist
ADD application-gateway.yml /application-gateway.yml
demo-boot/src/main/docker/demo-app-web-k8s.yaml
0 → 100644
浏览文件 @
701b54b1
---
apiVersion
:
apps/v1
kind
:
Deployment
metadata
:
name
:
demo-app-web
labels
:
app
:
demo-app-web
spec
:
replicas
:
1
selector
:
matchLabels
:
app
:
demo-app-web
template
:
metadata
:
labels
:
app
:
demo-app-web
spec
:
imagePullSecrets
:
-
name
:
aly-shanghai
containers
:
-
name
:
demo-app-web
image
:
registry.cn-shanghai.aliyuncs.com/ibizsys/demo-app-web:latest
imagePullPolicy
:
Always
ports
:
-
containerPort
:
51001
env
:
-
name
:
SPRING_CLOUD_NACOS_DISCOVERY_IP
value
:
"
172.16.240.110"
-
name
:
SERVER_PORT
value
:
"
51001"
-
name
:
SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR
value
:
"
172.16.240.110:8848"
-
name
:
NACOS
value
:
"
172.16.240.110:8848"
-
name
:
SEATA_REGISTRY_NACOS_SERVER-ADDR
value
:
"
172.16.240.110:8848"
-
name
:
SEATA_ENABLED
value
:
"
true"
volumeMounts
:
-
name
:
data
mountPath
:
/app/file
volumes
:
-
name
:
data
persistentVolumeClaim
:
claimName
:
demo-date-pvc-nfs
---
apiVersion
:
v1
kind
:
Service
metadata
:
name
:
demo-app-web
labels
:
app
:
demo-app-web
spec
:
type
:
NodePort
ports
:
-
name
:
http
port
:
51001
targetPort
:
51001
nodePort
:
51001
protocol
:
TCP
selector
:
app
:
demo-app-web
demo-boot/src/main/docker/demo-app-web.yaml
0 → 100644
浏览文件 @
701b54b1
version
:
"
3.2"
services
:
demo-app-web
:
image
:
dstimage
ports
:
-
"
51001:51001"
networks
:
-
agent_network
#logging:
# driver: loki
# options:
# loki-url: "http://172.16.240.111:3100/loki/api/v1/push"
# max-size: "50m"
# max-file: "10"
environment
:
-
SPRING_CLOUD_NACOS_DISCOVERY_IP=172.16.240.110
-
SERVER_PORT=51001
-
SPRING_CLOUD_NACOS_DISCOVERY_SERVER-ADDR=172.16.240.110:8848
-
SPRING_CLOUD_NACOS_CONFIG_SERVER-ADDR=172.16.240.110:8848
-
SPRING_APPLICATION_NAME=demo-app-web
-
IBIZ_GATEWAY_PREFIX=demosys__web
-
IBIZ_GATEWAY_DEFAULTSERVICEID=demosys
-
IBIZ_GATEWAY_DEFAULTAPI=demoapi
-
NACOS=172.16.240.110:8848
-
SEATA_REGISTRY_NACOS_SERVER-ADDR=172.16.240.110:8848
-
SEATA_ENABLED=true
deploy
:
resources
:
limits
:
memory
:
800M
reservations
:
memory
:
400M
mode
:
replicated
replicas
:
1
restart_policy
:
condition
:
on-failure
max_attempts
:
3
window
:
120s
volumes
:
-
"
nfs:/app/file"
volumes
:
nfs
:
driver
:
local
driver_opts
:
type
:
"
nfs"
o
:
"
addr=172.16.240.140,rw"
device
:
"
:/data/nfs"
networks
:
agent_network
:
driver
:
overlay
attachable
:
true
demo-boot/src/main/docker/gateway-web.yml
0 → 100644
浏览文件 @
701b54b1
spring
:
cloud
:
gateway
:
discovery
:
locator
:
enabled
:
false
lowerCaseServiceId
:
true
routes
:
#配置网关路由规则
-
id
:
cloud_uaa
uri
:
lb://${ibiz.ref.service.uaa:ibzuaa-api}
order
:
10
predicates
:
-
Path=/demosys__web/v7/**,/demosys__web/uaa/**,/demosys__web/sysauthlogs
filters
:
-
StripPrefix=1
-
id
:
ibizcloud_ou
uri
:
lb://${ibiz.ref.service.ou:ibzou-api}
order
:
20
predicates
:
-
Path=/demosys__web/ibzemployees**,/demosys__web/sysemployees**,/demosys__web/ibzdepartments**,/demosys__web/sysdepartments**,/demosys__web/ibzorganizations**,/demosys__web/sysorganizations**
filters
:
-
StripPrefix=1
-
id
:
cloud_oss
uri
:
lb://${ibiz.ref.service.disk:ibzdisk-api}
order
:
40
predicates
:
-
Path=/demosys__web/ibizutil/**,/demosys__web/net-disk/**
filters
:
-
StripPrefix=1
-
id
:
cloud_conf
uri
:
lb://${ibiz.ref.service.conf:ibzuaa-api}
order
:
50
predicates
:
-
Path=/demosys__web/configs/**
filters
:
-
StripPrefix=1
-
id
:
cloud_dict
uri
:
lb://${ibiz.ref.service.dict:ibzdict-api}
order
:
60
predicates
:
-
Path=/demosys__web/dictionar**/**
filters
:
-
StripPrefix=1
-
id
:
cloud_workflow
uri
:
lb://${ibiz.ref.service.wf:ibzwf-api}
order
:
30
predicates
:
-
Path=/demosys__web/wfcore/**
filters
:
-
StripPrefix=1
-
id
:
gw-default-appdata
uri
:
lb://${ibiz.ref.service.demosys:demosys}
order
:
101
predicates
:
-
Path=/demosys__web/appdata
filters
:
-
StripPrefix=1
-
PrefixPath=/demosys
-
id
:
gw-default-api
uri
:
lb://${ibiz.ref.service.demosys:demosys}
order
:
102
predicates
:
-
Path=/demosys__web/**
filters
:
-
StripPrefix=1
-
PrefixPath=/demosys/demoapi
-
id
:
gw-default
uri
:
lb://${ibiz.ref.service.demosys:demosys}
order
:
900
predicates
:
-
Path=/demosys/**
filters
:
-
StripPrefix=1
-
PrefixPath=/demosys
-
id
:
gw-default-model
uri
:
lb://${spring.application.name}
order
:
101
predicates
:
-
Path=/demosys__web/remotemodel/**
filters
:
-
StripPrefix=2
-
PrefixPath=/assets/model
demo-boot/src/main/resources/static/remotemodel/PSMODULES/Sample/PSDATAENTITIES/IBIZSample0007/PSDEDATAQUERIES/CurGW/PSDEDQCODES/MYSQL5.json
浏览文件 @
701b54b1
...
...
@@ -4,7 +4,7 @@
"name"
:
"MySQL5"
,
"getPSDEDataQueryCodeConds"
:
[
{
"condType"
:
"CUSTOM"
,
"customCond"
:
"( t1.`IBIZSAMPLE0006ID` =
${srfdatacontext('IBIZSAMPLE0006ID','{
\"
defname
\"
:
\"
IBIZSAMPLE0006ID
\"
,
\"
dename
\"
:
\"
IBIZSAMPLE0007
\"
}')
} )"
,
"customCond"
:
"( t1.`IBIZSAMPLE0006ID` =
#{ctx.datacontext.ibizsample0006id
} )"
,
"name"
:
"查询条件"
}
],
"getPSDEDataQueryCodeExps"
:
[
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSMODULES/Sample/PSDATAENTITIES/IBIZSample0014/PSDEDATAQUERIES/CurIBIZSample0014/PSDEDQCODES/MYSQL5.json
浏览文件 @
701b54b1
...
...
@@ -4,7 +4,7 @@
"name"
:
"MySQL5"
,
"getPSDEDataQueryCodeConds"
:
[
{
"condType"
:
"CUSTOM"
,
"customCond"
:
"( t1.`IBIZSAMPLE0003ID` =
${srfdatacontext('nodeid','{
\"
defname
\"
:
\"
IBIZSAMPLE0003ID
\"
,
\"
dename
\"
:
\"
IBIZSAMPLE0014
\"
}')
} )"
,
"customCond"
:
"( t1.`IBIZSAMPLE0003ID` =
#{ctx.datacontext.nodeid
} )"
,
"name"
:
"查询条件"
}
],
"getPSDEDataQueryCodeExps"
:
[
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSMODULES/Sample/PSDATAENTITIES/IBIZSupplier/PSDEDATAQUERIES/CalUni/PSDEDQCODES/MYSQL5.json
浏览文件 @
701b54b1
...
...
@@ -8,7 +8,7 @@
"name"
:
"查询条件"
},
{
"condType"
:
"CUSTOM"
,
"customCond"
:
"( t1.`ADDRESS` =
${srfdatacontext('address','{
\"
defname
\"
:
\"
ADDRESS
\"
,
\"
dename
\"
:
\"
IBIZSUPPLIER
\"
}')} AND t1.`EMAIL` = ${srfdatacontext('email','{
\"
defname
\"
:
\"
EMAIL
\"
,
\"
dename
\"
:
\"
IBIZSUPPLIER
\"
}')} AND t1.`SUPPLIERNAME` = ${srfdatacontext('suppliername','{
\"
defname
\"
:
\"
SUPPLIERNAME
\"
,
\"
dename
\"
:
\"
IBIZSUPPLIER
\"
}')
} )"
,
"customCond"
:
"( t1.`ADDRESS` =
#{ctx.datacontext.address} AND t1.`EMAIL` = #{ctx.datacontext.email} AND t1.`SUPPLIERNAME` = #{ctx.datacontext.suppliername
} )"
,
"name"
:
"查询条件"
}
],
"getPSDEDataQueryCodeExps"
:
[
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSGANTTS/Usr.json
浏览文件 @
701b54b1
...
...
@@ -12,30 +12,6 @@
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSDETreeColumns"
:
[
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"author"
,
"mOSFilePath"
:
"psdetreecols/author"
,
"name"
:
"author"
,
"rTMOSFilePath"
:
"psdetreecols/author"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"归还日期"
,
"codeName"
:
"returntime"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
...
...
@@ -47,6 +23,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"author"
,
"mOSFilePath"
:
"psdetreecols/author"
,
"name"
:
"author"
,
"rTMOSFilePath"
:
"psdetreecols/author"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"出版社"
,
"codeName"
:
"press"
,
...
...
@@ -71,6 +59,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
}
],
"getPSDETreeNodeRSs"
:
[
{
"getChildPSDETreeNode"
:
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSTREEGRIDICES/TreeTable.json
浏览文件 @
701b54b1
...
...
@@ -31,18 +31,6 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
...
...
@@ -55,6 +43,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
}
],
"getPSDETreeNodeRSs"
:
[
{
"getChildPSDETreeNode"
:
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKGanttView.json
浏览文件 @
701b54b1
...
...
@@ -46,30 +46,6 @@
"id"
:
"GANTT"
},
"getPSDETreeColumns"
:
[
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"author"
,
"mOSFilePath"
:
"psdetreecols/author"
,
"name"
:
"author"
,
"rTMOSFilePath"
:
"psdetreecols/author"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"归还日期"
,
"codeName"
:
"returntime"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
...
...
@@ -81,6 +57,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"author"
,
"mOSFilePath"
:
"psdetreecols/author"
,
"name"
:
"author"
,
"rTMOSFilePath"
:
"psdetreecols/author"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"出版社"
,
"codeName"
:
"press"
,
...
...
@@ -105,6 +93,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
}
],
"getPSDETreeNodeRSs"
:
[
{
"getChildPSDETreeNode"
:
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKTreeGridExView.json
浏览文件 @
701b54b1
...
...
@@ -111,18 +111,6 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"作者"
,
"codeName"
:
"author"
,
...
...
@@ -135,6 +123,18 @@
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书名称"
,
"codeName"
:
"ibizbookname"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"ibizbookname"
,
"mOSFilePath"
:
"psdetreecols/ibizbookname"
,
"name"
:
"ibizbookname"
,
"rTMOSFilePath"
:
"psdetreecols/ibizbookname"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
}
],
"getPSDETreeNodeRSs"
:
[
{
"getChildPSDETreeNode"
:
{
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录