Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
功
功能演示系统
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
示例
功能演示系统
提交
06bd6c62
提交
06bd6c62
编写于
11月 16, 2022
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tony001 发布系统代码 [后台服务,演示应用]
上级
43afb56c
变更
7
显示空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
610 行增加
和
10 行删除
+610
-10
app-register.ts
app_Web/src/app-register.ts
+2
-0
extend-action-timeline.less
...onents/extend-action-timeline/extend-action-timeline.less
+223
-0
extend-action-timeline.vue
...ponents/extend-action-timeline/extend-action-timeline.vue
+370
-0
app-wfstep-trace-view-base.vue
...roup/app-wfstep-trace-view/app-wfstep-trace-view-base.vue
+1
-1
guide-borrow-form-form-base.vue
...ok/guide-borrow-form-form/guide-borrow-form-form-base.vue
+5
-5
usr4-dataview-base.vue
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-base.vue
+4
-4
usr4-dataview-model.ts
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
+5
-0
未找到文件。
app_Web/src/app-register.ts
浏览文件 @
06bd6c62
...
...
@@ -139,6 +139,7 @@ import AppCtrlPos from './components/layout-element/structure/app-ctrl-pos/app-c
import
AppPresetButton
from
'./components/layout-element/interactive/app-preset-button/app-preset-button.vue'
;
import
AppFieldImageDynamic
from
'./components/layout-element/media/app-field-image-dynamic/app-field-image-dynamic.vue'
;
import
AppTodoList
from
'./components/app-todo-list/app-todo-list.vue'
;
import
ExtendActionTimeline
from
'./components/extend-action-timeline/extend-action-timeline.vue'
;
// 全局挂载UI实体服务注册中心
window
[
'uiServiceRegister'
]
=
uiServiceRegister
;
...
...
@@ -293,5 +294,6 @@ export const AppComponents = {
v
.
component
(
'app-preset-button'
,
AppPresetButton
);
v
.
component
(
'app-field-image-dynamic'
,
AppFieldImageDynamic
);
v
.
component
(
'app-todo-list'
,
AppTodoList
);
v
.
component
(
'extend-action-timeline'
,
ExtendActionTimeline
);
},
};
\ No newline at end of file
app_Web/src/components/extend-action-timeline/extend-action-timeline.less
0 → 100644
浏览文件 @
06bd6c62
.extend-action-timeline {
height: 100%;
overflow: scroll;
}
.extend-action-timeline-table {
border-collapse: separate;
border-spacing: 0px 40px;
.extend-action-timeline-thead {
th:nth-child(1) {
min-width: 200px;
}
th:nth-child(2) {
width: 100%;
}
}
}
.extend-action-timeline-body__timeline.timeline-head {
padding: 8px 16px;
height: 45px;
line-height: 45px;
padding: 0 16px;
.timeline-wrapper>div {
height: 45px;
line-height: 45px;
}
.type {
padding-left: 16px;
}
}
.extend-action-timeline-body {
width: 100%;
.timeline-content .timeline-wrapper__authorname {
color: #57a3fd;
}
.timeline-wrapper__authorname__tooltips {
width: 214px;
display: flex;
flex-wrap: wrap;
.tooltips-content {
width: 30%;
margin: 5px 15px;
}
}
.timeline-draw {
height: auto;
background-color: #fafafa;
border-bottom: 1px solid #e8eaec;
}
.timeline-wrapper {
height: auto;
}
.timeline-wrapper__timeline-index {
width: 60px;
height: auto;
}
.timeline-wrapper__usertaskname {
width: 100%;
}
.timeline-wrapper__authorname {
display: flex;
width: 100%;
height: auto;
flex-wrap: wrap;
>div {
width: 110px;
}
}
}
.extend-action-timeline-body__timeline {
position: relative;
width: 100%;
padding: 0 16px;
height: 65px;
line-height: 65px;
font-size: 14px;
.timeline-wrapper {
display: flex;
width: 100%;
.timeline-wrapper__usertaskname,
.timeline-wrapper__authorname,
.timeline-wrapper__last-time,
.timeline-wrapper__type,
.timeline-wrapper__fullmessage {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.timeline-wrapper__tooltip .el-popover__reference {
max-width: 500px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
>div {
text-align: center;
margin: 0 5px;
}
.timeline-wrapper__type {
width: 9%;
min-width: 180px;
text-align: start;
.dot {
width: 8px;
height: 8px;
display: inline-block;
line-height: 100%;
margin: 0 10px 0 3px;
background-color: #46cf4a;
border-radius: 50%;
}
}
}
.timeline-wrapper__timeline-index {
width: 50px;
height: 65px;
position: relative;
span {
display: inline-block;
width: 25px;
height: 25px;
line-height: 25px;
color: #fff;
background-color: #57a3fd;
border-radius: 50%;
}
.icon-bottom {
color: #57a3fd;
position: absolute;
left: 50%;
top: 0;
height: 30px;
line-height: 0;
font-size: 18px;
transform: translateX(-50%) translateY(-2px);
}
.icon-top {
height: 14px;
width: 0;
border: 1px solid #57a3fd;
border-width: 0 1px 0 0;
position: absolute;
bottom: -1px;
left: 50%;
transform: translateX(-0.4px);
}
.icon-line {
height: 102%;
width: 0;
border: 1px solid #57a3fd;
border-width: 0 1px 0 0;
position: absolute;
bottom: -1px;
left: 50%;
transform: translateX(-0.4px);
}
}
.ivu-tooltip {
width: 100%;
}
.ivu-tooltip-rel {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.timeline-wrapper__usertaskname {
width: 9%;
min-width: 160px;
}
.timeline-wrapper__authorname {
width: 15%;
min-width: 110px;
}
.timeline-wrapper__last-time {
width: 15%;
min-width: 100px;
}
.timeline-arrow {
position: absolute;
right: 24px;
bottom: 50%;
transform: translateY(-50%);
float: right;
width: 24px;
height: 24px;
cursor: pointer;
font-size: 24px;
font-weight: bold;
color: #999;
}
}
\ No newline at end of file
app_Web/src/components/extend-action-timeline/extend-action-timeline.vue
0 → 100644
浏览文件 @
06bd6c62
<
template
>
<div
class=
"extend-action-timeline"
>
<div
class=
"extend-action-timeline-table"
>
<div
class=
"extend-action-timeline-thead"
></div>
<div
class=
"extend-action-timeline-body"
v-if=
"data && data.usertasks"
>
<div
class=
"timeline-draw extend-action-timeline-body__timeline timeline-head"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
{{
$t
(
'components.timeline.index'
)
}}
</div>
<div
class=
"timeline-wrapper__usertaskname"
>
{{
$t
(
'components.timeline.node'
)
}}
</div>
<div
class=
"timeline-wrapper__authorname"
>
{{
$t
(
'components.timeline.author'
)
}}
</div>
<div
class=
"timeline-wrapper__type"
>
{{
$t
(
'components.timeline.type'
)
}}
</div>
<div
class=
"timeline-wrapper__last-time"
>
{{
$t
(
'components.timeline.lasttime'
)
}}
</div>
<div
class=
"timeline-wrapper__fullmessage"
>
{{
$t
(
'components.timeline.opinion'
)
}}
</div>
</div>
<div
class=
"timeline-arrow"
></div>
</div>
<template
v-for=
"(usertask, usertaskIndex) in data.usertasks"
>
<div
v-if=
"usertask.comments.length > 0"
class=
"timeline-content"
:key=
"usertaskIndex"
>
<div
class=
"extend-action-timeline-body__timeline"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
<span>
{{
usertask
.
index
}}
</span>
<div
class=
"icon-bottom"
v-if=
"usertask.index != 1"
>
<i
class=
"el-icon-bottom"
></i>
</div>
<div
class=
"icon-top"
v-if=
"usertask.index
<
usertasksLength
"
></div>
</div>
<div
class=
"timeline-wrapper__usertaskname"
>
{{
usertask
.
userTaskName
}}
</div>
<div
class=
"timeline-wrapper__authorname"
>
<Tooltip
placement=
"bottom"
theme=
"light"
:disabled=
"
acceptingOfficerNodup('authorName', usertask.comments).length > 1
? false
: true
"
>
{{
acceptingOfficerNodup
(
'authorName'
,
usertask
.
comments
)
.
map
(
item
=>
item
)
.
toString
()
}}
<div
slot=
"content"
>
<div
class=
"timeline-wrapper__authorname__tooltips"
>
<div
class=
"tooltips-content"
v-for=
"(item, toolindex) in acceptingOfficerNodup(
'authorName',
usertask.comments,
)"
:key=
"toolindex"
>
{{
item
}}
</div>
</div>
</div>
</Tooltip>
</div>
<div
class=
"timeline-wrapper__type"
>
<div
v-if=
"
usertask.comments[usertask.comments.length - 1] &&
usertask.comments[usertask.comments.length - 1].type
"
class=
"dot"
></div>
<span>
{{
usertask
.
comments
[
usertask
.
comments
.
length
-
1
]
&&
usertask
.
comments
[
usertask
.
comments
.
length
-
1
].
type
}}
</span>
</div>
<div
class=
"timeline-wrapper__last-time"
>
{{
usertask
.
comments
[
usertask
.
comments
.
length
-
1
]
&&
formatDate
(
usertask
.
comments
[
usertask
.
comments
.
length
-
1
].
time
,
'MM月DD日 HH:mm:ss'
,
)
}}
</div>
<el-popover
class=
"timeline-wrapper__tooltip"
placement=
"top"
:width=
"500"
trigger=
"hover"
>
<div
slot=
"reference"
>
{{
usertask
.
comments
[
usertask
.
comments
.
length
-
1
]
&&
usertask
.
comments
[
usertask
.
comments
.
length
-
1
].
fullMessage
}}
</div>
<div
class=
"fullmessage"
>
{{
usertask
.
comments
[
usertask
.
comments
.
length
-
1
]
&&
usertask
.
comments
[
usertask
.
comments
.
length
-
1
].
fullMessage
}}
</div>
</el-popover>
</div>
<div
v-if=
"usertask.comments.length > 1 || usertask.identitylinks.length > 0"
class=
"timeline-arrow"
@
click=
"changeExpand(usertask)"
>
<i
:class=
"usertask.isShow ? 'el-icon-minus' : 'el-icon-plus'"
/>
</div>
</div>
<div
v-if=
"usertask.isShow"
>
<template
v-for=
"(comment, index) in usertask.comments"
>
<div
class=
"timeline-draw extend-action-timeline-body__timeline"
:key=
"index"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
<div
v-if=
"usertask.index
<
usertasksLength
"
class=
"icon-line"
></div>
</div>
<div
class=
"timeline-wrapper__usertaskname"
></div>
<div
class=
"timeline-wrapper__authorname"
>
{{
comment
.
authorName
}}
</div>
<div
class=
"timeline-wrapper__type"
>
<div
class=
"dot"
></div>
<span>
{{
comment
.
type
}}
</span>
</div>
<div
class=
"timeline-wrapper__last-time"
>
{{
formatDate
(
comment
.
time
,
'MM月DD日 HH:mm:ss'
)
}}
</div>
<div
class=
"timeline-wrapper__fullmessage"
>
{{
comment
.
fullMessage
}}
</div>
</div>
<div
class=
"timeline-arrow"
></div>
</div>
</
template
>
<div
v-if=
"usertask.identitylinks.length > 0"
class=
"timeline-draw extend-action-timeline-body__timeline"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
<div
v-if=
"usertask.index < usertasksLength"
class=
"icon-line"
></div>
</div>
<div
class=
"timeline-wrapper__usertaskname"
>
{{ $t('components.timeline.inhand') }}
</div>
<div
class=
"timeline-wrapper__authorname"
>
<div
v-for=
"(identitylink, index) in usertask.identitylinks"
:key=
"index"
>
{{ identitylink.displayname }}
</div>
</div>
</div>
</div>
</div>
</div>
<div
v-else
class=
"timeline-content"
:key=
"usertaskIndex"
>
<div
class=
"extend-action-timeline-body__timeline"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
<span>
{{ usertask.index }}
</span>
<div
class=
"icon-bottom"
v-if=
"usertask.index != 1"
>
<i
class=
"el-icon-bottom"
></i>
</div>
<div
class=
"icon-top"
v-if=
"usertask.index < usertasksLength"
></div>
</div>
<div
class=
"timeline-wrapper__usertaskname"
>
{{ usertask.userTaskName }}
</div>
<div
class=
"timeline-wrapper__authorname"
>
<Tooltip
placement=
"bottom"
theme=
"light"
:disabled=
"
acceptingOfficerNodup('displayname', usertask.identitylinks).length > 1
? false
: true
"
>
{{
acceptingOfficerNodup('displayname', usertask.identitylinks)
.map(item => item)
.toString()
}}
<div
slot=
"content"
>
<div
class=
"tooltips"
>
<div
class=
"tooltips-content"
v-for=
"(item, toolindex) in acceptingOfficerNodup(
'displayname',
usertask.identitylinks,
)"
:key=
"toolindex"
>
{{ item }}
</div>
</div>
</div>
</Tooltip>
</div>
</div>
<div
v-if=
"usertask.identitylinks.length > 1"
class=
"timeline-arrow"
@
click=
"changeExpand(usertask)"
>
<i
:class=
"usertask.isShow ? 'el-icon-minus' : 'el-icon-plus'"
/>
</div>
</div>
<div
v-if=
"usertask.isShow"
>
<
template
v-for=
"(identitylink, index) in usertask.identitylinks"
>
<div
class=
"timeline-draw extend-action-timeline-body__timeline"
:key=
"index"
>
<div
class=
"timeline-wrapper"
>
<div
class=
"timeline-wrapper__timeline-index"
>
<div
v-if=
"usertask.index
<
usertasksLength
"
class=
"icon-line"
></div>
</div>
<div
class=
"timeline-wrapper__usertaskname"
></div>
<div
class=
"timeline-wrapper__authorname"
>
{{
identitylink
.
displayname
}}
</div>
</div>
<div
class=
"timeline-arrow"
></div>
</div>
</
template
>
</div>
</div>
</template>
</div>
</div>
</div>
</template>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
}
from
'vue-property-decorator'
;
import
moment
from
'moment'
;
import
{
Http
}
from
'@/utils'
;
import
EntityService
from
'@/service/entity-service'
;
import
IBIZBOOKService
from
'@/service/ibizbook/ibizbook-service'
;
@
Component
({})
export
default
class
ExtendActionTimeline
extends
Vue
{
/**
* 上下文
*
* @memberof ExtendActionTimeline
*/
@
Prop
()
public
context
:
any
;
/**
* 视图参数
*
* @memberof ExtendActionTimeline
*/
@
Prop
()
public
viewparams
:
any
;
/**
* 实体名称
*
* @memberof ExtendActionTimeline
*/
@
Prop
()
public
appDeCodeName
!
:
string
;
/**
* 数据
*
* @memberof ExtendActionTimeline
*/
public
data
:
any
=
{};
/**
* 初始化memo
*
* @memberof ExtendActionTimeline
*/
public
initmemo
:
string
=
''
;
/**
* 子项索引初始值
*
* @memberof ExtendActionTimeline
*/
public
usertasksIndex
:
number
=
1
;
/**
* 子项长度初始值
*
* @memberof ExtendActionTimeline
*/
public
usertasksLength
:
number
=
1
;
/**
* 实体服务
*
* @memberof ExtendActionTimeline
*/
public
appEntityService
:
any
;
/**
* 初始化数据
*
* @memberof ExtendActionTimeline
*/
public
async
created
()
{
this
.
appEntityService
=
await
window
.
entityServiceRegister
.
getService
(
this
.
appDeCodeName
.
toLowerCase
());
if
(
this
.
appEntityService
)
{
console
.
log
(
this
.
appEntityService
);
this
.
appEntityService
.
GetWFHistory
(
this
.
context
).
then
((
response
:
any
)
=>
{
if
(
response
&&
response
.
status
===
200
)
{
this
.
data
=
response
.
data
;
this
.
initUIStateData
();
}
else
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
response
});
}
}).
catch
((
error
:
any
)
=>
{
const
message
=
error
.
message
?
error
.
message
:
'加载数据错误'
;
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
message
});
})
}
}
/**
* 初始化数据添加标记
*
* @memberof ExtendActionTimeline
*/
public
initUIStateData
()
{
if
(
this
.
data
&&
this
.
data
.
usertasks
)
{
this
.
usertasksIndex
=
1
;
for
(
let
i
in
this
.
data
.
usertasks
)
{
this
.
data
.
usertasks
[
i
].
isShow
=
false
;
this
.
data
.
usertasks
[
i
].
index
=
this
.
usertasksIndex
;
this
.
usertasksIndex
++
;
}
this
.
usertasksLength
=
this
.
usertasksIndex
-
1
;
this
.
$forceUpdate
();
}
}
/**
* 时间转换
*
* @memberof ExtendActionTimeline
*/
public
formatDate
(
date
:
string
,
format
:
string
)
{
return
moment
(
date
).
format
(
format
);
}
/**
* 点击事件
*
* @memberof ExtendActionTimeline
*/
public
changeExpand
(
usertask
:
any
)
{
usertask
.
isShow
=
!
usertask
.
isShow
;
this
.
$forceUpdate
();
}
/**
* 办理人员名称显示去重
*
* @param tag 需要去重的名称标识
* @param data 需要去重数据集
* @memberof ExtendActionTimeline
*/
public
acceptingOfficerNodup
(
tag
:
string
,
data
:
any
[]):
any
[]
{
let
tempData
:
any
[]
=
[];
if
(
data
.
length
>
0
&&
tag
)
{
data
.
forEach
((
data
:
any
)
=>
{
tempData
.
push
(
data
[
tag
]);
});
}
const
nodup
=
[...
new
Set
(
tempData
)];
return
nodup
;
}
}
</
script
>
<
style
lang=
'less'
>
@import './extend-action-timeline.less';
</
style
>
\ No newline at end of file
app_Web/src/pages/ungroup/app-wfstep-trace-view/app-wfstep-trace-view-base.vue
浏览文件 @
06bd6c62
...
...
@@ -6,7 +6,7 @@
<span
class=
'caption-info'
:title=
"$t(model.srfCaption)"
>
{{
$t
(
model
.
srfCaption
)
}}
</span>
</div>
<div
class=
'content-container'
>
{{
$t
(
'app.viewLayoutPanel.appWfstepDataView.title'
)
}}
<extend-action-timeline
:context=
"context"
:viewparams=
"viewparams"
:appDeCodeName=
"appDeCodeName"
/>
</div>
</card>
</div>
...
...
app_Web/src/widgets/ibizbook/guide-borrow-form-form/guide-borrow-form-form-base.vue
浏览文件 @
06bd6c62
...
...
@@ -1378,7 +1378,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
*/
public
async
load
(
opt
:
any
=
{}):
Promise
<
any
>
{
if
(
!
this
.
loadAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView'
+
(
this
.
$t
(
'app.formpage.notconfig.loadaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.loadaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
};
...
...
@@ -1425,7 +1425,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
*/
public
async
loadDraft
(
opt
:
any
=
{}):
Promise
<
any
>
{
if
(
!
this
.
loaddraftAction
)
{
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView'
+
(
this
.
$t
(
'app.formpage.notconfig.loaddraftaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.loaddraftaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
@@ -1495,7 +1495,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
const
action
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)
?
this
.
updateAction
:
this
.
createAction
;
if
(
!
action
){
let
actionName
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)?
"updateAction"
:
"createAction"
;
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
return
;
}
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
...
...
@@ -1603,7 +1603,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
const
action
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)
?
this
.
updateAction
:
this
.
createAction
;
if
(
!
action
){
let
actionName
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)?
"updateAction"
:
"createAction"
;
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
return
;
}
Object
.
assign
(
arg
,
{
viewparams
:
this
.
viewparams
});
...
...
@@ -1695,7 +1695,7 @@ export default class GuideBorrowFormBase extends Vue implements ControlInterface
public
remove
(
opt
:
Array
<
any
>
=
[],
showResultInfo
?:
boolean
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
removeAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView'
+
(
this
.
$t
(
'app.formpage.notconfig.removeaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKWizardView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.removeaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
opt
[
0
];
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-base.vue
浏览文件 @
06bd6c62
...
...
@@ -698,7 +698,7 @@ export default class Usr4Base 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
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{...
opt
};
...
...
@@ -792,7 +792,7 @@ export default class Usr4Base 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
TestCL
DataView'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
return
;
}
let
_datas
:
any
[]
=
[];
...
...
@@ -908,7 +908,7 @@ export default class Usr4Base 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
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.createAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
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
);
...
...
@@ -916,7 +916,7 @@ export default class Usr4Base 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
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,{
viewparams
:
this
.
viewparams
});
if
(
item
.
ibizbook
){
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
浏览文件 @
06bd6c62
...
...
@@ -70,6 +70,11 @@ export default class Usr4Model {
prop
:
'n_ibizbookname_like'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'n_price_gtandeq'
,
prop
:
'n_price_gtandeq'
,
dataType
:
'QUERYPARAM'
},
{
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录