Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7-Res
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7-Res
提交
2f857f0a
提交
2f857f0a
编写于
9月 21, 2020
作者:
tony001
1
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Revert "Merge branch 'dev'"
This reverts commit
26fcf093
, reversing changes made to
0b0f56b7
.
上级
26fcf093
变更
46
隐藏空白字符变更
内嵌
并排
正在显示
46 个修改的文件
包含
117 行增加
和
1325 行删除
+117
-1325
avue.min.js
public/assets/js/avue.min.js
+0
-8
index.css
public/assets/styles/index.css
+0
-1
app-register.ts
src/app-register.ts
+2
-13
app-alert-group.vue
src/components/app-alert-group/app-alert-group.vue
+0
-84
app-alert.less
src/components/app-alert/app-alert.less
+0
-13
app-alert.vue
src/components/app-alert/app-alert.vue
+0
-201
app-checkbox-list.vue
src/components/app-checkbox-list/app-checkbox-list.vue
+1
-1
app-data-upload.vue
src/components/app-data-upload/app-data-upload.vue
+1
-1
app-department-personnel.vue
...nts/app-department-personnel/app-department-personnel.vue
+1
-1
app-department-select.vue
...omponents/app-department-select/app-department-select.vue
+1
-1
app-form-druipart.vue
src/components/app-form-druipart/app-form-druipart.vue
+1
-1
app-form-part.less
src/components/app-form-part/app-form-part.less
+0
-3
app-form-part.vue
src/components/app-form-part/app-form-part.vue
+0
-236
app-group-select.vue
src/components/app-group-select/app-group-select.vue
+1
-1
app-message-popover.less
src/components/app-message-popover/app-message-popover.less
+1
-1
app-message-popover.vue
src/components/app-message-popover/app-message-popover.vue
+1
-1
app-org-select.vue
src/components/app-org-select/app-org-select.vue
+1
-1
app-panel-item.less
src/components/app-panel-item/app-panel-item.less
+5
-0
app-panel-item.vue
src/components/app-panel-item/app-panel-item.vue
+36
-3
app-radio-group.vue
src/components/app-radio-group/app-radio-group.vue
+1
-1
app-rawitem.vue
src/components/app-rawitem/app-rawitem.vue
+0
-86
app-transfer.vue
src/components/app-transfer/app-transfer.vue
+1
-1
avue-custom-form.vue
src/components/avue-custom-form/avue-custom-form.vue
+41
-54
codelist.vue
src/components/codelist/codelist.vue
+1
-1
dropdown-list-dynamic.vue
...omponents/dropdown-list-dynamic/dropdown-list-dynamic.vue
+1
-1
dropdown-list-mpicker.vue
...omponents/dropdown-list-mpicker/dropdown-list-mpicker.vue
+1
-1
dropdown-list.vue
src/components/dropdown-list/dropdown-list.vue
+1
-47
data-view9-engine.ts
src/engine/view/data-view9-engine.ts
+2
-2
grid-view-engine.ts
src/engine/view/grid-view-engine.ts
+2
-2
list-view9-engine.ts
src/engine/view/list-view9-engine.ts
+2
-2
md-view-engine.ts
src/engine/view/md-view-engine.ts
+3
-3
wfdyna-exp-grid-view-engine.ts
src/engine/view/wfdyna-exp-grid-view-engine.ts
+2
-2
index.d.ts
src/index.d.ts
+1
-3
message.ts
src/interface/message.ts
+0
-103
view-message-group-service.ts
src/message/view-message-group-service.ts
+0
-87
view-message-service.ts
src/message/view-message-service.ts
+0
-308
form-item.ts
src/model/form-detail/form-item.ts
+0
-9
codelist-service.ts
src/service/app/codelist-service.ts
+1
-1
entity-service.ts
src/service/entity-service.ts
+1
-1
getters.ts
src/store/getters.ts
+1
-17
mutations.ts
src/store/mutations.ts
+1
-13
state.ts
src/store/state.ts
+0
-1
default.less
src/styles/default.less
+0
-1
template.html
src/template.html
+0
-1
auth-guard.ts
src/utils/auth-guard/auth-guard.ts
+1
-5
control-service.ts
src/widgets/control-service.ts
+1
-1
未找到文件。
public/assets/js/avue.min.js
已删除
100644 → 0
浏览文件 @
26fcf093
因为 它太大了无法显示 源差异 。您可以改为
查看blob
。
public/assets/styles/index.css
已删除
100644 → 0
浏览文件 @
26fcf093
@charset
"UTF-8"
;
.avue-crud
.tree-ctrl
,
.avue-draggable
{
-webkit-user-select
:
none
;
-ms-user-select
:
none
}
.avue-avatar
,
.avue-card__item
{
-webkit-box-sizing
:
border-box
;
font-variant
:
tabular-nums
;
list-style
:
none
}
.avue-affix
{
position
:
fixed
;
z-index
:
10
}
.avue-sign
{
padding
:
5px
}
.avue-sign__canvas
{
border
:
1px
solid
#ccc
}
.avue-carousel--fullscreen
{
height
:
100%
}
.avue-carousel--fullscreen
.el-carousel
,
.avue-carousel--fullscreen
.el-carousel__container
{
height
:
90%
}
.avue-carousel__item
{
position
:
relative
;
width
:
100%
;
height
:
100%
}
.avue-carousel__item
a
{
width
:
100%
;
height
:
100%
;
display
:
block
}
.avue-carousel__img
{
height
:
100%
;
background-size
:
cover
;
background-position
:
center
center
}
.avue-carousel__title
{
z-index
:
1024
;
position
:
absolute
;
left
:
0
;
bottom
:
0
;
width
:
100%
;
height
:
50px
;
line-height
:
50px
;
font-size
:
16px
;
text-align
:
center
;
color
:
#fff
;
background-color
:
rgba
(
0
,
0
,
0
,
.6
)}
.avue-article__title
{
margin-bottom
:
15px
;
font-size
:
32px
;
line-height
:
32px
;
font-weight
:
400
}
.avue-article__meta
{
display
:
block
;
margin-bottom
:
20px
;
font-size
:
12px
;
color
:
#999
}
.avue-article__lead
{
color
:
#666
;
font-size
:
14px
;
line-height
:
22px
;
border
:
1px
solid
#dedede
;
border-radius
:
2px
;
background
:
#f9f9f9
;
padding
:
10px
}
.avue-article__body
{
padding-top
:
10px
;
background
:
#fff
;
font-family
:
Segoe
UI
,
Lucida
Grande
,
Helvetica
,
Arial
,
Microsoft
YaHei
,
FreeSans
,
Arimo
,
Droid
Sans
,
wenquanyi
micro
hei
,
Hiragino
Sans
GB
,
Hiragino
Sans
GB
W3
,
FontAwesome
,
sans-serif
;
color
:
#333
;
font-size
:
14px
}
.avue-article
blockquote
{
margin
:
0
;
font-family
:
Georgia
,
Times
New
Roman
,
Times
,
Kai
,
Kaiti
SC
,
KaiTi
,
BiauKai
,
FontAwesome
,
serif
;
padding
:
1px
0
1px
15px
;
border-left
:
4px
solid
#ddd
}
.avue-avatar
{
font-size
:
14px
;
box-sizing
:
border-box
;
margin
:
0
;
padding
:
0
;
display
:
inline-block
;
text-align
:
center
;
background
:
#ccc
;
color
:
#fff
;
white-space
:
nowrap
;
position
:
relative
;
overflow
:
hidden
;
vertical-align
:
middle
;
width
:
32px
;
height
:
32px
;
line-height
:
32px
;
border-radius
:
50%
}
.avue-avatar__images
{
width
:
100%
;
height
:
100%
}
.avue-avatar__icon
{
font-size
:
18px
}
.avue-avatar__string
{
position
:
absolute
;
left
:
50%
;
-webkit-transform-origin
:
0
center
;
transform-origin
:
0
center
}
.avue-avatar--lg
{
width
:
40px
;
height
:
40px
;
line-height
:
40px
;
border-radius
:
50%
;
font-size
:
24px
}
.avue-avatar--sm
{
width
:
24px
;
height
:
24px
;
line-height
:
24px
;
border-radius
:
50%
;
font-size
:
14px
}
.avue-avatar--square
{
border-radius
:
4px
}
.avue-skeleton__avatar
{
width
:
40px
;
height
:
40px
;
line-height
:
40px
;
display
:
inline-block
;
border-radius
:
50%
;
background
:
#f2f2f2
}
.avue-skeleton__header
{
display
:
table-cell
;
vertical-align
:
top
;
padding-right
:
16px
}
.avue-skeleton__content
{
display
:
table-cell
;
vertical-align
:
top
;
width
:
100%
}
.avue-skeleton__title
{
margin-top
:
16px
;
height
:
16px
;
width
:
40%
;
background
:
#f2f2f2
}
.avue-skeleton__item
{
padding-top
:
16px
;
padding-bottom
:
16px
;
border-bottom
:
1px
solid
#e8e8e8
}
.avue-skeleton__item
:last-child
{
border-bottom
:
none
}
.avue-skeleton__li
{
margin-bottom
:
10px
;
height
:
16px
;
background
:
#f2f2f2
;
list-style
:
none
;
width
:
100%
}
.avue-skeleton__li
:last-child
{
width
:
50%
}
.avue-skeleton__loading
{
background
:
-webkit-gradient
(
linear
,
left
top
,
right
top
,
color-stop
(
25%
,
#f2f2f2
),
color-stop
(
37%
,
#e6e6e6
),
color-stop
(
63%
,
#f2f2f2
));
background
:
linear-gradient
(
90deg
,
#f2f2f2
25%
,
#e6e6e6
37%
,
#f2f2f2
63%
);
-webkit-animation
:
avue-skeleton-loading
1.4s
ease
infinite
;
animation
:
avue-skeleton-loading
1.4s
ease
infinite
;
background-size
:
400%
100%
}
@-webkit-keyframes
avue-skeleton-loading
{
0
%
{
background-position
:
100%
50%
}
100
%
{
background-position
:
0
50%
}}
@keyframes
avue-skeleton-loading
{
0
%
{
background-position
:
100%
50%
}
100
%
{
background-position
:
0
50%
}}
.avue-crud
{
margin
:
0
auto
;
width
:
99%
}
.avue-crud
.el-checkbox
:last-of-type
{
margin-right
:
0
}
.avue-crud
.el-range-editor--mini
{
height
:
28px
}
.avue-crud__img
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-crud__img
img
{
height
:
40px
;
margin-left
:
5px
;
-o-object-fit
:
contain
;
object-fit
:
contain
}
.avue-crud__column
.el-checkbox
{
margin-bottom
:
10px
;
cursor
:
move
}
.avue-crud__menu
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
;
position
:
relative
;
width
:
100%
;
min-height
:
40px
;
height
:
auto
;
overflow
:
hidden
;
margin-bottom
:
5px
}
.avue-crud__search
.el-form-item--mini.el-form-item
,
.avue-crud__search
.el-form-item--small.el-form-item
{
margin-bottom
:
14px
}
.avue-crud
.el-table--mini
.avue-crud__color
{
width
:
20px
;
height
:
20px
}
.avue-crud
.el-table--mini
.avue-crud__icon
{
font-size
:
25px
}
.avue-crud
.el-table--small
.avue-crud__color
{
width
:
30px
;
height
:
30px
}
.avue-crud
.el-table--small
.avue-crud__icon
{
font-size
:
35px
}
.avue-crud
th
{
word-break
:
break-word
;
color
:
rgba
(
0
,
0
,
0
,
.85
);
background-color
:
#fafafa
}
.avue-crud
.ms-tree-title
{
padding-left
:
10px
}
.avue-crud
.ms-tree-space
{
position
:
relative
;
top
:
1px
;
display
:
inline-block
;
font-style
:
normal
;
font-weight
:
400
;
line-height
:
1
;
width
:
15px
;
height
:
14px
}
.avue-crud
.ms-tree-space
::before
{
content
:
""
}
.avue-crud
.processContainer
{
width
:
100%
;
height
:
100%
}
.avue-crud
table
td
{
line-height
:
26px
}
.avue-crud
.tree-ctrl
{
position
:
relative
;
cursor
:
pointer
;
color
:
#666
;
margin-left
:
-15px
;
display
:
inline-block
;
width
:
17px
;
height
:
17px
;
text-align
:
center
;
line-height
:
14px
;
border
:
1px
solid
#e8e8e8
;
-moz-user-select
:
none
;
user-select
:
none
;
background
:
#fff
;
font-size
:
10px
}
.avue-crud
.tree-ctrl
i
{
padding-top
:
3px
}
@keyframes
treeTableShow
{
from
{
opacity
:
0
}
to
{
opacity
:
1
}}
@-webkit-keyframes
treeTableShow
{
from
{
opacity
:
0
}
to
{
opacity
:
1
}}
.avue-crud--indeterminate
.is-indeterminate
.el-checkbox__inner
{
background-color
:
#fff
;
border-color
:
#dcdfe6
}
.avue-crud
.el-table
th
{
word-break
:
break-word
;
color
:
rgba
(
0
,
0
,
0
,
.85
);
background-color
:
#fafafa
}
.avue-crud__color
{
margin
:
0
auto
;
width
:
40px
;
height
:
40px
;
border-radius
:
5px
;
display
:
block
}
.avue-crud__icon
{
font-size
:
45px
}
.avue-crud__icon--small
{
font-size
:
25px
}
.avue-crud__sortable
{
opacity
:
.2
}
.avue-crud__drag-handler
{
cursor
:
pointer
}
.avue-crud__pagination
{
position
:
relative
;
padding
:
25px
0
20px
20px
;
text-align
:
right
}
.avue-crud__form
{
padding
:
0
8px
}
.avue-crud__empty
{
padding
:
60px
0
}
.avue-crud__header
{
margin-bottom
:
10px
}
.avue-crud__header
>
.el-button
{
padding
:
12px
25px
}
.avue-crud__title
{
font-weight
:
700
;
margin-bottom
:
20px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
;
font-size
:
22px
}
.avue-crud__filter-item
,
.avue-crud__tip
{
display
:
-ms-flexbox
;
-webkit-box-align
:
center
}
.avue-crud__tip
{
margin
:
8px
0
;
display
:
-webkit-box
;
display
:
flex
;
-ms-flex-align
:
center
;
align-items
:
center
;
font-size
:
12px
}
.avue-crud__tip-name
{
margin-right
:
10px
}
.avue-crud__tip-count
{
font-size
:
16px
;
font-weight
:
600
}
.avue-crud__tip
.el-button
{
margin-bottom
:
0
}
.avue-crud__filter-item
{
margin-bottom
:
12px
;
display
:
-webkit-box
;
display
:
flex
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-crud__filter-menu
{
padding
:
0
5px
;
margin-bottom
:
20px
}
.avue-crud__filter-label
{
margin
:
0
5px
;
width
:
120px
!important
}
.avue-crud__filter-symbol
{
margin
:
0
5px
;
width
:
80px
!important
}
.avue-crud__filter-value
{
margin
:
0
5px
;
width
:
150px
!important
}
.avue-crud__filter-value
.el-date-editor.el-input
,
.avue-crud__filter-value
.el-date-editor.el-input__inner
{
width
:
100%
}
.avue-crud__filter-icon
{
margin-left
:
10px
}
.avue-crud__dialog--fullscreen
.el-dialog
{
left
:
0
!important
;
top
:
0
!important
}
.avue-crud__dialog__header
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
}
.avue-crud__dialog__menu
{
padding-right
:
20px
}
.avue-crud__dialog__menu
i
{
color
:
#909399
;
font-size
:
15px
}
.avue-crud__dialog__menu
i
:hover
{
color
:
#409EFF
}
.avue-crud__dialog
.el-transfer
{
padding
:
0
20px
;
height
:
96%
}
.avue-crud__dialog
.el-transfer-panel__body
,
.avue-crud__dialog
.el-transfer-panel__list.is-filterable
{
height
:
100%
!important
}
.avue-crud__dialog
.el-transfer__buttons
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-orient
:
vertical
;
-webkit-box-direction
:
normal
;
-ms-flex-direction
:
column
;
flex-direction
:
column
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-crud__dialog
.el-transfer__buttons
.el-button
{
margin
:
5px
0
}
.avue-crud__dialog
.el-transfer-panel
{
min-width
:
200px
;
width
:
40%
}
.avue-crud__dialog
.el-dialog__body
{
padding
:
20px
20px
5px
10px
}
.avue-crud__dialog
.el-scrollbar__wrap
{
overflow-x
:
hidden
}
.avue-crud__dialog
.avue-form__menu
{
padding-top
:
15px
}
.avue-card__item
{
margin-bottom
:
16px
;
border
:
1px
solid
#e8e8e8
;
background-color
:
#fff
;
box-sizing
:
border-box
;
color
:
rgba
(
0
,
0
,
0
,
.65
);
font-size
:
14px
;
line-height
:
1.5
;
-webkit-font-feature-settings
:
"tnum"
;
font-feature-settings
:
"tnum"
;
cursor
:
pointer
;
height
:
200px
}
.avue-card__item
:hover
{
border-color
:
rgba
(
0
,
0
,
0
,
.09
);
-webkit-box-shadow
:
0
2px
8px
rgba
(
0
,
0
,
0
,
.09
);
box-shadow
:
0
2px
8px
rgba
(
0
,
0
,
0
,
.09
)}
.avue-card__item--add
{
border
:
1px
dashed
#d9d9d9
;
width
:
100%
;
color
:
rgba
(
0
,
0
,
0
,
.45
);
background-color
:
#fff
;
border-radius
:
2px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
font-size
:
16px
}
.avue-card__item--add
i
{
margin-right
:
10px
}
.avue-card__item--add
:hover
{
color
:
#40a9ff
;
background-color
:
#fff
;
border-color
:
#40a9ff
}
.avue-card__body
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
padding
:
24px
}
.avue-card__detail
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
}
.avue-card__avatar
{
width
:
48px
;
height
:
48px
;
border-radius
:
48px
;
overflow
:
hidden
;
margin-right
:
12px
}
.avue-card__avatar
img
{
width
:
100%
;
height
:
100%
}
.avue-card__title
{
color
:
rgba
(
0
,
0
,
0
,
.85
);
margin-bottom
:
12px
;
font-size
:
16px
}
.avue-card__title
:hover
{
color
:
#1890ff
}
.avue-card__info
,
.avue-card__menu
{
color
:
rgba
(
0
,
0
,
0
,
.45
);
display
:
-webkit-box
}
.avue-card__info
{
-webkit-box-orient
:
vertical
;
-webkit-line-clamp
:
3
;
overflow
:
hidden
;
height
:
64px
}
.avue-card__menu
{
display
:
-ms-flexbox
;
display
:
flex
;
-ms-flex-pack
:
distribute
;
justify-content
:
space-around
;
height
:
50px
;
background
:
#f7f9fa
;
text-align
:
center
;
line-height
:
50px
}
.avue-card__menu
:hover
{
color
:
#1890ff
}
.avue-comment
{
margin-bottom
:
30px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
start
;
-ms-flex-align
:
start
;
align-items
:
flex-start
}
.avue-comment--reverse
{
-webkit-box-orient
:
horizontal
;
-webkit-box-direction
:
reverse
;
-ms-flex-direction
:
row-reverse
;
flex-direction
:
row-reverse
}
.avue-data-display
.item
,
.avue-flow__node
,
.data-box
.item-info
,
.data-icons
.item--easy
{
-webkit-box-orient
:
vertical
;
-webkit-box-direction
:
normal
}
.avue-comment--reverse
.avue-comment__main
:after
,
.avue-comment--reverse
.avue-comment__main
:before
{
left
:
auto
;
right
:
-8px
;
border-width
:
8px
0
8px
8px
}
.avue-comment--reverse
.avue-comment__main
:before
{
border-left-color
:
#dedede
}
.avue-comment--reverse
.avue-comment__main
:after
{
border-left-color
:
#f8f8f8
;
margin-right
:
1px
;
margin-left
:
auto
}
.avue-comment__avatar
{
width
:
48px
;
height
:
48px
;
border-radius
:
50%
;
border
:
1px
solid
transparent
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
vertical-align
:
middle
}
.avue-comment__header
{
padding
:
5px
15px
;
background
:
#f8f8f8
;
border-bottom
:
1px
solid
#eee
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
}
.avue-comment__author
{
font-weight
:
700
;
font-size
:
14px
;
color
:
#999
}
.avue-comment__main
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
;
margin
:
0
20px
;
position
:
relative
;
border
:
1px
solid
#dedede
;
border-radius
:
2px
}
.avue-comment__main
:after
,
.avue-comment__main
:before
{
position
:
absolute
;
top
:
10px
;
left
:
-8px
;
right
:
100%
;
width
:
0
;
height
:
0
;
display
:
block
;
content
:
" "
;
border-color
:
transparent
;
border-style
:
solid
solid
outset
;
border-width
:
8px
8px
8px
0
;
pointer-events
:
none
}
.avue-comment__main
:before
{
border-right-color
:
#dedede
;
z-index
:
1
}
.avue-comment__main
:after
{
border-right-color
:
#f8f8f8
;
margin-left
:
1px
;
z-index
:
2
}
.avue-comment__body
{
padding
:
15px
;
overflow
:
hidden
;
background
:
#fff
;
font-family
:
Segoe
UI
,
Lucida
Grande
,
Helvetica
,
Arial
,
Microsoft
YaHei
,
FreeSans
,
Arimo
,
Droid
Sans
,
wenquanyi
micro
hei
,
Hiragino
Sans
GB
,
Hiragino
Sans
GB
W3
,
FontAwesome
,
sans-serif
;
color
:
#333
;
font-size
:
14px
}
.avue-comment
blockquote
{
margin
:
0
;
font-family
:
Georgia
,
Times
New
Roman
,
Times
,
Kai
,
Kaiti
SC
,
KaiTi
,
BiauKai
,
FontAwesome
,
serif
;
padding
:
1px
0
1px
15px
;
border-left
:
4px
solid
#ddd
}
.avue-chat
{
-webkit-box-shadow
:
1px
2px
10px
#eee
;
box-shadow
:
1px
2px
10px
#eee
;
position
:
relative
;
background-color
:
#fcfcfc
}
.avue-chat
li
,
.avue-chat
ul
{
padding
:
0
;
margin
:
0
}
.avue-chat
li
{
list-style
:
none
;
cursor
:
pointer
}
.avue-chat
.web__content
{
height
:
100%
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
}
.avue-chat
.web__main
{
height
:
calc
(
100%
-
200px
);
padding
:
15px
15px
20px
;
overflow-x
:
hidden
;
overflow-y
:
auto
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-chat
.web__logo
{
background-color
:
#409eff
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
padding
:
15px
12px
;
margin
:
0
auto
;
vertical-align
:
middle
}
.avue-chat
.web__logo-img
{
margin-top
:
3px
;
width
:
35px
;
height
:
35px
;
border-radius
:
100%
;
-webkit-box-shadow
:
0
3px
3px
0
rgba
(
0
,
0
,
0
,
.1
);
box-shadow
:
0
3px
3px
0
rgba
(
0
,
0
,
0
,
.1
)}
.avue-chat
.web__logo-info
{
margin-left
:
10px
}
.avue-chat
.web__logo-name
{
position
:
relative
;
margin-top
:
5px
;
font-size
:
13px
}
.avue-chat
.web__logo-dept
{
margin-top
:
1px
;
font-size
:
12px
}
.avue-chat
.web__logo-dept
,
.avue-chat
.web__logo-name
{
color
:
#fff
;
margin
:
0
;
padding
:
0
;
width
:
175px
;
text-overflow
:
ellipsis
;
overflow
:
hidden
;
white-space
:
nowrap
}
.avue-chat
.web__main-item
{
position
:
relative
;
font-size
:
0
;
margin-bottom
:
10px
;
padding-left
:
60px
;
min-height
:
68px
}
.avue-chat
.web__main-text
,
.avue-chat
.web__main-user
{
display
:
inline-block
;
vertical-align
:
top
;
font-size
:
14px
}
.avue-chat
.web__main-user
{
position
:
absolute
;
left
:
3px
}
.avue-chat
.web__main-user
img
{
width
:
40px
;
height
:
40px
;
border-radius
:
100%
}
.avue-chat
.web__main-user
cite
{
position
:
absolute
;
left
:
60px
;
top
:
-2px
;
width
:
500px
;
line-height
:
24px
;
font-size
:
12px
;
white-space
:
nowrap
;
color
:
#999
;
text-align
:
left
;
font-style
:
normal
}
.avue-chat
.web__main-user
cite
i
{
padding-left
:
15px
;
font-style
:
normal
}
.avue-chat
.web__main-text
{
position
:
relative
;
line-height
:
22px
;
margin-top
:
25px
;
padding
:
8px
15px
;
background-color
:
#f3f3f3
;
border-radius
:
3px
;
border
:
1px
solid
#f0f0f0
;
color
:
#000
;
word-break
:
break-all
}
.avue-chat
.web__main-arrow
{
top
:
6px
;
left
:
-8px
;
position
:
absolute
;
display
:
block
;
width
:
0
;
height
:
0
;
border-color
:
transparent
#ebeef5
transparent
transparent
;
border-style
:
solid
;
border-width
:
8px
8px
8px
0
}
.avue-chat
.web__main-arrow
::after
{
content
:
" "
;
top
:
-7px
;
left
:
1px
;
position
:
absolute
;
display
:
block
;
width
:
0
;
height
:
0
;
border-color
:
transparent
#fff
transparent
transparent
;
border-style
:
solid
;
border-width
:
7px
7px
7px
0
}
.avue-chat
.web__main-item--mine
.web__main-text
.web__main-arrow
{
left
:
auto
;
right
:
-5px
;
border-color
:
transparent
transparent
transparent
#409eff
;
border-style
:
solid
;
border-width
:
8px
0
8px
8px
}
.avue-chat
.web__main-item--mine
.web__main-text
.web__main-arrow
::after
{
left
:
auto
;
right
:
-2px
;
border-color
:
transparent
transparent
transparent
#409eff
;
border-style
:
solid
;
border-width
:
7px
0
7px
7px
}
.avue-chat
.web__main-list
{
margin
:
10px
0
}
.avue-chat
.web__main-list
li
{
height
:
30px
;
color
:
#409eff
;
line-height
:
30px
}
.avue-chat
.web__main-item--mine
{
text-align
:
right
;
padding-left
:
0
;
padding-right
:
60px
}
.avue-chat
.web__main-item--mine
.web__main-user
{
left
:
auto
;
right
:
3px
}
.avue-chat
.web__main-item--mine
.web__main-user
cite
{
left
:
auto
;
right
:
60px
;
text-align
:
right
}
.avue-chat
.web__main-item--mine
.web__main-user
cite
i
{
padding-left
:
0
;
padding-right
:
15px
}
.avue-chat
.web__main-item--mine
.web__main-text
{
margin-left
:
0
;
text-align
:
left
;
background-color
:
#409eff
;
color
:
#fff
}
.avue-chat
.web__footer
{
-webkit-box-shadow
:
0
-1px
0
0
rgba
(
0
,
0
,
0
,
.04
),
0
-2px
0
0
rgba
(
0
,
0
,
0
,
.01
);
box-shadow
:
0
-1px
0
0
rgba
(
0
,
0
,
0
,
.04
),
0
-2px
0
0
rgba
(
0
,
0
,
0
,
.01
);
position
:
absolute
;
left
:
0
;
bottom
:
0
;
width
:
100%
;
background-color
:
#fff
}
.avue-chat
.web__msg
{
padding
:
10px
;
height
:
auto
;
overflow
:
hidden
}
.avue-chat
.web__msg--file
,
.avue-chat
.web__msg--img
,
.avue-chat
.web__msg--video
{
position
:
relative
;
max-width
:
250px
;
min-width
:
200px
;
width
:
100%
;
margin
:
10px
0
;
border
:
1px
solid
#eee
;
overflow
:
hidden
;
border-radius
:
5px
;
cursor
:
pointer
;
display
:
block
}
.avue-chat
.web__msg--file
{
height
:
140px
;
background-color
:
#fff
}
.avue-chat
.web__msg--file
span
{
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
padding
:
3px
5px
;
color
:
#333
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
width
:
100%
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
height
:
calc
(
100%
-
80px
);
overflow
:
hidden
;
font-size
:
13px
;
text-align
:
center
}
.avue-chat
.web__msg--file
h2
{
margin
:
0
;
width
:
100%
;
text-align
:
center
;
line-height
:
80px
;
background-color
:
#409EFF
;
color
:
#fff
}
.avue-chat
.web__msg--map
{
height
:
160px
}
.avue-chat
.web__msg-input
{
display
:
block
;
width
:
100%
;
height
:
60px
;
overflow-x
:
hidden
;
overflow-y
:
auto
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
resize
:
none
;
outline
:
0
;
background-color
:
#fff
;
border
:
0
;
word-break
:
break-all
;
font-size
:
13px
;
line-height
:
17px
;
-webkit-appearance
:
none
}
.avue-chat
.web__msg-submit
{
float
:
right
;
display
:
block
;
outline
:
0
;
cursor
:
pointer
;
text-align
:
center
}
.avue-image-preview__box
,
.avue-img--center
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
-webkit-box-align
:
center
}
.avue-chat
.web__tools
{
padding
:
8px
10px
0
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-chat
.web__tools
i
{
margin-right
:
12px
;
font-size
:
20px
;
color
:
#888a91
}
.avue-chat
.web__tools
i
:hover
{
color
:
#76b1f9
}
.avue-draggable
{
padding
:
10px
;
position
:
absolute
;
cursor
:
move
;
-webkit-tap-highlight-color
:
transparent
;
-moz-user-select
:
none
;
user-select
:
none
}
.avue-draggable__mask
{
width
:
100%
;
height
:
100%
;
border
:
0
;
position
:
absolute
;
top
:
0
;
right
:
0
;
bottom
:
0
;
left
:
0
;
z-index
:
1
}
.avue-draggable--active
{
cursor
:
move
;
border
:
1px
dashed
#09f
;
background-color
:
rgba
(
115
,
170
,
229
,
.5
)}
.avue-draggable--move
{
opacity
:
.6
;
background-color
:
rgba
(
115
,
170
,
229
,
.5
)}
.avue-draggable--click
{
cursor
:
pointer
}
.avue-draggable__line--left
{
position
:
absolute
;
border-top
:
1px
dashed
#09f
;
width
:
10000px
;
height
:
0
;
top
:
0
;
-webkit-transform
:
translateX
(
-100%
);
transform
:
translateX
(
-100%
)}
.avue-draggable__line--top
{
position
:
absolute
;
border-left
:
1px
dashed
#09f
;
width
:
0
;
height
:
10000px
;
left
:
0
;
-webkit-transform
:
translateY
(
-100%
);
transform
:
translateY
(
-100%
)}
.avue-draggable__line--label
{
top
:
-5px
;
left
:
-8px
;
position
:
absolute
;
padding
:
5px
;
-webkit-transform
:
translate
(
-100%
,
-100%
);
transform
:
translate
(
-100%
,
-100%
);
color
:
#09f
;
font-size
:
18px
;
white-space
:
nowrap
;
cursor
:
move
}
.avue-draggable__menu
{
position
:
absolute
;
top
:
0
;
left
:
0
;
background-color
:
#409EFF
;
font-size
:
25px
;
color
:
#fff
;
z-index
:
9999
;
cursor
:
pointer
}
.avue-draggable__range
{
position
:
absolute
;
width
:
10px
;
height
:
10px
;
border-radius
:
100%
;
z-index
:
9999
;
background-color
:
#09f
}
.avue-draggable__range--left
,
.avue-draggable__range--right
{
top
:
50%
;
-webkit-transform
:
translateY
(
-50%
);
transform
:
translateY
(
-50%
)}
.avue-draggable__range--left
:hover
,
.avue-draggable__range--right
:hover
{
cursor
:
ew-resize
}
.avue-draggable__range--left
{
left
:
-6px
}
.avue-draggable__range--right
{
right
:
-6px
}
.avue-draggable__range--bottom
,
.avue-draggable__range--top
{
left
:
50%
;
-webkit-transform
:
translateX
(
-50%
);
transform
:
translateX
(
-50%
)}
.avue-draggable__range--bottom
:hover
,
.avue-draggable__range--top
:hover
{
cursor
:
ns-resize
}
.avue-draggable__range--top
{
top
:
-6px
}
.avue-draggable__range--bottom
{
bottom
:
-6px
}
.avue-draggable__range--bottom-right
:hover
,
.avue-draggable__range--top-left
:hover
{
cursor
:
nwse-resize
}
.avue-draggable__range--bottom-left
:hover
,
.avue-draggable__range--top-right
:hover
{
cursor
:
nesw-resize
}
.avue-draggable__range--top-right
{
top
:
-6px
;
right
:
-6px
}
.avue-draggable__range--top-left
{
top
:
-6px
;
left
:
-6px
}
.avue-draggable__range--bottom-right
{
bottom
:
-6px
;
right
:
-6px
}
.avue-draggable__range--bottom-left
{
bottom
:
-6px
;
left
:
-6px
}
.avue-img--center
{
display
:
flex
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-img--fullscreen
.el-dialog__body
{
height
:
100%
}
.avue-image-preview
{
position
:
fixed
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
-webkit-transition
:
all
.5s
;
transition
:
all
.5s
;
z-index
:
9999
}
.avue-image-preview
.el-image-viewer__close
i
{
color
:
#fff
}
.avue-image-preview
.el-image-viewer__btn
{
z-index
:
1024
}
.avue-image-preview
img
{
-webkit-transition
:
all
.5s
;
transition
:
all
.5s
;
cursor
:
pointer
}
.avue-image-preview__mask
{
position
:
absolute
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
background
:
rgba
(
0
,
0
,
0
,
.5
);
z-index
:
-1
}
.avue-image-preview__box
{
width
:
100%
;
height
:
100%
;
display
:
flex
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-image-preview__box
.el-carousel
{
width
:
90%
;
height
:
100%
}
.avue-image-preview__box
.el-carousel__container
{
height
:
100%
}
.avue-image-preview__box
.el-carousel__item
{
width
:
100%
;
height
:
100%
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-input-table__crud
.avue-crud__pagination
{
padding
:
10px
0
2px
10px
;
margin
:
0
}
.amap-icon
img
,
.amap-marker-content
img
{
width
:
25px
;
height
:
34px
}
.avue-input-map__marker
{
position
:
absolute
;
top
:
-20px
;
right
:
-118px
;
color
:
#fff
;
padding
:
4px
10px
;
-webkit-box-shadow
:
1px
1px
1px
rgba
(
10
,
10
,
10
,
.2
);
box-shadow
:
1px
1px
1px
rgba
(
10
,
10
,
10
,
.2
);
white-space
:
nowrap
;
font-size
:
12px
;
font-family
:
""
;
background-color
:
#25a5f7
;
border-radius
:
3px
}
.avue-input-map__content-input
{
margin-bottom
:
10px
}
.avue-input-map__content-box
{
position
:
relative
}
.avue-input-map__content-container
{
width
:
100%
;
height
:
450px
}
.avue-input-map__content-result
{
display
:
block
!important
;
position
:
absolute
;
top
:
0
;
right
:
-8px
;
width
:
250px
;
height
:
450px
;
overflow-y
:
auto
}
.avue-input-icon__item
{
text-align
:
center
;
max-width
:
80px
;
padding
:
20px
;
-webkit-transition
:
all
.2s
;
transition
:
all
.2s
}
.avue-input-icon__item
:hover
{
-webkit-transform
:
scale
(
1.4
);
transform
:
scale
(
1.4
)}
.avue-input-icon__item--active
{
-webkit-transform
:
scale
(
1.4
);
transform
:
scale
(
1.4
);
color
:
#409EFF
}
.avue-input-icon__list
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
}
.avue-input-icon__icon
{
font-size
:
32px
!important
}
.avue-upload--upload
.el-upload
,
.avue-upload--upload
.el-upload__tip
{
display
:
none
}
.avue-upload--upload
.el-upload--picture-img
{
display
:
inline-block
}
.avue-upload--upload
.el-upload-list
{
margin-top
:
-6px
}
.avue-upload--list
.el-upload
{
border
:
1px
dashed
#d9d9d9
;
border-radius
:
6px
;
cursor
:
pointer
;
position
:
relative
;
overflow
:
hidden
}
.avue-upload--list
.el-upload
:hover
{
border-color
:
#409eff
}
.avue-upload__dialog
.el-dialog__header
{
display
:
none
}
.avue-upload__dialog
.el-dialog__body
{
padding
:
10px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-upload__menu
{
position
:
absolute
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
background-color
:
rgba
(
0
,
0
,
0
,
.5
);
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
z-index
:
1024
}
.avue-form
,
.avue-form__group
.el-col
{
position
:
relative
}
.avue-upload__menu
i
{
color
:
#fff
;
margin
:
0
8px
;
font-size
:
20px
}
.avue-upload__icon
{
font-size
:
28px
;
color
:
#8c939d
;
width
:
178px
;
height
:
178px
;
line-height
:
178px
!important
;
text-align
:
center
}
.avue-upload__avatar
{
width
:
178px
;
height
:
178px
;
display
:
block
}
.avue-form
{
margin
:
0
auto
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-form__item--top
.el-form-item__label
{
width
:
100%
!important
;
text-align
:
left
!important
}
.avue-form__item--top
.el-form-item__content
{
margin-left
:
0
!important
}
.avue-form__item--left
.el-form-item__label
{
text-align
:
left
!important
}
.avue-form__menu
{
padding
:
5px
10px
0
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-form__menu--center
{
text-align
:
center
}
.avue-form__menu--center
.el-button
{
margin
:
0
5px
}
.avue-form__menu--left
{
text-align
:
left
}
.avue-form__menu--right
{
text-align
:
right
}
.avue-form__tabs
{
padding
:
0
10px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-form__group
{
-webkit-box-align
:
start
;
-ms-flex-align
:
start
;
align-items
:
flex-start
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
height
:
auto
}
.avue-form__group--flex
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
}
.avue-form__line
{
display
:
inline-block
;
height
:
42px
}
.avue-form__row--block
{
width
:
100%
;
display
:
block
}
.avue-flow__node
,
.avue-flow__node-body
{
display
:
-webkit-box
;
display
:
-ms-flexbox
}
.avue-form__row--cursor
{
cursor
:
pointer
}
.avue-form__option
{
position
:
absolute
;
right
:
0
;
top
:
-10px
;
z-index
:
999
}
.avue-flow
,
.avue-flow__node
,
.avue-tree
{
position
:
relative
}
.avue-form__option
i
{
color
:
#666
}
.avue-form__option
i
+
i
{
margin-left
:
10px
}
.el-drawer
.avue-form
{
padding
:
0
20px
}
.avue-flow
.avue-draggable
{
padding
:
0
}
.avue-flow__node
{
display
:
flex
;
-ms-flex-direction
:
column
;
flex-direction
:
column
;
width
:
200px
;
height
:
80px
;
border-radius
:
5px
;
-webkit-box-shadow
:
'#66a6e0 0px 0px 12px 0px'
;
box-shadow
:
'#66a6e0 0px 0px 12px 0px'
;
border
:
1px
solid
#eee
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
overflow
:
hidden
}
.avue-flow__node--active
{
border-width
:
2px
;
border-color
:
#f56c6c
}
.avue-flow__node-drag
{
margin
:
0
5px
;
display
:
inline-block
}
.avue-flow__node-header
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
;
background-color
:
#66a6e0
}
.avue-flow__node-body
{
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
-webkit-box-flex
:
1.5
;
-ms-flex
:
1.5
;
flex
:
1.5
;
text-align
:
center
;
background
:
#fff
}
.avue-date__group
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-date__radio
.el-radio-button
:last-child
.el-radio-button__inner
{
border-radius
:
0
;
border-right
:
0
}
.avue-date__date
{
width
:
300px
}
.avue-date__date
.el-date-editor
{
border-top-left-radius
:
0
;
border-bottom-left-radius
:
0
}
.avue-empty
{
margin
:
0
8px
;
font-size
:
14px
;
line-height
:
22px
;
text-align
:
center
}
.avue-checkbox
.el-checkbox
+
.el-checkbox
,
.avue-radio
.el-radio
+
.el-radio
{
margin-left
:
0
}
.avue-checkbox
.el-checkbox
,
.avue-radio
.el-radio
{
margin-right
:
10px
}
.avue-empty__image
{
height
:
100px
;
margin-bottom
:
8px
}
.avue-empty__image
img
{
height
:
100%
;
vertical-align
:
middle
;
border-style
:
none
}
.avue-empty__desc
{
color
:
rgba
(
0
,
0
,
0
,
.65
)}
.avue-select
.sortable-ghost
{
opacity
:
.8
;
color
:
#fff
!important
;
background
:
#409EFF
!important
}
.avue-select
.el-tag
{
cursor
:
pointer
}
.avue-group
.el-collapse
,
.avue-group
.el-collapse-item__wrap
{
border-color
:
#fff
}
.avue-group
.el-collapse-item__header
{
height
:
inherit
;
border
:
none
}
.avue-group
.el-collapse-item__content
{
padding-bottom
:
0
}
.avue-group--arrow
.el-collapse-item__arrow
,
.avue-group--header
.el-collapse-item__header
{
display
:
none
}
.avue-group
.el-collapse-item__arrow
{
margin-top
:
-25px
}
.avue-group--collapse
.el-collapse-item__arrow
,
.avue-group--collapse
.el-collapse-item__header
{
display
:
-webkit-box
!important
;
display
:
-ms-flexbox
!important
;
display
:
flex
!important
}
.avue-group__header
,
.avue-tree__filter
{
display
:
-webkit-box
;
display
:
-ms-flexbox
}
.avue-group--card
{
padding
:
0
20px
}
.avue-group--card
:last-child
{
margin-bottom
:
50px
}
.avue-group--card
.avue-group__item
{
border-radius
:
5px
;
-webkit-box-shadow
:
2px
1px
8px
rgba
(
0
,
0
,
0
,
.15
);
box-shadow
:
2px
1px
8px
rgba
(
0
,
0
,
0
,
.15
)}
.avue-group__item
{
margin-bottom
:
10px
;
background-color
:
#fff
;
border-bottom
:
1px
solid
#eee
;
border-radius
:
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-group__item
:last-child
{
border-bottom
:
none
}
.avue-group__header
{
width
:
100%
;
margin-bottom
:
30px
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
height
:
50px
;
line-height
:
50px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
border-bottom
:
1px
solid
#eee
}
.avue-group__icon
{
margin-right
:
8px
;
font-size
:
20px
;
color
:
rgba
(
0
,
0
,
0
,
.85
)}
.avue-group__title
{
font-size
:
16px
;
font-weight
:
500
;
color
:
rgba
(
0
,
0
,
0
,
.85
)}
.avue-tree__menu
{
width
:
200px
;
position
:
fixed
;
z-index
:
1024
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
background-color
:
#fff
}
.avue-tree__item
,
.avue-video
{
position
:
relative
;
overflow
:
hidden
}
.avue-tree__dialog
.el-dialog__body
{
padding
:
30px
20px
0
}
.avue-tree__item
{
height
:
34px
;
line-height
:
34px
;
outline
:
0
;
padding
:
0
10px
;
white-space
:
nowrap
;
text-overflow
:
ellipsis
;
width
:
100%
;
color
:
#666
}
.avue-tree__item
:hover
{
cursor
:
pointer
;
color
:
#409eff
}
.avue-tree__filter
{
margin-bottom
:
15px
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-search
{
padding
:
0
20px
}
.avue-search__item
{
padding
:
20px
0
10px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
start
;
-ms-flex-align
:
start
;
align-items
:
flex-start
;
border-bottom
:
1px
dashed
#e8e8e8
}
.avue-search__item
:last-child
{
border-bottom
:
none
}
.avue-search__tags
{
padding
:
0
12px
;
margin-right
:
24px
;
margin-bottom
:
12px
;
font-size
:
14px
;
color
:
rgba
(
0
,
0
,
0
,
.65
);
cursor
:
pointer
;
white-space
:
nowrap
;
display
:
inline-block
}
.avue-search__tags
:hover
{
color
:
#1890ff
}
.avue-search__tags--active
{
color
:
#fff
;
background-color
:
#1890ff
;
border-radius
:
5px
}
.avue-search__tags--active
:hover
{
opacity
:
.85
;
color
:
#fff
}
.avue-search__title
{
margin
:
0
;
padding
:
0
20px
;
width
:
120px
;
font-size
:
14px
;
text-align
:
right
;
display
:
inline-block
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-search__content
{
width
:
calc
(
100%
-
190px
);
display
:
inline-block
}
.avue-dynamic__item
,
.avue-notice__item
{
display
:
-webkit-box
;
display
:
-ms-flexbox
}
.avue-search__content
.el-tag
{
margin-right
:
10px
;
margin-bottom
:
10px
}
.avue-tabs
{
padding
:
20px
10px
0
}
.avue-video
{
width
:
500px
}
.avue-video__border
span
{
position
:
absolute
;
width
:
30px
;
height
:
30px
;
border-width
:
4px
;
color
:
#0073eb
;
border-style
:
solid
}
.avue-video__border
span
:nth-child
(
1
)
{
left
:
15px
;
top
:
15px
;
border-right
:
0
;
border-bottom
:
0
}
.avue-video__border
span
:nth-child
(
2
)
{
right
:
15px
;
top
:
15px
;
border-left
:
0
;
border-bottom
:
0
}
.avue-video__border
span
:nth-child
(
3
)
{
bottom
:
15px
;
left
:
15px
;
border-right
:
0
;
border-top
:
0
}
.avue-video__border
span
:nth-child
(
4
)
{
bottom
:
15px
;
right
:
15px
;
border-left
:
0
;
border-top
:
0
}
.avue-video__img
{
width
:
100px
;
position
:
absolute
;
left
:
50%
;
top
:
50%
;
-webkit-transform
:
translate
(
-50%
,
-50%
);
transform
:
translate
(
-50%
,
-50%
)}
.avue-video__main
{
width
:
100%
}
.avue-dynamic__item
{
margin-bottom
:
10px
;
width
:
100%
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-dynamic__input
{
margin-right
:
8px
;
width
:
100%
}
.avue-dynamic__button
{
margin-bottom
:
0
!important
}
.avue-verify__item
{
padding
:
5px
10px
;
display
:
inline-block
;
margin
:
0
4px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
border
:
1px
solid
#e1e1e1
;
font-size
:
64px
;
text-align
:
center
}
.avue-text-ellipsis__more
{
padding
:
0
2px
}
.avue-login
.el-form-item
{
margin-bottom
:
18px
}
.avue-login
.el-input-group__append
{
padding
:
0
;
overflow
:
hidden
}
.avue-login__send
{
min-width
:
150px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-login__send
:hover
{
color
:
#C0C4CC
!important
;
border-color
:
#EBEEF5
!important
;
background-color
:
#F5F7FA
!important
}
.avue-login__submit
{
width
:
100%
}
.avue-keyboard--default
.akeyboard-keyboard
{
height
:
100%
;
width
:
100%
;
background
:
#f0f0f0
;
border-radius
:
5px
;
padding
:
9px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--default
.akeyboard-keyboard-innerKeys
{
text-align
:
center
}
.avue-keyboard--default
.akeyboard-keyboard-keys
{
height
:
40px
;
min-width
:
40px
;
padding
:
0
10px
;
border-radius
:
5px
;
background
:
#fff
;
display
:
inline-block
;
line-height
:
40px
;
text-align
:
center
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
4px
;
cursor
:
pointer
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
}
.avue-keyboard--default
.akeyboard-keyboard-keys
:hover
,
.avue-keyboard--default
.keyboard-keyboard-keys-focus
{
background
:
#1e9fff
;
color
:
#fff
}
.avue-keyboard--default
.akeyboard-keyboard-keys-Delete
,
.avue-keyboard--default
.akeyboard-keyboard-keys-Tab
{
width
:
80px
}
.avue-keyboard--default
.akeyboard-keyboard-keys-Caps
{
width
:
77px
}
.avue-keyboard--default
.akeyboard-keyboard-keys-Enter
{
width
:
90px
}
.avue-keyboard--default
.akeyboard-keyboard-keys-Shift
{
width
:
106px
}
.avue-keyboard--default
.akeyboard-keyboard-keys-Space
{
width
:
350px
}
.avue-keyboard--default
.akeyboard-keyboard-fixedBottomCenter
{
width
:
100%
!important
;
height
:
auto
!important
;
position
:
fixed
;
bottom
:
0
;
left
:
0
;
border-radius
:
0
!important
}
.avue-keyboard--default
.akeyboard-numberKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#f0f0f0
;
border-radius
:
5px
;
padding
:
10px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--default
.akeyboard-numberKeyboard-keys-Enter
{
height
:
40px
;
width
:
100px
}
.avue-keyboard--default
.akeyboard-mobileKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#f0f0f0
;
border-radius
:
5px
;
padding
:
11px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys
{
height
:
25px
;
min-width
:
25px
;
padding
:
0
10px
;
border-radius
:
3px
;
background
:
#fff
;
display
:
inline-block
;
line-height
:
25px
;
text-align
:
center
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
3px
2px
2px
;
cursor
:
pointer
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
;
font-size
:
10px
}
.avue-keyboard--green
.akeyboard-keyboard-keys
,
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys
{
display
:
inline-block
;
text-align
:
center
;
cursor
:
pointer
;
-webkit-user-select
:
none
;
-ms-user-select
:
none
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys
:hover
{
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys-
⇦
,
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys-
⇧
{
width
:
25px
;
background-color
:
#999faf
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys-Space
{
height
:
28px
;
width
:
100px
;
line-height
:
28px
;
margin-left
:
55px
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys-Enter
{
height
:
28px
;
width
:
55px
;
line-height
:
28px
;
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--default
.akeyboard-mobileKeyboard-keys-focus
{
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--green
.akeyboard-keyboard
{
height
:
100%
;
width
:
100%
;
background
:
#030
;
border-radius
:
5px
;
padding
:
9px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--green
.akeyboard-keyboard-innerKeys
{
text-align
:
center
}
.avue-keyboard--green
.akeyboard-keyboard-keys
{
height
:
40px
;
min-width
:
40px
;
padding
:
0
10px
;
border-radius
:
5px
;
background
:
#cc9
;
line-height
:
40px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
4px
;
-moz-user-select
:
none
;
user-select
:
none
}
.avue-keyboard--green
.akeyboard-keyboard-keys
:hover
,
.avue-keyboard--green
.keyboard-keyboard-keys-focus
{
background
:
#693
;
color
:
#fff
}
.avue-keyboard--green
.akeyboard-keyboard-keys-Delete
,
.avue-keyboard--green
.akeyboard-keyboard-keys-Tab
{
width
:
80px
}
.avue-keyboard--green
.akeyboard-keyboard-keys-Caps
{
width
:
77px
}
.avue-keyboard--green
.akeyboard-keyboard-keys-Enter
{
width
:
90px
}
.avue-keyboard--green
.akeyboard-keyboard-keys-Shift
{
width
:
106px
}
.avue-keyboard--green
.akeyboard-keyboard-keys-Space
{
width
:
350px
}
.avue-keyboard--green
.akeyboard-keyboard-fixedBottomCenter
{
width
:
100%
!important
;
height
:
auto
!important
;
position
:
fixed
;
bottom
:
0
;
left
:
0
;
border-radius
:
0
!important
}
.avue-keyboard--green
.akeyboard-numberKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#030
;
border-radius
:
5px
;
padding
:
10px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--green
.akeyboard-numberKeyboard-keys-Enter
{
height
:
40px
;
width
:
100px
}
.avue-keyboard--green
.akeyboard-mobileKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#030
;
border-radius
:
5px
;
padding
:
11px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys
{
height
:
25px
;
min-width
:
25px
;
padding
:
0
10px
;
border-radius
:
3px
;
background
:
#cc9
;
line-height
:
25px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
3px
2px
2px
;
-moz-user-select
:
none
;
user-select
:
none
;
font-size
:
10px
}
.avue-keyboard--dark
.akeyboard-keyboard-keys
,
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys
{
-webkit-user-select
:
none
;
-ms-user-select
:
none
;
color
:
#fff
;
display
:
inline-block
;
text-align
:
center
;
cursor
:
pointer
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys
:hover
{
background
:
#693
!important
;
color
:
#fff
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys-
⇦
,
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys-
⇧
{
width
:
25px
;
background-color
:
#999faf
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys-Space
{
height
:
28px
;
width
:
100px
;
line-height
:
28px
;
margin-left
:
55px
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys-Enter
{
height
:
28px
;
width
:
55px
;
line-height
:
28px
;
background
:
#693
!important
;
color
:
#fff
}
.avue-keyboard--green
.akeyboard-mobileKeyboard-keys-focus
{
background
:
#693
!important
;
color
:
#fff
}
.avue-keyboard--dark
.akeyboard-keyboard
{
height
:
100%
;
width
:
100%
;
background
:
#000
;
color
:
#fff
;
border-radius
:
5px
;
padding
:
9px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--dark
.akeyboard-keyboard-innerKeys
{
text-align
:
center
}
.avue-keyboard--dark
.akeyboard-keyboard-keys
{
height
:
40px
;
min-width
:
40px
;
padding
:
0
10px
;
border-radius
:
5px
;
background
:
#393d49
;
line-height
:
40px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
4px
;
-moz-user-select
:
none
;
user-select
:
none
}
.avue-keyboard--dark
.akeyboard-keyboard-keys
:hover
,
.avue-keyboard--dark
.keyboard-keyboard-keys-focus
{
background
:
#1e9fff
}
.avue-keyboard--dark
.akeyboard-keyboard-keys-Delete
,
.avue-keyboard--dark
.akeyboard-keyboard-keys-Tab
{
width
:
80px
}
.avue-keyboard--dark
.akeyboard-keyboard-keys-Caps
{
width
:
77px
}
.avue-keyboard--dark
.akeyboard-keyboard-keys-Enter
{
width
:
90px
}
.avue-keyboard--dark
.akeyboard-keyboard-keys-Shift
{
width
:
106px
}
.avue-keyboard--dark
.akeyboard-keyboard-keys-Space
{
width
:
350px
}
.avue-keyboard--dark
.akeyboard-keyboard-fixedBottomCenter
{
width
:
100%
!important
;
height
:
auto
!important
;
position
:
fixed
;
bottom
:
0
;
left
:
0
;
border-radius
:
0
!important
}
.avue-keyboard--dark
.akeyboard-numberKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#000
;
border-radius
:
5px
;
padding
:
10px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--dark
.akeyboard-numberKeyboard-keys-Enter
{
height
:
40px
;
width
:
100px
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#000
;
border-radius
:
5px
;
padding
:
11px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys
{
height
:
25px
;
min-width
:
25px
;
padding
:
0
10px
;
border-radius
:
3px
;
background
:
#393d49
;
line-height
:
25px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
3px
2px
2px
;
-moz-user-select
:
none
;
user-select
:
none
;
font-size
:
10px
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys
:hover
{
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys-
⇦
,
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys-
⇧
{
width
:
25px
;
background-color
:
#999faf
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys-Space
{
height
:
28px
;
width
:
100px
;
line-height
:
28px
;
margin-left
:
55px
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys-Enter
{
height
:
28px
;
width
:
55px
;
line-height
:
28px
;
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--dark
.akeyboard-mobileKeyboard-keys-focus
{
background
:
#1e9fff
!important
;
color
:
#fff
}
.avue-keyboard--classic
.akeyboard-keyboard
{
height
:
100%
;
width
:
100%
;
background
:
#2f4056
;
border-radius
:
5px
;
padding
:
9px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--classic
.akeyboard-keyboard-innerKeys
{
text-align
:
center
}
.avue-keyboard--classic
.akeyboard-keyboard-keys
{
height
:
40px
;
min-width
:
40px
;
padding
:
0
10px
;
border-radius
:
5px
;
background
:
#fff
;
display
:
inline-block
;
line-height
:
40px
;
text-align
:
center
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
4px
;
cursor
:
pointer
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
}
.avue-keyboard--classic
.akeyboard-keyboard-keys
:hover
,
.avue-keyboard--classic
.keyboard-keyboard-keys-focus
{
background
:
#c2c2c2
;
color
:
#fff
}
.avue-keyboard--classic
.akeyboard-keyboard-keys-Delete
,
.avue-keyboard--classic
.akeyboard-keyboard-keys-Tab
{
width
:
80px
}
.avue-keyboard--classic
.akeyboard-keyboard-keys-Caps
{
width
:
77px
}
.avue-keyboard--classic
.akeyboard-keyboard-keys-Enter
{
width
:
90px
}
.avue-keyboard--classic
.akeyboard-keyboard-keys-Shift
{
width
:
106px
}
.avue-keyboard--classic
.akeyboard-keyboard-keys-Space
{
width
:
350px
}
.avue-keyboard--classic
.akeyboard-keyboard-fixedBottomCenter
{
width
:
100%
!important
;
height
:
auto
!important
;
position
:
fixed
;
bottom
:
0
;
left
:
0
;
border-radius
:
0
!important
}
.avue-keyboard--classic
.akeyboard-numberKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#2f4056
;
border-radius
:
5px
;
padding
:
10px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--classic
.akeyboard-numberKeyboard-keys-Enter
{
height
:
40px
;
width
:
100px
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard
{
height
:
100%
;
width
:
100%
;
background
:
#2f4056
;
border-radius
:
5px
;
padding
:
11px
5px
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys
{
height
:
25px
;
min-width
:
25px
;
padding
:
0
10px
;
border-radius
:
3px
;
background
:
#fff
;
display
:
inline-block
;
line-height
:
25px
;
text-align
:
center
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
margin
:
3px
2px
2px
;
cursor
:
pointer
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
;
font-size
:
10px
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys
:hover
{
background
:
#c2c2c2
!important
;
color
:
#fff
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys-
⇦
,
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys-
⇧
{
width
:
25px
;
background-color
:
#999faf
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys-Space
{
height
:
28px
;
width
:
100px
;
line-height
:
28px
;
margin-left
:
55px
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys-Enter
{
height
:
28px
;
width
:
55px
;
line-height
:
28px
;
background
:
#c2c2c2
!important
;
color
:
#fff
}
.avue-keyboard--classic
.akeyboard-mobileKeyboard-keys-focus
{
background
:
#c2c2c2
!important
;
color
:
#fff
}
.avue-notice__item
{
padding
:
12px
24px
;
border-bottom
:
1px
solid
#e8eaec
;
cursor
:
pointer
;
-webkit-transition
:
background-color
.2s
ease-in-out
;
transition
:
background-color
.2s
ease-in-out
;
text-align
:
left
;
display
:
flex
;
-webkit-box-align
:
start
;
-ms-flex-align
:
start
;
align-items
:
flex-start
}
.avue-notice__content
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
}
.avue-notice__img
{
width
:
38px
;
height
:
38px
;
border-radius
:
100%
;
margin-top
:
5px
;
margin-right
:
10px
;
overflow
:
hidden
}
.avue-notice__img
img
{
width
:
100%
;
height
:
100%
}
.avue-notice__name
{
line-height
:
25px
}
.avue-notice__title
{
font-size
:
14px
;
font-weight
:
400
;
line-height
:
22px
;
color
:
#515a6e
;
margin-bottom
:
4px
}
.avue-notice__tag
{
float
:
right
;
margin-top
:
2px
}
.avue-notice__subtitle
{
font-size
:
12px
;
color
:
#808695
}
.avue-notice__more
{
cursor
:
pointer
;
color
:
#2d8cf0
;
text-align
:
center
;
padding
:
10px
0
}
.avue-array__item
{
margin-bottom
:
5px
}
.ant-form-item
,
.ant-form-item-with-help
{
margin-bottom
:
0
}
.avue-array__input
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
}
.avue-array__input
.el-input
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
}
.avue-array__input
.el-button
{
margin-left
:
5px
}
.ant-btn
+
.ant-btn
{
margin-left
:
10px
}
.ant-calendar-picker
,
.ant-time-picker
{
width
:
100%
}
.ant-form
{
padding-right
:
50px
}
.ant-form-item-control
{
line-height
:
34px
}
.ant-form-item
{
height
:
60px
}
.avue-data-tabs
.item
{
position
:
relative
;
margin
:
15px
;
padding
:
12px
;
height
:
160px
;
border-radius
:
4px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
overflow
:
hidden
;
color
:
#fff
}
.avue-data-tabs
.item
a
{
color
:
#fff
}
.avue-data-tabs
.item-header
{
position
:
relative
}
.avue-data-tabs
.item-header
>
p
{
color
:
#fff
;
margin
:
0
;
font-size
:
14px
}
.avue-data-tabs
.item-header
>
span
{
position
:
absolute
;
right
:
0
;
top
:
0
;
padding
:
2px
8px
;
border-radius
:
4px
;
font-size
:
12px
;
background
:
rgba
(
255
,
255
,
255
,
.3
)}
.avue-data-tabs
.item-body
.h2
{
color
:
#fff
;
margin
:
0
;
font-size
:
32px
;
line-height
:
60px
;
font-weight
:
700
}
.avue-data-tabs
.item-footer
{
padding-top
:
8px
;
line-height
:
20px
}
.avue-data-tabs
.item-footer
>
span
{
font-size
:
10px
}
.avue-data-tabs
.item-footer
>
p
{
color
:
#fff
;
margin
:
0
;
font-size
:
12px
}
.avue-data-tabs
.item-tip
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
position
:
absolute
;
width
:
80px
;
height
:
80px
;
bottom
:
10px
;
right
:
10px
;
border
:
2px
solid
#fff
;
border-radius
:
100%
;
font-size
:
48px
;
-webkit-transform
:
rotate
(
-40deg
);
transform
:
rotate
(
-40deg
);
opacity
:
.1
}
.data-box
.item
a
,
.data-box
.item-icon
{
display
:
-webkit-box
;
display
:
-ms-flexbox
}
.avue-data-cardText
.item
{
padding
:
20px
25px
;
margin
:
10px
20px
;
background
:
#F8F8F8
;
border-radius
:
6px
;
-webkit-box-shadow
:
2px
2px
20px
#ccc
;
box-shadow
:
2px
2px
20px
#ccc
}
.avue-data-cardText
.item-header
{
position
:
relative
}
.avue-data-cardText
.item-header
i
{
font-size
:
26px
;
color
:
#009688
}
.avue-data-cardText
.item-header
a
{
font-size
:
16px
;
margin-left
:
6px
;
position
:
absolute
;
bottom
:
4px
}
.avue-data-cardText
.item-content
{
margin-top
:
8
PX
;
font-size
:
14px
;
line-height
:
22px
;
color
:
#333
}
.avue-data-cardText
.item-footer
{
position
:
relative
}
.avue-data-cardText
.item-footer
span
:nth-child
(
1
)
{
color
:
#777
;
font-size
:
12px
;
text-overflow
:
ellipsis
;
word-break
:
break-all
}
.avue-data-cardText
.item-footer
span
:nth-child
(
2
)
{
color
:
#CCC
;
font-size
:
12px
;
line-height
:
24px
;
position
:
absolute
;
right
:
0
}
.data-box
.item
,
.data-card
.item
{
position
:
relative
;
overflow
:
hidden
}
.data-box
.item
{
margin
:
0
auto
10px
;
width
:
96%
;
height
:
100px
;
border-radius
:
5px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.data-box
.item
:hover
.item-text
{
top
:
0
}
.data-box
.item
a
{
display
:
flex
}
.data-box
.item-icon
{
width
:
100px
;
height
:
100px
;
color
:
#fff
;
text-align
:
center
;
line-height
:
100px
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
display
:
flex
}
.data-box
.item-icon
i
{
font-size
:
48px
!important
}
.data-box
.item-info
{
border-radius
:
0
5px
5px
0
;
border
:
1px
solid
#eee
;
border-left
:
none
;
background-color
:
#fff
;
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
-ms-flex-direction
:
column
;
flex-direction
:
column
}
.data-box
.item-info
.title
{
font-size
:
30px
;
line-height
:
40px
;
text-align
:
center
}
.data-box
.item-info
.info
{
color
:
#999
;
font-size
:
14px
;
text-align
:
center
}
.data-progress
.item
{
margin
:
10px
}
.data-progress
.item-header
{
margin-bottom
:
10px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
}
.data-progress
.item-count
{
line-height
:
26px
;
font-size
:
26px
;
color
:
#666
}
.data-progress
.item-title
{
color
:
#999
;
font-size
:
14px
}
.data-icons
.item
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
width
:
90%
;
margin
:
10px
15px
}
.data-icons
.item-icon
{
margin-top
:
3px
;
margin-right
:
0
!important
;
text-align
:
center
}
.data-icons
.item-icon
>
i
{
font-size
:
46px
!important
}
.data-icons
.item-info
{
text-align
:
center
;
padding
:
10px
0
}
.data-icons
.item-info
>
span
{
display
:
block
;
padding
:
5px
0
;
color
:
#999
;
font-size
:
12px
}
.data-icons
.item-info
.count
{
font-size
:
20px
;
line-height
:
25px
}
.data-icons
.item--easy
{
-ms-flex-direction
:
column
;
flex-direction
:
column
}
.data-icons
.item--easy
>
.item-icon
{
margin
:
0
}
.data-icons
.item--easy
>
.item-info
{
margin-top
:
-15px
}
.data-icons
.item--easy
>
.item-info
>
span
{
font-size
:
14px
}
.data-card
.item
{
margin
:
0
auto
50px
;
width
:
230px
;
height
:
340px
;
border-radius
:
5px
;
border-color
:
#fff
;
border-width
:
1px
;
border-style
:
solid
}
.data-card
.item
:hover
.item-text
{
top
:
0
}
.data-card
.item-img
{
width
:
100%
;
border-radius
:
5px
5px
0
0
}
.data-card
.item-text
{
position
:
absolute
;
top
:
150px
;
padding
:
20px
15px
;
width
:
100%
;
height
:
340px
;
overflow
:
auto
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
border-radius
:
0
0
5px
5px
;
opacity
:
.9
;
-webkit-transition
:
top
.4s
;
transition
:
top
.4s
}
.data-card
.item-text
>
p
{
font-size
:
12px
;
line-height
:
25px
;
text-indent
:
2em
}
.avue-data-display
.item
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-ms-flex-direction
:
column
;
flex-direction
:
column
;
margin
:
5px
0
;
text-align
:
center
}
.avue-data-display
.count
{
display
:
block
;
margin
:
8px
0
15px
;
font-weight
:
700
;
font-size
:
32px
;
color
:
#15A0FF
}
.avue-data-display
.title
{
line-height
:
32px
;
color
:
#999
}
.avue-data-display
.splitLine
{
display
:
block
;
margin
:
0
auto
;
width
:
24px
;
height
:
1px
;
background
:
#9B9B9B
}
.avue-data-imgtext
.item
{
position
:
relative
;
height
:
340px
;
width
:
240px
;
margin
:
10px
auto
50px
;
border-radius
:
5px
;
-webkit-box-shadow
:
2px
2px
20px
#ccc
;
box-shadow
:
2px
2px
20px
#ccc
}
.avue-data-imgtext
.item-header
img
{
width
:
100%
;
height
:
170px
;
background
:
red
;
border-radius
:
5px
5px
0
0
}
.avue-data-imgtext
.item-content
{
padding
:
10px
15px
;
color
:
#333
!important
}
.avue-data-imgtext
.item-content
span
{
font-size
:
20px
}
.avue-data-imgtext
.item-content
:hover
span
{
color
:
#1890ff
}
.avue-data-imgtext
.item-content
p
{
font-size
:
14px
;
height
:
60px
;
margin
:
6px
0
;
overflow
:
hidden
}
.avue-data-imgtext
.item-footer
{
padding
:
10px
15px
;
position
:
relative
}
.avue-data-imgtext
.item-footer
img
{
height
:
20px
;
width
:
20px
;
border-radius
:
50%
}
.avue-data-imgtext
.item-footer
div
{
display
:
inline-block
}
.avue-data-imgtext
.item-footer
div
li
,
.avue-data-imgtext
.item-footer
div
ul
{
padding
:
0
;
margin
:
0
0
0
-8px
;
list-style
:
none
;
display
:
inline-block
;
border
:
2px
solid
#fff
;
border-radius
:
50%
}
.avue-data-imgtext
.item-footer
div
:nth-child
(
1
)
{
font-size
:
14px
;
color
:
#ccc
!important
}
.avue-data-imgtext
.item-footer
div
:nth-child
(
2
)
{
position
:
absolute
;
right
:
15px
}
.avue-data-operatext
.item
{
margin
:
5px
10px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
position
:
relative
;
border-radius
:
3px
;
background
:
#fff
;
-webkit-box-shadow
:
0
1px
1px
rgba
(
0
,
0
,
0
,
.1
);
box-shadow
:
0
1px
1px
rgba
(
0
,
0
,
0
,
.1
)}
.avue-data-operatext
.item
a
{
color
:
#333
}
.avue-data-operatext
.item-header
{
padding
:
20px
20px
60px
;
border-top-right-radius
:
3px
;
border-top-left-radius
:
3px
;
color
:
#fff
;
background-position
:
center
center
}
.avue-data-operatext
.item-title
{
margin-top
:
0
;
margin-bottom
:
5px
;
font-size
:
25px
;
font-weight
:
300
;
text-shadow
:
0
1px
1px
rgba
(
0
,
0
,
0
,
.2
);
display
:
block
}
.avue-data-operatext
.item-subtitle
{
font-size
:
14px
;
font-weight
:
400
}
.avue-data-operatext
.item-content
{
border-top
:
1px
solid
#f4f4f4
;
padding
:
10px
10px
20px
;
background-color
:
#fff
;
border-radius
:
0
0
3px
3px
}
.avue-data-operatext
.item-img
{
margin
:
-60px
auto
5px
;
width
:
90px
;
height
:
90px
;
border-radius
:
100%
;
overflow
:
hidden
;
border
:
4px
solid
#fff
}
.avue-data-operatext
.item-img
img
{
width
:
100%
;
height
:
100%
}
.avue-data-operatext
.item-list
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
}
.avue-data-operatext
.item-row
{
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
width
:
33.33%
;
text-align
:
center
}
.avue-data-operatext
.item-label
{
margin-bottom
:
5px
;
display
:
block
;
font-weight
:
600
;
font-size
:
16px
}
.avue-data-operatext
.item-value
{
display
:
block
;
font-weight
:
300
;
text-transform
:
uppercase
}
.avue-data-rotate
.item
{
margin
:
5px
10px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
position
:
relative
;
color
:
#fff
;
border-radius
:
3px
}
.avue-data-rotate
.item-box
{
padding
:
10px
20px
}
.avue-data-rotate
.item-count
{
margin-bottom
:
5px
;
font-size
:
38px
;
white-space
:
nowrap
;
font-weight
:
300
;
display
:
block
}
.avue-data-rotate
.item-title
{
font-size
:
15px
}
.avue-data-rotate
.item-icon
{
-webkit-transition
:
all
.3s
linear
;
transition
:
all
.3s
linear
;
position
:
absolute
;
top
:
20px
;
right
:
20px
;
font-size
:
65px
;
color
:
rgba
(
0
,
0
,
0
,
.15
)}
.avue-data-rotate
.item-icon
:hover
{
font-size
:
70px
}
.avue-data-rotate
.item-more
{
position
:
relative
;
text-align
:
center
;
padding
:
3px
0
;
color
:
#fff
;
color
:
rgba
(
255
,
255
,
255
,
.8
);
display
:
block
;
z-index
:
10
;
font-size
:
14px
;
letter-spacing
:
2px
;
background
:
rgba
(
0
,
0
,
0
,
.1
);
text-decoration
:
none
}
.avue-data-pay
.item
{
margin
:
0
auto
;
padding-bottom
:
16px
;
width
:
80%
;
position
:
relative
;
border-radius
:
4px
;
background-color
:
#fff
;
min-height
:
670px
;
-webkit-box-shadow
:
1px
2px
10px
#eee
;
box-shadow
:
1px
2px
10px
#eee
}
.avue-data-pay
.top
{
width
:
100%
;
height
:
6px
;
position
:
absolute
;
top
:
0
;
left
:
0
;
border-radius
:
4px
4px
0
0
}
.avue-data-pay
.header
{
margin-bottom
:
40px
;
text-align
:
center
}
.avue-data-pay
.title
{
text-align
:
center
;
padding
:
20px
0
10px
;
font-size
:
20px
;
font-weight
:
200
}
.avue-data-pay
.money
span
{
margin-right
:
5px
;
font-size
:
14px
}
.avue-data-pay
.money
.b
{
margin-right
:
2px
;
font-size
:
20px
;
font-weight
:
700
}
.avue-data-pay
.money
s
{
margin-right
:
3px
;
font-size
:
12px
}
.avue-data-pay
.money
em
{
font-size
:
14px
;
font-style
:
normal
}
.avue-data-pay
.img
{
width
:
50px
}
.avue-data-pay
.line
{
width
:
60%
;
height
:
1px
;
background
:
rgba
(
150
,
150
,
150
,
.1
);
margin
:
20px
auto
}
.avue-data-pay
.btn
{
display
:
block
;
width
:
120px
;
height
:
32px
;
line-height
:
32px
;
margin
:
0
auto
;
text-align
:
center
;
border-radius
:
32px
;
color
:
#fff
;
cursor
:
pointer
;
-webkit-transition
:
opacity
.2s
ease-in-out
;
transition
:
opacity
.2s
ease-in-out
}
.avue-data-pay
.list-item
{
list-style
:
none
;
padding-left
:
20px
;
margin-bottom
:
12px
;
color
:
#666
;
font-size
:
14px
}
.avue-data-pay
.list-item
a
{
color
:
#666
}
.avue-data-pay
.list-item-icon
{
color
:
#515a6e
;
margin-right
:
8px
}
.avue-data-pay
.list-item--link
{
font-size
:
12px
;
color
:
#2d8cf0
}
.avue-data-pay
.list-item--no
,
.avue-data-pay
.list-item--no
+
span
{
color
:
#c5c8ce
}
.data-price
.item
{
margin
:
0
20px
;
text-align
:
center
;
-webkit-box-shadow
:
2px
3px
15px
#eee
;
box-shadow
:
2px
3px
15px
#eee
}
.data-price
.item
:hover
{
border
:
1px
solid
#00a680
}
.data-price
.item
:hover
.body
{
color
:
#fff
;
background-color
:
#00a680
}
.data-price
.item
:hover
.body
::after
{
border-top-color
:
#00a680
}
.data-price
.item
:hover
.list
{
color
:
#00a680
}
.data-price
.item
:hover
.price
{
color
:
#fff
}
.data-price
.item
.title
{
height
:
80px
;
line-height
:
80px
;
font-size
:
18px
;
color
:
#333
}
.data-price
.item
.body
,
.data-price
.item
.price
{
margin
:
0
0
50px
;
line-height
:
120px
;
height
:
120px
;
color
:
#6b6b6b
}
.data-price
.item
.price
{
padding
:
0
8px
;
font-size
:
42px
}
.data-price
.item
.append
{
font-size
:
16px
}
.data-price
.item
.body
{
position
:
relative
;
padding
:
0
;
background-color
:
#f4f4f4
;
font-size
:
42px
}
.data-price
.item
.body
::before
{
content
:
"¥"
;
font-size
:
16px
;
font-weight
:
400
}
.data-price
.item
.body
::after
{
content
:
''
;
position
:
absolute
;
display
:
block
;
width
:
0
;
height
:
0
;
bottom
:
-15px
;
left
:
50%
;
-webkit-transform
:
translateX
(
-50%
);
transform
:
translateX
(
-50%
);
border-color
:
#f4f4f4
transparent
transparent
;
border-style
:
solid
;
border-width
:
20px
30px
0
}
.data-price
.item
.list
{
padding-bottom
:
30px
;
color
:
#666
;
font-size
:
14px
}
.avue-data-panel
.item
{
padding
:
0
30px
;
margin
:
0
20px
;
cursor
:
pointer
;
height
:
108px
;
font-size
:
12px
;
position
:
relative
;
overflow
:
hidden
;
color
:
#666
;
background
:
#fff
;
-webkit-box-shadow
:
4px
4px
40px
rgba
(
0
,
0
,
0
,
.05
);
box-shadow
:
4px
4px
40px
rgba
(
0
,
0
,
0
,
.05
);
border-color
:
rgba
(
0
,
0
,
0
,
.05
);
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
justify
;
-ms-flex-pack
:
justify
;
justify-content
:
space-between
}
.avue-data-panel
.item-icon
{
font-size
:
52px
}
.avue-data-panel
.item-info
{
text-align
:
center
}
.avue-data-panel
.item-title
{
line-height
:
18px
;
color
:
rgba
(
0
,
0
,
0
,
.45
);
font-size
:
16px
;
margin-bottom
:
12px
}
.avue-data-panel
.item-count
{
font-size
:
20px
}
[
class
^=
avue-data-
]
a
,[
class
^=
data-
]
a
{
text-decoration
:
none
}
@-webkit-keyframes
rotating
{
from
{
-webkit-transform
:
rotate
(
0
);
transform
:
rotate
(
0
)}
to
{
-webkit-transform
:
rotate
(
360deg
);
transform
:
rotate
(
360deg
)}}
@keyframes
rotating
{
from
{
-webkit-transform
:
rotate
(
0
);
transform
:
rotate
(
0
)}
to
{
-webkit-transform
:
rotate
(
360deg
);
transform
:
rotate
(
360deg
)}}
.avue-echart-tabs
.el-select
{
width
:
100%
}
.avue-echart-tabs
.el-input
,
.avue-echart-tabs
.el-select
,
.avue-echart-tabs
input
{
height
:
100%
}
.avue-echart-tabs
.el-input
{
font-size
:
inherit
}
.avue-echart-tabs__list
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-ms-flex-pack
:
distribute
;
justify-content
:
space-around
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
height
:
100%
}
.avue-echart-pie__title
,
.avue-echart-tabs__item
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
height
:
100%
;
width
:
100%
}
.avue-echart-tabs__icon
{
margin-right
:
10px
}
.avue-echart-tabs__item
{
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-echart-iframe
iframe
{
border
:
none
;
width
:
100%
;
height
:
100%
}
.avue-echart-text
{
overflow
:
hidden
}
.avue-echart-text__box
{
width
:
100%
;
height
:
100%
}
.avue-echart-text__text
{
display
:
block
;
text-decoration
:
none
}
.avue-echart-swiper
.el-carousel
,
.avue-echart-swiper
.el-carousel__container
{
height
:
100%
}
.avue-echart-swiper
img
{
width
:
100%
;
height
:
100%
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
user-select
:
none
}
.avue-echart-pie__title
{
position
:
absolute
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-echart-slide
.swiper-container
{
width
:
100%
;
height
:
100%
}
.avue-echart-slide
.swiper-slide
{
text-align
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-echart-table__body
{
position
:
relative
;
overflow
:
hidden
}
.avue-echart-table__menu
{
position
:
absolute
;
left
:
0
}
.avue-echart-table__menu
i
{
margin-right
:
20px
;
font-size
:
24px
}
.avue-echart-table__allview
{
opacity
:
.9
}
.avue-echart-table__allview
.el-table--enable-row-hover
.el-table__body
tr
:hover
>
td
{
background-color
:
#333
}
.avue-echart-table__tr
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
}
.avue-echart-table__tr--line
{
-webkit-transition
:
all
.5s
;
transition
:
all
.5s
;
width
:
100%
;
position
:
absolute
}
.avue-echart-table__td
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-echart-table__header
{
margin-bottom
:
20px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
end
;
-ms-flex-pack
:
end
;
justify-content
:
flex-end
;
border-bottom-width
:
0
}
.avue-echart-table__index
{
margin
:
0
auto
;
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
text-align
:
center
;
color
:
#fff
;
background-color
:
#144280
;
border-radius
:
100%
}
.avue-echart-table__index--1
{
background-color
:
#fdd706
}
.avue-echart-table__index--2
,
.avue-echart-table__index--3
{
background-color
:
#1f94f4
}
.avue-echart-table__item
{
display
:
inline-block
;
padding
:
5px
10px
;
border-style
:
solid
;
border-width
:
1px
}
.avue-echart-table__item--active
{
color
:
#fff
!important
}
.avue-echart-table
table
{
width
:
100%
;
border-width
:
1px
;
border-style
:
solid
}
.avue-echart-table
td
,
.avue-echart-table
th
{
border-width
:
0
0
1px
;
border-style
:
solid
;
font-size
:
16px
;
font-weight
:
300
}
.avue-echart-table--line
,
.avue-echart-table--line
td
,
.avue-echart-table--line
th
{
border
:
none
!important
}
.avue-echart-header
{
padding
:
10px
}
.avue-echart-header--center
{
text-align
:
center
}
.avue-echart-header--right
{
text-align
:
right
}
.avue-echart-header__title
{
margin-right
:
5px
;
font-size
:
18px
;
font-weight
:
400
;
color
:
#333
;
text-decoration
:
none
}
.avue-echart-header__info
{
display
:
inline-block
}
.avue-echart-progress
{
position
:
relative
}
.avue-echart-progress__text--circle
{
position
:
absolute
;
width
:
100%
;
top
:
50%
;
-webkit-transform
:
translate
(
0
,
-50%
);
transform
:
translate
(
0
,
-50%
);
text-align
:
center
}
.avue-echart-progress__text--line
{
margin-bottom
:
20px
;
position
:
relative
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-echart-progress__text--line
p
{
margin-right
:
5px
}
.avue-echart-img--rotate
{
-webkit-animation
:
rotating
0s
linear
infinite
;
animation
:
rotating
0s
linear
infinite
}
.avue-echart-flop
.el-tooltip
{
width
:
100%
}
.avue-echart-flop__count
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
}
.avue-echart-flop__item
{
font-family
:
"Microsoft Yahei"
;
font-size
:
28px
;
font-weight
:
400
;
color
:
#fff
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
display
:
inline-block
}
.avue-echart-flop__item--img
{
padding
:
0
5px
;
border-image-slice
:
10
16
15
10
fill
;
border-width
:
10px
16px
15px
10px
;
border-style
:
solid
}
.avue-echart-flop__item--none
{
padding
:
0
!important
;
border-width
:
0
!important
;
background-color
:
transparent
!important
}
.avue-echart-map
{
position
:
relative
}
.avue-echart-map__bg
{
position
:
absolute
;
top
:
0
;
left
:
0
}
.avue-echart-map__box
{
position
:
relative
}
.avue-echart-map__location
{
position
:
absolute
;
background-color
:
red
;
width
:
10px
;
height
:
10px
}
.avue-echart-map__location
:hover
{
background-color
:
green
}
.avue-form__mobile
{
padding-bottom
:
20px
;
background-color
:
#f0f0f0
}
.avue-form__mobile-menu
{
margin-top
:
30px
;
padding
:
0
5px
}
.avue-form__mobile
.van-cell
{
padding
:
10px
15px
10px
20px
}
.avue-form__mobile
.van-cell--required
::before
{
top
:
12px
}
.avue-form__mobile
.van-cell
:not
(
:last-child
)
::after
{
display
:
none
}
.avue-form__mobile
.van-cell-group
{
background-color
:
transparent
}
.avue-form__mobile
.van-switch
{
display
:
block
;
float
:
right
}
.avue-form__mobile
.van-cell__title
{
width
:
80px
;
-webkit-box-flex
:
inherit
;
-ms-flex
:
inherit
;
flex
:
inherit
}
.avue-form__mobile
.van-cell__value
{
font-size
:
13px
;
color
:
#333
}
.avue-upload__mobile-upload
{
margin-top
:
-8px
;
width
:
70px
;
height
:
70px
;
background-color
:
#fbfdff
;
border
:
1px
dashed
#ccc
;
border-radius
:
3px
;
line-height
:
80px
;
text-align
:
center
}
.avue-upload__mobile-upload
i
{
color
:
#666
;
font-size
:
24px
}
.avue-upload__mobile-list
{
padding
:
10px
20px
;
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-ms-flex-wrap
:
wrap
;
flex-wrap
:
wrap
}
.avue-upload__mobile-menu
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-align
:
center
;
-ms-flex-align
:
center
;
align-items
:
center
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
;
position
:
absolute
;
width
:
100%
;
height
:
100%
;
left
:
0
;
top
:
0
;
color
:
#fff
;
background-color
:
rgba
(
0
,
0
,
0
,
.2
);
z-index
:
1024
;
border-radius
:
5px
}
.avue--detail
.el-radio
,
.avue--detail
.el-radio
.el-radio__inner
,
.avue-canvas
{
display
:
none
}
.avue-upload__mobile-menu
i
{
margin
:
0
5px
}
.avue-upload__mobile-item
{
position
:
relative
;
margin-right
:
8px
;
margin-bottom
:
10px
;
width
:
70px
;
height
:
70px
;
border
:
1px
solid
#eee
;
border-radius
:
5px
}
.avue-upload__mobile-item
img
{
width
:
100%
;
height
:
100%
;
border-radius
:
5px
}
body
{
font-family
:
Chinese
Quote
,
-apple-system
,
BlinkMacSystemFont
,
Segoe
UI
,
PingFang
SC
,
Hiragino
Sans
GB
,
Microsoft
YaHei
,
Helvetica
Neue
,
Helvetica
,
Arial
,
sans-serif
,
Apple
Color
Emoji
,
Segoe
UI
Emoji
,
Segoe
UI
Symbol
}
*
{
outline
:
0
}
.avue-ghost
{
opacity
:
.5
;
background
:
#c8ebfb
}
.avue--disabled
{
color
:
#ccc
}
.avue--detail
.el-input.is-disabled
.el-input__inner
,
.avue--detail
.el-range-editor.is-disabled
,
.avue--detail
.el-range-editor.is-disabled
input
,
.avue--detail
.el-textarea.is-disabled
.el-textarea__inner
{
color
:
#606266
;
background-color
:
#fff
}
.avue--detail
.hover-row
td
{
background-color
:
#fff
!important
}
.avue--detail
.el-input-group__append
,
.avue--detail
.el-input-group__prepend
{
background-color
:
transparent
;
border
:
none
}
.avue--detail
.el-checkbox__input.is-disabled
+
span
.el-checkbox__label
{
color
:
#606266
}
.avue--detail
.el-input__inner
,
.avue--detail
.el-textarea__inner
{
border
:
none
}
.avue--detail
.el-input__inner
::-webkit-input-placeholder
,
.avue--detail
.el-textarea__inner
::-webkit-input-placeholder
{
color
:
transparent
!important
}
.avue--detail
.el-input__inner
::-moz-placeholder
,
.avue--detail
.el-textarea__inner
::-moz-placeholder
{
color
:
transparent
!important
}
.avue--detail
.el-input__inner
::-ms-input-placeholder
,
.avue--detail
.el-textarea__inner
::-ms-input-placeholder
{
color
:
transparent
!important
}
.avue--detail
.el-radio
.is-disabled.is-checked
,
.avue--detail
.el-radio.is-checked
{
display
:
inline-block
;
color
:
#606266
}
.avue--detail
.el-radio
.is-disabled.is-checked
.el-radio__label
,
.avue--detail
.el-radio.is-checked
.el-radio__label
{
padding-left
:
14px
;
color
:
#606266
;
font-weight
:
400
;
font-size
:
14px
}
.avue--detail
.el-checkbox
{
display
:
none
}
.avue--detail
.el-checkbox
.is-disabled.is-checked
,
.avue--detail
.el-checkbox.is-checked
{
display
:
inline-block
;
color
:
#606266
}
.avue--detail
.el-checkbox
.is-disabled.is-checked
.el-checkbox__label
,
.avue--detail
.el-checkbox.is-checked
.el-checkbox__label
{
padding-left
:
14px
;
color
:
#606266
;
font-weight
:
400
;
font-size
:
14px
}
.avue--detail
.el-checkbox
.el-checkbox__inner
,
.avue--detail
.el-form-item.is-required
:not
(
.is-no-asterisk
)
.el-form-item__label-wrap
>
.el-form-item__label
:before
,
.avue--detail
.el-form-item.is-required
:not
(
.is-no-asterisk
)>
.el-form-item__label
:before
,
.avue--detail
.el-input__suffix
{
display
:
none
}
.avue--view
.el-input.is-disabled
.el-input__inner
,
.avue--view
.el-textarea.is-disabled
.el-textarea__inner
{
background-color
:
#fff
;
border-color
:
#dcdfe6
;
color
:
#606266
}
.avue-grid
{
position
:
absolute
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
100%
;
background-size
:
20px
20px
,
20px
20px
;
background-image
:
linear-gradient
(
rgba
(
0
,
0
,
0
,
.1
)
1px
,
transparent
0
),
linear-gradient
(
90deg
,
rgba
(
0
,
0
,
0
,
.1
)
1px
,
transparent
0
)}
.avue-mask
{
position
:
fixed
;
top
:
0
;
bottom
:
0
;
left
:
0
;
right
:
0
;
background-color
:
rgba
(
55
,
55
,
55
,
.6
);
height
:
100%
;
z-index
:
1000
}
.avue--card
{
-webkit-box-shadow
:
2px
1px
8px
rgba
(
0
,
0
,
0
,
.15
);
box-shadow
:
2px
1px
8px
rgba
(
0
,
0
,
0
,
.15
);
border-radius
:
5px
}
.avue-dialog
.el-dialog
{
border-radius
:
2px
}
.avue-dialog
.el-dialog__title
,
.avue-dialog
.el-drawer__header
{
color
:
rgba
(
0
,
0
,
0
,
.85
);
font-weight
:
500
;
word-wrap
:
break-word
}
.el-select-dropdown
.el-tree-node__label
,
.el-select-dropdown__item.selected
{
font-weight
:
400
}
.avue-dialog
.el-drawer__header
{
margin
:
0
;
min-height
:
20px
;
padding
:
16px
10px
16px
24px
;
border-bottom
:
1px
solid
#f0f0f0
}
.avue-dialog
.el-drawer__body
{
padding
:
30px
10px
}
.avue-dialog
.el-dialog__footer
{
padding
:
10px
16px
;
border-top
:
1px
solid
#f0f0f0
}
.avue-dialog
.el-dialog__header
{
padding
:
16px
24px
;
border-bottom
:
1px
solid
#f0f0f0
}
.avue-dialog
iframe
{
width
:
100%
;
height
:
100%
;
border
:
0
;
overflow
:
hidden
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
}
.avue-queue--block
{
display
:
inline-block
}
.avuex-opacity
{
opacity
:
0
}
.avuex-opacity--active
{
opacity
:
1
}
.avue-cell
{
border-top
:
1px
solid
#eee
;
background-color
:
#fff
}
.avue-cell-group
{
padding-top
:
10px
}
.avue-cell--row
{
margin-bottom
:
10px
;
border-bottom
:
1px
solid
#eee
}
.avue-cell__tags
{
margin-right
:
10px
}
.avue-cell__tip
{
margin-left
:
10px
;
font-size
:
12px
;
color
:
#999
}
.avue-cell__title
{
margin
:
0
;
padding
:
5px
15px
5px
20px
;
font-size
:
14px
;
color
:
#323233
;
line-height
:
24px
}
.avue-cell__title
+
.van-cell-group
{
padding-left
:
5px
}
.avue-cell__title--required
{
position
:
relative
}
.avue-cell__title--required
::before
{
content
:
'*'
;
position
:
absolute
;
left
:
7px
;
top
:
7px
;
font-size
:
14px
;
color
:
#f44
}
.fade-enter-active
,
.fade-leave-active
{
-webkit-transition
:
opacity
.3s
;
transition
:
opacity
.3s
}
.fade-enter
,
.fade-leave-to
{
opacity
:
0
}
.avue-input__content
{
position
:
relative
}
.avue-input__tip
{
position
:
absolute
;
bottom
:
5px
;
right
:
20px
;
color
:
#999
}
.avue-input__tip--input
{
top
:
1px
;
right
:
28px
;
z-index
:
2
}
.avue-crud
.avue-input-number
,
.avue-crud
.el-cascader
,
.avue-crud
.el-date-editor.el-input
,
.avue-crud
.el-date-editor.el-input__inner
,
.avue-crud
.el-select
,
.avue-form
.avue-input-number
,
.avue-form
.el-cascader
,
.avue-form
.el-date-editor.el-input
,
.avue-form
.el-date-editor.el-input__inner
,
.avue-form
.el-select
{
width
:
100%
!important
}
.avue-crud
.el-input-number
.el-input__inner
,
.avue-form
.el-input-number
.el-input__inner
{
text-align
:
left
}
.avue-crud
.avue-crud__left
.el-button
+
.el-button
,
.avue-crud
.avue-crud__right
.el-button
+
.el-button
,
.avue-form
.avue-crud__left
.el-button
+
.el-button
,
.avue-form
.avue-crud__right
.el-button
+
.el-button
{
margin-left
:
0
}
.avue-crud
.avue-crud__left
.el-button
,
.avue-crud
.avue-crud__right
.el-button
,
.avue-form
.avue-crud__left
.el-button
,
.avue-form
.avue-crud__right
.el-button
{
margin-right
:
8px
;
margin-bottom
:
8px
}
.avue-crud
.el-tree--highlight-current
.el-tree-node.is-current
>
.el-tree-node__content
,
.avue-form
.el-tree--highlight-current
.el-tree-node.is-current
>
.el-tree-node__content
{
color
:
#409EFF
}
.avue-crud
.el-tree-node__label
,
.avue-form
.el-tree-node__label
{
margin-left
:
8px
}
.avue-crud
.el-input__inner
,
.avue-form
.el-input__inner
{
height
:
38px
;
line-height
:
38px
}
.avue-crud
.el-range-editor--small
,
.avue-form
.el-range-editor--small
{
height
:
32px
;
line-height
:
32px
}
.avue-crud
.el-range-editor--mini
,
.avue-form
.el-range-editor--mini
{
height
:
28px
;
line-height
:
28px
}
.avue-crud
.el-input--small
input
,
.avue-form
.el-input--small
input
{
height
:
32px
;
line-height
:
32px
}
.avue-crud
.el-input--mini
input
,
.avue-form
.el-input--mini
input
{
height
:
28px
;
line-height
:
28px
}
.avue-crud
.el-table--medium
td
,
.avue-form
.el-table--medium
td
{
padding
:
7px
0
!important
}
.avue-crud
.el-tooltip__popper
,
.avue-form
.el-tooltip__popper
{
max-width
:
60%
}
.avue-crud
.el-dropdown-menu__item
,
.avue-form
.el-dropdown-menu__item
{
line-height
:
25px
}
.avue-crud
.el-table-filter__list
,
.avue-form
.el-table-filter__list
{
width
:
100%
;
height
:
300px
;
overflow-y
:
auto
}
.el-form-item--mini
.el-color-picker--mini
,
.el-form-item--mini
.el-color-picker--mini
.el-color-picker__trigger
{
width
:
23px
;
height
:
23px
}
.el-dropdown-menu
.el-button--text
{
width
:
100%
!important
}
.el-pagination__editor.el-input
.el-input__inner
{
line-height
:
28px
}
.el-drawer__body
{
height
:
100%
}
.el-checkbox
:last-of-type
{
margin-right
:
8px
}
.is-error
.el-input-number__decrease
,
.is-error
.el-input-number__increase
,
.is-success
.el-input-number__decrease
,
.is-success
.el-input-number__increase
{
right
:
25px
!important
}
.el-input-number__decrease
,
.el-input-number__increase
{
background-color
:
transparent
;
border-left
:
none
!important
;
color
:
#c0c4cc
!important
;
font-size
:
16px
!important
}
.el-input-number__increase
{
border-bottom
:
none
!important
}
.el-table
colgroup
.gutter
,
.el-table
th
.gutter
{
display
:
table-cell
!important
}
.el-transfer
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.el-tree-node.is-current
>
.el-tree-node__content
{
color
:
#409eff
;
background-color
:
#F5F7FA
}
.el-transfer-panel__item
{
width
:
100%
}
.el-select-dropdown
.el-scrollbar
.el-scrollbar__view
.el-select-dropdown__item
{
height
:
auto
;
padding
:
0
}
.el-select-dropdown
.el-scrollbar
.el-scrollbar__view
.el-select-dropdown__item
>
span
{
padding
:
0
20px
}
.el-select-dropdown
ul
li
>>>
.el-tree
.el-tree-node__content
{
height
:
auto
;
padding
:
0
20px
}
.el-select-dropdown
.el-tree
>>>
.is-current
.el-tree-node__label
{
color
:
#409EFF
;
font-weight
:
700
}
.el-select-dropdown
.el-tree
>>>
.is-current
.el-tree-node__children
.el-tree-node__label
{
color
:
#606266
;
font-weight
:
400
}
.el-form-item.is-error
.avue-dynamic
{
border
:
1px
solid
#F56C6C
;
border-radius
:
3px
}
.avue-theme--dark
body
{
background
:
#000
}
.avue-theme--dark
.el-pagination.is-background
.btn-next
,
.avue-theme--dark
.el-pagination.is-background
.btn-prev
,
.avue-theme--dark
.el-pagination.is-background
.el-pager
li
{
background-color
:
#151518
;
color
:
#525256
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
border
:
1px
solid
#313135
}
.avue-theme--dark
.el-pagination.is-background
.el-pager
li
:not
(
.disabled
)
.active
{
background-color
:
#151518
;
border-color
:
#409EFF
}
.avue-theme--dark
.el-cascader-menu
{
border-right
:
solid
1px
#313135
}
.avue-theme--dark
.el-select-dropdown.is-multiple
.el-select-dropdown__item.selected
,
.avue-theme--dark
.el-select-dropdown.is-multiple
.el-select-dropdown__item.selected.hover
{
background-color
:
#151518
}
.avue-theme--dark
.el-cascader__dropdown
,
.avue-theme--dark
.el-input__inner
,
.avue-theme--dark
.el-range-input
,
.avue-theme--dark
.el-select-dropdown
{
background-color
:
#151518
;
color
:
#999
;
border
:
1px
solid
#313135
}
.avue-theme--dark
.el-cascader__dropdown
:hover
,
.avue-theme--dark
.el-input__inner
:hover
,
.avue-theme--dark
.el-range-input
:hover
,
.avue-theme--dark
.el-select-dropdown
:hover
{
border-color
:
#409EFF
}
.avue-theme--dark
.el-cascader__dropdown
::-webkit-input-placeholder
,
.avue-theme--dark
.el-input__inner
::-webkit-input-placeholder
,
.avue-theme--dark
.el-range-input
::-webkit-input-placeholder
,
.avue-theme--dark
.el-select-dropdown
::-webkit-input-placeholder
{
color
:
#525256
}
.avue-theme--dark
.el-cascader__dropdown
::-moz-placeholder
,
.avue-theme--dark
.el-input__inner
::-moz-placeholder
,
.avue-theme--dark
.el-range-input
::-moz-placeholder
,
.avue-theme--dark
.el-select-dropdown
::-moz-placeholder
{
color
:
#525256
}
.avue-theme--dark
.el-cascader__dropdown
:-moz-placeholder
,
.avue-theme--dark
.el-input__inner
:-moz-placeholder
,
.avue-theme--dark
.el-range-input
:-moz-placeholder
,
.avue-theme--dark
.el-select-dropdown
:-moz-placeholder
{
color
:
#525256
}
.avue-theme--dark
.el-cascader__dropdown
:-ms-input-placeholder
,
.avue-theme--dark
.el-input__inner
:-ms-input-placeholder
,
.avue-theme--dark
.el-range-input
:-ms-input-placeholder
,
.avue-theme--dark
.el-select-dropdown
:-ms-input-placeholder
{
color
:
#525256
}
.avue-theme--dark
.el-form-item__label
{
color
:
#9a9a9f
}
.avue-theme--dark
.el-switch__core
{
background
:
#151518
;
border-color
:
#151518
}
.avue-theme--dark
.avue-group__item
{
background-color
:
#000
}
.avue-theme--dark
.el-table--border
,
.avue-theme--dark
.el-table--group
{
border-color
:
#313135
}
.avue-theme--dark
.el-table__body
tr
.current-row
>
td
,
.avue-theme--dark
.el-table__body
tr
.hover-row
>
td
{
background-color
:
#151518
}
.avue-theme--dark
.el-table--border
td
,
.avue-theme--dark
.el-table--border
th
,
.avue-theme--dark
.el-table__body-wrapper
.el-table--border.is-scrolling-left
~
.el-table__fixed
{
border-color
:
#999
}
.avue-theme--dark
.avue-crud
.el-table
th
,
.avue-theme--dark
.el-table
,
.avue-theme--dark
.el-table
th
,
.avue-theme--dark
.el-table
tr
,
.avue-theme--dark
.el-table__fixed-footer-wrapper
tbody
td
,
.avue-theme--dark
.el-table__footer-wrapper
tbody
td
,
.avue-theme--dark
.el-table__header-wrapper
tbody
td
{
background-color
:
#151518
;
color
:
#999
;
border-color
:
#999
}
@media
screen
and
(
max-width
:
992px
){
.el-dialog__footer
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
;
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.el-button
+
.el-button
{
margin-left
:
0
}
.avue-upload__avatar
,
.avue-upload__icon
,
.el-upload--picture-card
,
.el-upload-list--picture-card
.el-upload-list__item
{
width
:
100px
;
height
:
100px
;
line-height
:
100px
}
.avue-crud
.el-form-item
,
.avue-crud__title
.avue-date__radio
,
.avue-crud__title
.avue-date__radio
.el-radio-group
.el-radio-button__inner
,
.avue-crud__title
.avue-date__radio
.el-radio-group
label
{
width
:
100%
}
.avue-tip
{
display
:
none
}
.avue-crud__menu
,
.avue-crud__title
{
display
:
block
!important
}
.avue-crud
.el-form-item__label
{
-webkit-box-flex
:
1
;
-ms-flex
:
1
;
flex
:
1
}
.avue-crud
.el-form-item__content
{
-webkit-box-flex
:
5
;
-ms-flex
:
5
;
flex
:
5
}
.avue-crud__searchMenu
{
text-align
:
center
}
.avue-crud__title
p
{
margin-bottom
:
20px
}
.avue-crud__title
.avue-date__group
{
-webkit-box-pack
:
center
;
-ms-flex-pack
:
center
;
justify-content
:
center
}
.avue-crud__title
.avue-date__date
{
display
:
none
}
.avue-crud__title
.avue-date__radio
.el-radio-group
{
display
:
-webkit-box
;
display
:
-ms-flexbox
;
display
:
flex
}
.avue-crud__title
.avue-date__radio
.el-radio-button
:last-child
.el-radio-button__inner
{
border-radius
:
0
4px
4px
0
;
border-right
:
1px
solid
#dcdfe6
}}
#nprogress
{
pointer-events
:
none
}
#nprogress
.bar
{
background
:
#29d
;
position
:
fixed
;
z-index
:
1031
;
top
:
0
;
left
:
0
;
width
:
100%
;
height
:
2px
}
#nprogress
.peg
{
display
:
block
;
position
:
absolute
;
right
:
0
;
width
:
100px
;
height
:
100%
;
-webkit-box-shadow
:
0
0
10px
#29d
,
0
0
5px
#29d
;
box-shadow
:
0
0
10px
#29d
,
0
0
5px
#29d
;
opacity
:
1
;
-webkit-transform
:
rotate
(
3deg
)
translate
(
0
,
-4px
);
transform
:
rotate
(
3deg
)
translate
(
0
,
-4px
)}
#nprogress
.spinner
{
display
:
block
;
position
:
fixed
;
z-index
:
1031
;
top
:
15px
;
right
:
15px
}
#nprogress
.spinner-icon
{
width
:
18px
;
height
:
18px
;
-webkit-box-sizing
:
border-box
;
box-sizing
:
border-box
;
border
:
2px
solid
transparent
;
border-top-color
:
#29d
;
border-left-color
:
#29d
;
border-radius
:
50%
;
-webkit-animation
:
nprogress-spinner
.4s
linear
infinite
;
animation
:
nprogress-spinner
.4s
linear
infinite
}
.nprogress-custom-parent
{
overflow
:
hidden
;
position
:
relative
}
.nprogress-custom-parent
#nprogress
.bar
,
.nprogress-custom-parent
#nprogress
.spinner
{
position
:
absolute
}
@-webkit-keyframes
nprogress-spinner
{
0
%
{
-webkit-transform
:
rotate
(
0
)}
100
%
{
-webkit-transform
:
rotate
(
360deg
)}}
@keyframes
nprogress-spinner
{
0
%
{
-webkit-transform
:
rotate
(
0
);
transform
:
rotate
(
0
)}
100
%
{
-webkit-transform
:
rotate
(
360deg
);
transform
:
rotate
(
360deg
)}}
\ No newline at end of file
src/app-register.ts
浏览文件 @
2f857f0a
...
...
@@ -13,7 +13,6 @@ import { utilServiceRegister } from '@/utilservice/util-service-register';
import
{
entityServiceRegister
}
from
'@/service/entity-service-register'
;
import
{
counterServiceRegister
}
from
'@/counter/counter-service-register'
;
import
{
codeListRegister
}
from
'@codelist/codelist-register'
;
import
{
messageServiceRegister
}
from
'@/message/message-service-register'
;
import
InputBox
from
'./components/input-box/input-box.vue'
import
AppKeepAlive
from
'./components/app-keep-alive/app-keep-alive.vue'
...
...
@@ -88,15 +87,11 @@ import ActionTimeline from './components/action-timeline/action-timeline.vue'
import
CronEditor
from
'./components/cron-editor/cron-editor.vue'
import
AppMessagePopover
from
'./components/app-message-popover/app-message-popover.vue'
import
AppPanelField
from
'./components/app-panel-field/app-panel-field.vue'
import
AppPanel
Button
from
'./components/app-panel-button/app-panel-button
.vue'
import
AppPanel
Item
from
'./components/app-panel-item/app-panel-item
.vue'
import
AppDepartmentPersonnel
from
'./components/app-department-personnel/app-department-personnel.vue'
import
DiskFileUpload
from
'./components/disk-file-upload/disk-file-upload.vue'
import
AvueCustomForm
from
'./components/avue-custom-form/avue-custom-form.vue'
import
DiskImageUpload
from
'./components/disk-image-upload/disk-image-upload.vue'
import
AppFormPart
from
'./components/app-form-part/app-form-part.vue'
import
AppAlert
from
'./components/app-alert/app-alert.vue'
import
AppAlertGroup
from
'./components/app-alert-group/app-alert-group.vue'
import
AppRawItem
from
'./components/app-rawitem/app-rawitem.vue'
// 全局挂载UI实体服务注册中心
window
[
'uiServiceRegister'
]
=
uiServiceRegister
;
...
...
@@ -110,8 +105,6 @@ window['entityServiceRegister'] = entityServiceRegister;
window
[
'counterServiceRegister'
]
=
counterServiceRegister
;
// 全局挂载代码表服务注册中心
window
[
'codeListRegister'
]
=
codeListRegister
;
// 全局挂载视图消息服务注册中心
window
[
'messageServiceRegister'
]
=
messageServiceRegister
;
export
const
AppComponents
=
{
install
(
v
:
any
,
opt
:
any
)
{
...
...
@@ -125,7 +118,7 @@ export const AppComponents = {
v
.
prototype
.
$viewTool
=
ViewTool
;
v
.
prototype
.
$uiActionTool
=
UIActionTool
;
v
.
component
(
'app-department-personnel'
,
AppDepartmentPersonnel
);
v
.
component
(
'app-panel-
button'
,
AppPanelButton
);
v
.
component
(
'app-panel-
item'
,
AppPanelItem
);
v
.
component
(
'app-panel-field'
,
AppPanelField
);
v
.
component
(
'app-full-scren'
,
AppFullScren
);
v
.
component
(
'app-lock-scren'
,
AppLockScren
);
...
...
@@ -205,9 +198,5 @@ export const AppComponents = {
v
.
component
(
'disk-file-upload'
,
DiskFileUpload
);
v
.
component
(
'avue-custom-form'
,
AvueCustomForm
);
v
.
component
(
'disk-image-upload'
,
DiskImageUpload
);
v
.
component
(
'app-form-part'
,
AppFormPart
);
v
.
component
(
'app-alert'
,
AppAlert
);
v
.
component
(
'app-alert-group'
,
AppAlertGroup
);
v
.
component
(
'app-rawitem'
,
AppRawItem
);
},
};
\ No newline at end of file
src/components/app-alert-group/app-alert-group.vue
已删除
100644 → 0
浏览文件 @
26fcf093
<
template
>
<div
class=
"app-alert-group"
>
<template
v-for=
"(item, index) in items"
>
<app-alert
:key=
"index"
:tag=
"item.tag"
:position=
"item.position"
/>
</
template
>
</div>
</template>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
}
from
'vue-property-decorator'
;
import
ViewMessageGroupService
from
'@/message/view-message-group-service'
;
@
Component
({})
export
default
class
AppAlertGroup
extends
Vue
{
/**
* 视图消息组服务
*
* @type {any}
* @memberof AppAlertGroup
*/
public
viewMessageGroupService
=
ViewMessageGroupService
.
getInstance
();
/**
* 视图消息组tag
*
* @type {any}
* @memberof AppAlertGroup
*/
@
Prop
()
infoGroup
:
any
;
/**
* 视图消息组显示位置
*
* @type {any}
* @memberof AppAlertGroup
*/
@
Prop
()
position
:
any
;
/**
* 当前位置视图消息集合
*
* @type {any}
* @memberof AppAlertGroup
*/
public
items
:
any
[]
=
[];
/**
* Vue生命周期
*
* @memberof AppAlertGroup
*/
public
created
()
{
if
(
this
.
infoGroup
)
{
this
.
getItems
();
}
}
/**
* 获取当前位置视图消息集合
*
* @memberof AppAlertGroup
*/
public
getItems
()
{
this
.
viewMessageGroupService
.
getViewMessageDetailsByTag
(
this
.
infoGroup
).
then
((
response
:
any
)
=>
{
if
(
response
)
{
response
.
forEach
((
data
:
any
)
=>
{
if
(
this
.
position
&&
Object
.
is
(
this
.
position
,
data
.
position
))
{
this
.
items
.
push
(
data
);
}
if
(
Object
.
is
(
'TOP'
,
this
.
position
)
&&
Object
.
is
(
'POPUP'
,
data
.
position
))
{
this
.
items
.
push
(
data
);
}
})
}
}).
catch
(
error
=>
{
console
.
log
(
error
);
});
}
}
</
script
>
\ No newline at end of file
src/components/app-alert/app-alert.less
已删除
100644 → 0
浏览文件 @
26fcf093
.el-message {
.el-message__content {
.title {
padding-bottom: 10px;
}
}
}
.app-alert-group {
.el-alert {
margin: 5px 0px;
}
}
\ No newline at end of file
src/components/app-alert/app-alert.vue
已删除
100644 → 0
浏览文件 @
26fcf093
<
template
>
<div
class=
"app-alert"
>
<template
v-if=
"items && items.length > 0"
>
<template
v-for=
"(item, index) in items"
>
<template
v-if=
"item.hasContent && !Object.is('POPUP', item.position)"
>
<el-alert
:key=
"index"
v-show=
"item.showState"
:title=
"item.title"
:type=
"item.type"
:closable=
"item.closable"
@
close=
"alertClose(item)"
>
<template
slot
>
<span
v-html=
"item.content"
></span>
</
template
>
</el-alert>
</template>
</template>
</template>
</div>
</template>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
}
from
'vue-property-decorator'
;
import
ViewMessageService
from
'@/message/view-message-service'
;
@
Component
({})
export
default
class
AppAlert
extends
Vue
{
/**
* 视图消息标识
*
* @type {any}
* @memberof AppAlert
*/
@
Prop
()
tag
:
any
;
/**
* 显示位置
*
* @type {any}
* @memberof AppAlert
*/
@
Prop
()
position
:
any
;
/**
* 视图消息对象
*
* @type {any}
* @memberof AppAlert
*/
public
items
:
any
[]
=
[];
/**
* 视图消息服务
*
* @type {ViewMessageService}
* @memberof AppAlert
*/
public
viewMessageService
=
ViewMessageService
.
getInstance
();
/**
* Vue生命周期
*
* @memberof AppAlert
*/
public
created
()
{
this
.
getData
().
then
((
result
:
any
)
=>
{
if
(
!
this
.
items
)
{
return
;
}
})
}
/**
* 获取视图消息对象
*
* @memberof AppAlert
*/
public
async
getData
()
{
let
response
:
any
=
await
this
.
viewMessageService
.
getViewMessageByTag
(
this
.
tag
,
null
,
null
)
if
(
response
&&
response
.
length
>
0
)
{
response
.
forEach
((
item
:
any
)
=>
{
let
tempData
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
item
));
if
(
!
tempData
.
type
)
{
tempData
.
type
=
"info"
;
}
// 判断是否存在内容
this
.
handleItemHasContent
(
tempData
);
tempData
.
closable
=
tempData
.
isEnableRemove
;
let
flag
=
this
.
handleItemCloseMode
(
tempData
);
this
.
handleItemPosition
(
tempData
,
flag
);
this
.
items
.
push
(
tempData
);
});
}
}
/**
* 处理数据项是否存在内容
*
* @memberof AppAlert
*/
public
handleItemHasContent
(
data
:
any
)
{
data
.
hasContent
=
true
;
if
(
!
data
.
title
&&
!
data
.
content
)
{
data
.
hasContent
=
false
;
}
}
/**
* 处理数据关闭模式
*
* @memberof AppAlert
*/
public
handleItemCloseMode
(
data
:
any
)
{
let
flag
=
true
;
data
.
showState
=
true
;
if
(
data
.
closeMode
||
data
.
closeMode
==
0
)
{
if
(
data
.
closeMode
==
1
)
{
const
id
=
this
.
$store
.
getters
.
getViewMessage
(
data
.
codename
);
if
(
id
)
{
data
.
showState
=
false
;
flag
=
false
;
}
}
if
(
data
.
closeMode
==
0
)
{
data
.
closable
=
false
;
}
}
return
flag
;
}
/**
* 处理数据显示位置
*
* @memberof AppAlert
*/
public
handleItemPosition
(
data
:
any
,
flag
:
boolean
)
{
if
(
data
.
position
)
{
if
(
flag
&&
Object
.
is
(
'POPUP'
,
data
.
position
))
{
const
h
=
this
.
$createElement
;
data
.
showState
=
false
;
if
(
Object
.
is
(
'HTML'
,
data
.
messageType
)
&&
data
.
hasMessageTemp
)
{
setTimeout
(()
=>
{
this
.
$message
({
customClass
:
data
.
codename
+
","
+
data
.
closeMode
,
message
:
h
(
'div'
,{},
[
h
(
'p'
,
data
.
title
),
h
(
'p'
,{
domProps
:{
innerHTML
:
data
.
content
}})
]),
type
:
data
.
type
,
showClose
:
data
.
closable
,
onClose
:
this
.
alertClose
,
})
},
0
)
}
else
{
setTimeout
(()
=>
{
this
.
$message
({
customClass
:
data
.
codename
+
","
+
data
.
closeMode
,
message
:
h
(
'div'
,{},
[
h
(
'p'
,
data
.
title
),
h
(
'p'
,
data
.
content
)
]),
type
:
data
.
type
,
showClose
:
data
.
closable
,
onClose
:
this
.
alertClose
,
})
},
0
)
}
}
}
}
/**
* 视图消息关闭
*
* @memberof AppAlert
*/
public
alertClose
(
data
:
any
)
{
if
(
data
.
customClass
)
{
let
tempArr
:
any
[]
=
data
.
customClass
.
toString
().
split
(
','
);
if
(
tempArr
&&
tempArr
.
length
>
0
)
{
if
(
Object
.
is
(
"1"
,
tempArr
[
1
]))
{
const
args
=
{
tag
:
tempArr
[
0
],
id
:
data
.
customClass
};
this
.
$store
.
commit
(
'addViewMessage'
,
args
);
}
}
}
if
(
data
.
closeMode
&&
data
.
closeMode
==
1
)
{
const
args
=
{
tag
:
data
.
codename
,
id
:
data
.
id
};
this
.
$store
.
commit
(
'addViewMessage'
,
args
);
}
}
}
</
script
>
<
style
lang=
"less"
>
@import './app-alert.less';
</
style
>
\ No newline at end of file
src/components/app-checkbox-list/app-checkbox-list.vue
浏览文件 @
2f857f0a
...
...
@@ -8,7 +8,7 @@
<
script
lang=
"ts"
>
import
{
Component
,
Vue
,
Prop
,
Model
,
Watch
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
@
Component
({
})
...
...
src/components/app-data-upload/app-data-upload.vue
浏览文件 @
2f857f0a
...
...
@@ -48,7 +48,7 @@
<
script
lang=
"ts"
>
import
XLSX
from
'xlsx'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
import
EntityService
from
'@/service/entity-service'
;
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
'vue-property-decorator'
;
import
{
Environment
}
from
'@/environments/environment'
;
...
...
src/components/app-department-personnel/app-department-personnel.vue
浏览文件 @
2f857f0a
...
...
@@ -13,7 +13,7 @@
import
{
Component
,
Vue
,
Prop
,
Watch
}
from
'vue-property-decorator'
;
import
{
Subject
}
from
'rxjs'
;
import
{
Http
}
from
'../../utils'
;
import
CodeListService
from
"@/codelist/codelist-service"
;
import
CodeListService
from
'@/service/app/codelist-service'
;
@
Component
({})
export
default
class
AppDepartmentPersonnel
extends
Vue
{
...
...
src/components/app-department-select/app-department-select.vue
浏览文件 @
2f857f0a
...
...
@@ -6,7 +6,7 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@/codelist/codelist-service"
;
import
CodeListService
from
'@/service/app/codelist-service'
;
@
Component
({
})
export
default
class
AppDepartmentSelect
extends
Vue
{
...
...
src/components/app-form-druipart/app-form-druipart.vue
浏览文件 @
2f857f0a
...
...
@@ -370,7 +370,7 @@ export default class AppFormDRUIPart extends Vue {
}
}
});
//
this.refreshDRUIPart();
this
.
refreshDRUIPart
();
}
/**
...
...
src/components/app-form-part/app-form-part.less
已删除
100644 → 0
浏览文件 @
26fcf093
.app-form-part {
display: block;
}
\ No newline at end of file
src/components/app-form-part/app-form-part.vue
已删除
100644 → 0
浏览文件 @
26fcf093
<
template
>
<div
class=
'app-form-part'
v-if=
"loadState"
>
<avue-form
:option=
"formOption"
v-model=
"formVal"
></avue-form>
</div>
</
template
>
<
script
lang =
'ts'
>
import
{
Vue
,
Component
,
Prop
,
Watch
}
from
'vue-property-decorator'
;
import
{
Subject
,
Subscription
}
from
"rxjs"
;
@
Component
({
})
export
default
class
AppFormPart
extends
Vue
{
/**
* 应用名称
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
appCodeName
!
:
string
;
/**
* 实体名称
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
deCodeName
!
:
string
;
/**
* 表单代码标识
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
formCodeName
!
:
string
;
/**
* 表单成员标识
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
formDetailCodeName
!
:
string
;
/**
* 当前表单项名称
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
name
!
:
string
;
/**
* 导航上下文
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
context
!
:
any
;
/**
* 导航参数
*
* @type {string}
* @memberof AppFormPart
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 表单数据
*
* @type {any}
* @memberof AppFormPart
*/
@
Prop
()
public
data
:
any
;
/**
* 表单状态对象
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
@
Prop
()
public
formState
!
:
Subject
<
any
>
;
/**
* 订阅对象
*
* @protected
* @type {(Subscription | undefined)}
* @memberof AppFormPart
*/
public
formStateEvent
:
Subscription
|
undefined
;
/**
* 远程地址
*
* @protected
* @type {(Subscription | undefined)}
* @memberof AppFormPart
*/
public
remoteUrl
:
string
=
`/getFormModel/
${
this
.
appCodeName
}
/
${
this
.
deCodeName
}
/
${
this
.
formCodeName
}
/
${
this
.
formDetailCodeName
}
`
;
/**
* 动态表单配置对象
*
* @type {*}
* @memberof AppFormPart
*/
public
formOption
:
any
;
/**
* 当前动态表单绑定值
*
* @type {*}
* @memberof AppFormPart
*/
public
curFormValue
:
any
=
{};
/**
* 获取动态表单值对象
*
* @type {*}
* @memberof AppFormPart
*/
get
formVal
(){
return
this
.
curFormValue
;
}
/**
* 设置动态表单值对象
*
* @type {*}
* @memberof AppFormPart
*/
set
formVal
(
data
:
any
){
this
.
$emit
(
"change"
,{
name
:
this
.
name
,
value
:
data
});
}
/**
* 加载数据状态
*
* @type {*}
* @memberof AppFormPart
*/
public
loadState
:
boolean
=
false
;
/**
* 初始化组件(vue生命周期)
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
public
created
(){
if
(
this
.
formState
)
{
this
.
formStateEvent
=
this
.
formState
.
subscribe
(({
type
,
data
})
=>
{
if
(
Object
.
is
(
"load"
,
type
)){
this
.
loadRemoteFormModel
().
then
((
result
:
any
)
=>
{
this
.
initStateData
(
result
);
})
}
});
}
}
/**
* 初始化状态数据
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
public
initStateData
(
modelData
:
any
){
this
.
computedFormVal
(
modelData
);
this
.
formOption
=
modelData
;
this
.
loadState
=
true
;
}
/**
* 计算动态表单绑定数据
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
public
computedFormVal
(
modelData
:
any
){
this
.
curFormValue
=
{};
if
(
modelData
&&
modelData
.
column
&&
modelData
.
column
.
length
>
0
){
modelData
.
column
.
forEach
((
element
:
any
)
=>
{
Object
.
assign
(
this
.
curFormValue
,{[
element
.
prop
]:
null
});
});
}
if
(
Object
.
keys
(
this
.
curFormValue
).
length
>
0
){
Object
.
keys
(
this
.
curFormValue
).
forEach
((
item
:
any
)
=>
{
if
(
this
.
data
&&
this
.
data
[
item
]){
this
.
curFormValue
[
item
]
=
this
.
data
[
item
];
}
})
}
}
/**
* 加载动态表单数据模型
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
public
loadRemoteFormModel
(){
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
this
.
$http
.
get
(
this
.
remoteUrl
).
then
((
res
:
any
)
=>
{
if
(
res
.
status
&&
res
.
status
==
200
){
let
result
:
any
=
res
.
data
;
resolve
(
result
);
}
else
{
console
.
warn
(
"加载动态表单模型数据异常"
);
}
}).
catch
((
error
:
any
)
=>
{
console
.
warn
(
"加载动态表单模型数据异常"
);
})
})
}
/**
* 销毁组件(vue生命周期)
*
* @type {Subject<any>}
* @memberof AppFormPart
*/
public
destroy
(){
if
(
this
.
formStateEvent
){
this
.
formStateEvent
.
unsubscribe
();
}
}
}
</
script
>
<
style
lang =
"less"
>
@import './app-form-part.less';
</
style
>
\ No newline at end of file
src/components/app-group-select/app-group-select.vue
浏览文件 @
2f857f0a
...
...
@@ -21,7 +21,7 @@
<
script
lang=
"ts"
>
import
{
Component
,
Vue
,
Prop
,
Watch
}
from
'vue-property-decorator'
;
import
{
Subject
}
from
'rxjs'
;
import
CodeListService
from
"@/codelist/codelist-service"
;
import
CodeListService
from
'@/service/app/codelist-service'
;
@
Component
({})
export
default
class
AppGroupSelect
extends
Vue
{
...
...
src/components/app-message-popover/app-message-popover.less
浏览文件 @
2f857f0a
.
app-message-popover
{
.
item
{
height: 24px;
line-height: 24px;
padding: 0 5px 0 0;
...
...
src/components/app-message-popover/app-message-popover.vue
浏览文件 @
2f857f0a
<
template
>
<!-- 消息弹出框绘制开始 -->
<el-badge
:is-dot=
"showIsDot"
class=
"
app-message-popover
"
>
<el-badge
:is-dot=
"showIsDot"
class=
"
item
"
>
<el-popover
placement=
"bottom"
trigger=
"click"
...
...
src/components/app-org-select/app-org-select.vue
浏览文件 @
2f857f0a
...
...
@@ -6,7 +6,7 @@
<
script
lang =
'ts'
>
import
{
Vue
,
Component
,
Prop
,
Watch
}
from
"vue-property-decorator"
;
import
{
Http
}
from
'@/utils'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
import
{
observable
}
from
'rxjs'
;
@
Component
({})
export
default
class
AppOrgSelect
extends
Vue
{
...
...
src/components/app-panel-item/app-panel-item.less
0 → 100644
浏览文件 @
2f857f0a
.app-panel-item{
.app-panel-item-rawitem{
padding-right: 10px;
}
}
\ No newline at end of file
src/components/app-panel-
button/app-panel-button
.vue
→
src/components/app-panel-
item/app-panel-item
.vue
浏览文件 @
2f857f0a
<
template
>
<div
class=
"app-panel-button"
>
<div
class=
"app-panel-item"
>
<div
v-if=
"Object.is(itemType,'BUTTON')"
>
<Button
type=
"primary"
long
@
click=
"onClick"
>
<i
v-if=
"icon"
:class=
"icon"
></i>
<span
v-if=
"showCaption"
:class=
"lableStyle"
>
{{
caption
?
caption
:
''
}}
</span>
</Button>
</div>
<div
v-if=
"Object.is(itemType,'RAWITEM')"
>
<i
v-if=
"icon"
:class=
"icon"
></i>
<span
v-if=
"caption"
class=
"app-panel-item-rawitem"
>
{{
caption
}}
</span>
<div
:class=
"contentStyle"
>
<slot></slot>
</div>
</div>
</div>
</
template
>
...
...
@@ -11,7 +20,15 @@
import
{
Vue
,
Component
,
Prop
,
Watch
}
from
"vue-property-decorator"
;
@
Component
({})
export
default
class
AppPanelButton
extends
Vue
{
export
default
class
AppPanelItem
extends
Vue
{
/**
* 面板成员类型
*
* @type {string}
* @memberof AppPanelItem
*/
@
Prop
()
public
itemType
!
:
string
;
/**
* 图标
...
...
@@ -45,6 +62,22 @@ export default class AppPanelButton extends Vue {
*/
@
Prop
()
public
lableStyle
?:
string
;
/**
* 内容样式
*
* @type {boolean}
* @memberof AppPanelItem
*/
@
Prop
()
public
contentStyle
?:
string
;
/**
* 部件样式
*
* @type {boolean}
* @memberof AppPanelItem
*/
@
Prop
()
public
partsStyle
?:
string
;
/**
* 点击按钮
*
...
...
@@ -58,5 +91,5 @@ export default class AppPanelButton extends Vue {
}
</
script
>
<
style
lang=
'less'
>
@import "./app-panel-item.less";
</
style
>
\ No newline at end of file
src/components/app-radio-group/app-radio-group.vue
浏览文件 @
2f857f0a
...
...
@@ -7,7 +7,7 @@
</
template
>
<
script
lang =
'ts'
>
import
{
Component
,
Vue
,
Prop
,
Model
,
Watch
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
@
Component
({})
export
default
class
AppRadioGroup
extends
Vue
{
...
...
src/components/app-rawitem/app-rawitem.vue
已删除
100644 → 0
浏览文件 @
26fcf093
<
template
>
<div>
<span
v-if=
"caption"
>
{{
caption
}}
</span>
<div
:class=
"contentStyle"
:style=
"sizeStyle"
>
<template
v-if=
"Object.is(contentType,'RAW')"
>
{{
rawContent
?
rawContent
:
''
}}
</
template
>
<
template
v-else-if=
"Object.is(contentType,'HTML')"
>
{{
htmlContent
?
htmlContent
:
''
}}
</
template
>
<
template
v-else-if=
"Object.is(contentType,'IMAGE')"
>
<i
:class=
"imageClass ? imageClass : ''"
></i>
</
template
>
</div>
</div>
</template>
<
script
lang=
'ts'
>
import
{
Component
,
Vue
,
Prop
,
Model
,
Watch
}
from
"vue-property-decorator"
;
@
Component
({})
export
default
class
AppRawItem
extends
Vue
{
/**
* 内容类型
*
* @type {string}
* @memberof AppRawItem
*/
@
Prop
()
public
contentType
!
:
string
;
/**
* 直接内容
*
* @type {strin}
* @memberof AppRawItem
*/
@
Prop
()
public
rawContent
?:
string
;
/**
* html内容
*
* @type {strin}
* @memberof AppRawItem
*/
@
Prop
()
public
htmlContent
?:
string
;
/**
* html内容
*
* @type {strin}
* @memberof AppRawItem
*/
@
Prop
()
public
imageClass
?:
string
;
/**
* 标题
*
* @type {string}
* @memberof AppRawItem
*/
@
Prop
()
public
caption
?:
string
;
/**
* 内容样式
*
* @type {strin}
* @memberof AppRawItem
*/
@
Prop
()
public
contentStyle
!
:
string
;
/**
* 内容宽高
*
* @type {strin}
* @memberof AppRawItem
*/
@
Prop
()
public
sizeStyle
!
:
string
;
}
</
script
>
<
style
lang=
'less'
>
</
style
>
\ No newline at end of file
src/components/app-transfer/app-transfer.vue
浏览文件 @
2f857f0a
...
...
@@ -21,7 +21,7 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
"vue-property-decorator"
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
import
{
ElSelect
}
from
"element-ui/types/select"
;
@
Component
({})
...
...
src/components/avue-custom-form/avue-custom-form.vue
浏览文件 @
2f857f0a
<
template
>
<div
v-if=
"formOption!=null"
class=
"app-custom-form"
>
<avue-form
:option=
"formOption"
v-model=
"form
Val
"
></avue-form>
<avue-form
:option=
"formOption"
v-model=
"form
value
"
></avue-form>
</div>
</
template
>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
,
Model
,
Emit
,
Watch
,
}
from
"vue-property-decorator"
;
import
{
Vue
,
Component
,
Prop
,
Model
,
Emit
,
Watch
,}
from
"vue-property-decorator"
;
import
{
Subject
,
Subscription
}
from
"rxjs"
;
@
Component
({})
export
default
class
AvueCustomForm
extends
Vue
{
/**
...
...
@@ -23,7 +16,8 @@ export default class AvueCustomForm extends Vue {
* @type {any}
* @memberof AvueCustomForm
*/
@
Prop
()
public
options
?:
any
;
@
Prop
()
public
options
?:
any
;
/**
* 是否需要转换为string类型
...
...
@@ -31,7 +25,8 @@ export default class AvueCustomForm extends Vue {
* @type {boolean}
* @memberof AvueCustomForm
*/
@
Prop
()
public
isParseString
?:
boolean
;
@
Prop
()
public
isParseString
?:
boolean
;
/**
* 远端地址
...
...
@@ -47,7 +42,7 @@ export default class AvueCustomForm extends Vue {
* @type {any}
* @memberof AvueCustomForm
*/
@
Model
(
'change'
)
public
value
:
any
;
@
Prop
(
)
public
value
:
any
;
/**
* 是否将表单数据通过组件配置带入组件中
...
...
@@ -57,6 +52,25 @@ export default class AvueCustomForm extends Vue {
*/
@
Prop
()
public
isFormData
?:
boolean
;
/**
* 监听事件
*
* @param {*} newVal
* @param {*} oldVal
* @memberof AvueCustomForm
*/
@
Watch
(
"value"
)
public
onValueChange
(
newVal
:
any
,
oldVal
:
any
)
{
if
(
newVal
)
{
let
obj
:
any
=
{};
if
(
newVal
&&
newVal
!=
null
)
{
if
(
this
.
isParseString
)
obj
=
JSON
.
parse
(
newVal
);
else
obj
=
newVal
;
}
if
(
obj
)
this
.
formvalue
=
JSON
.
parse
(
JSON
.
stringify
(
obj
));
}
}
/**
* 表单数据
*
...
...
@@ -75,32 +89,7 @@ export default class AvueCustomForm extends Vue {
@
Prop
()
public
formState
!
:
Subject
<
any
>
;
/**
* 获取组件值
*
* @return {any}
* @memberof AvueCustomForm
*/
get
formVal
()
{
let
obj
:
any
=
{};
if
(
this
.
value
)
{
if
(
this
.
isParseString
)
obj
=
JSON
.
parse
(
this
.
value
);
else
obj
=
this
.
value
;
}
return
obj
;
}
/**
* 设置组件值
*
* @param value
* @memberof AvueCustomForm
*/
set
formVal
(
value
:
any
)
{
this
.
setValue
(
value
);
}
/**
* 订阅对象
* 视图状态事件
*
* @protected
* @type {(Subscription | undefined)}
...
...
@@ -116,6 +105,14 @@ export default class AvueCustomForm extends Vue {
*/
public
formOption
:
any
=
null
;
/**
* avue-form绑定值
*
* @type {any}
* @memberof AvueCustomForm
*/
public
formvalue
:
any
=
{};
/**
* avue-form默认配置
*
...
...
@@ -192,8 +189,10 @@ export default class AvueCustomForm extends Vue {
if
(
this
.
url
&&
this
.
options
==
null
)
{
const
get
:
Promise
<
any
>
=
this
.
$http
.
get
(
this
.
url
);
get
.
then
((
response
:
any
)
=>
{
if
(
response
&&
response
.
data
)
{
that
.
formOption
=
JSON
.
parse
(
response
.
data
);
if
(
response
&&
response
.
data
&&
response
.
data
.
view_config
)
{
that
.
formOption
=
JSON
.
parse
(
response
.
data
.
view_config
)[
"formConfig"
];
if
(
this
.
isFormData
)
that
.
getFormData
();
}
});
...
...
@@ -215,7 +214,7 @@ export default class AvueCustomForm extends Vue {
public
getFormData
()
{
let
that
:
any
=
this
;
let
obj
:
any
;
if
(
this
.
formVal
)
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
formVal
));
if
(
this
.
value
)
obj
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
value
));
else
obj
=
{};
let
recursionOption
:
any
=
function
(
group
:
any
)
{
group
.
column
.
forEach
((
gItem
:
any
)
=>
{
...
...
@@ -243,17 +242,5 @@ export default class AvueCustomForm extends Vue {
if
(
this
.
isParseString
)
this
.
$emit
(
"change"
,
JSON
.
stringify
(
value
));
else
this
.
$emit
(
"change"
,
value
);
}
/**
* 销毁组件(vue生命周期)
*
* @type {Subject<any>}
* @memberof AvueCustomForm
*/
public
destroy
(){
if
(
this
.
formStateEvent
){
this
.
formStateEvent
.
unsubscribe
();
}
}
}
</
script
>
\ No newline at end of file
src/components/codelist/codelist.vue
浏览文件 @
2f857f0a
...
...
@@ -13,7 +13,7 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
,
Model
,
Watch
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
@
Component
({})
export
default
class
CodeList
extends
Vue
{
...
...
src/components/dropdown-list-dynamic/dropdown-list-dynamic.vue
浏览文件 @
2f857f0a
...
...
@@ -14,7 +14,7 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
@
Component
({
})
...
...
src/components/dropdown-list-mpicker/dropdown-list-mpicker.vue
浏览文件 @
2f857f0a
...
...
@@ -24,7 +24,7 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
,
Model
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
import
{
Util
}
from
'@/utils'
;
@
Component
({
})
...
...
src/components/dropdown-list/dropdown-list.vue
浏览文件 @
2f857f0a
...
...
@@ -17,9 +17,8 @@
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Watch
,
Prop
,
Model
}
from
'vue-property-decorator'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
import
{
Util
}
from
'@/utils'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
@
Component
({
})
...
...
@@ -85,23 +84,6 @@ export default class DropDownList extends Vue {
*/
@
Prop
()
public
data
?:
any
;
/**
* 表单状态对象
*
* @type {Subject<any>}
* @memberof AppEmbedPicker
*/
@
Prop
()
public
formState
!
:
Subject
<
any
>
/**
* 订阅对象
*
* @protected
* @type {(Subscription | undefined)}
* @memberof SelectType
*/
protected
formStateEvent
:
Subscription
|
undefined
;
/**
* 监听表单数据
*
...
...
@@ -259,23 +241,6 @@ export default class DropDownList extends Vue {
* @memberof DropDownList
*/
public
created
()
{
if
(
this
.
formState
)
{
this
.
formStateEvent
=
this
.
formState
.
subscribe
(({
type
,
data
})
=>
{
if
(
Object
.
is
(
'load'
,
type
))
{
this
.
loadData
();
}
});
}
else
{
this
.
loadData
();
}
}
/**
* 加载数据
*
* @memberof DropDownList
*/
public
loadData
(){
if
(
this
.
tag
&&
Object
.
is
(
this
.
codelistType
,
"STATIC"
)){
const
codelist
=
this
.
$store
.
getters
.
getCodeList
(
this
.
tag
);
if
(
codelist
)
{
...
...
@@ -407,17 +372,6 @@ export default class DropDownList extends Vue {
}
})
}
/**
* vue 生命周期
*
* @memberof DropDownList
*/
public
destroyed
()
{
if
(
this
.
formStateEvent
)
{
this
.
formStateEvent
.
unsubscribe
();
}
}
}
</
script
>
...
...
src/engine/view/data-view9-engine.ts
浏览文件 @
2f857f0a
...
...
@@ -17,10 +17,10 @@ export default class DataView9Engine extends DataViewEngine {
*/
public
load
(
opts
:
any
=
{},
isnotify
:
boolean
=
false
):
void
{
if
(
!
this
.
view
.
isformDruipart
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
else
{
if
(
isnotify
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
}
}
...
...
src/engine/view/grid-view-engine.ts
浏览文件 @
2f857f0a
...
...
@@ -45,10 +45,10 @@ export default class GridViewEngine extends MDViewEngine {
*/
public
load
(
opts
:
any
=
{},
isnotify
:
boolean
=
false
):
void
{
if
(
!
this
.
view
.
isformDruipart
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
else
{
if
(
isnotify
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
}
}
...
...
src/engine/view/list-view9-engine.ts
浏览文件 @
2f857f0a
...
...
@@ -17,10 +17,10 @@ export default class ListView9Engine extends ListViewEngine {
*/
public
load
(
opts
:
any
=
{},
isnotify
:
boolean
=
false
):
void
{
if
(
!
this
.
view
.
isformDruipart
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
else
{
if
(
isnotify
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
}
...
...
src/engine/view/md-view-engine.ts
浏览文件 @
2f857f0a
...
...
@@ -78,12 +78,12 @@ export default class MDViewEngine extends ViewEngine {
* @param {*} [opts={}]
* @memberof MDViewEngine
*/
public
load
(
opts
:
any
=
{}
,
isnotify
:
boolean
=
false
):
void
{
public
load
(
opts
:
any
=
{}):
void
{
super
.
load
(
opts
);
if
(
this
.
getSearchForm
()
&&
(
this
.
isLoadDefault
||
isnotify
)
)
{
if
(
this
.
getSearchForm
())
{
const
tag
=
this
.
getSearchForm
().
name
;
this
.
setViewState2
({
tag
:
tag
,
action
:
'loaddraft'
,
viewdata
:
this
.
view
.
viewparams
});
}
else
if
(
this
.
getMDCtrl
()
&&
(
this
.
isLoadDefault
||
isnotify
)
)
{
}
else
if
(
this
.
getMDCtrl
()
&&
this
.
isLoadDefault
)
{
const
tag
=
this
.
getMDCtrl
().
name
;
this
.
setViewState2
({
tag
:
tag
,
action
:
'load'
,
viewdata
:
Object
.
assign
(
this
.
view
.
viewparams
,
opts
)
});
}
else
{
...
...
src/engine/view/wfdyna-exp-grid-view-engine.ts
浏览文件 @
2f857f0a
...
...
@@ -29,10 +29,10 @@ export default class WFDynaExpGridViewEngine extends GridViewEngine {
return
;
}
if
(
!
this
.
view
.
isformDruipart
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
else
{
if
(
isnotify
){
super
.
load
(
opts
,
isnotify
);
super
.
load
(
opts
);
}
}
})
...
...
src/index.d.ts
浏览文件 @
2f857f0a
...
...
@@ -4,7 +4,6 @@ import { UtilServiceRegister } from '@/utilservice/util-service-register';
import
{
EntityServiceRegister
}
from
'@/service/entity-service-register'
;
import
{
CounterServiceRegister
}
from
'@/counter/counter-service-register'
;
import
{
CodeListRegister
}
from
'@codelist/codelist-register'
;
import
{
MessageServiceRegister
}
from
'@/message/message-service-register'
;
declare
global
{
interface
Window
{
uiServiceRegister
:
UIServiceRegister
,
...
...
@@ -12,7 +11,6 @@ declare global {
utilServiceRegister
:
UtilServiceRegister
,
entityServiceRegister
:
EntityServiceRegister
,
counterServiceRegister
:
CounterServiceRegister
,
codeListRegister
:
CodeListRegister
,
messageServiceRegister
:
MessageServiceRegister
codeListRegister
:
CodeListRegister
}
}
\ No newline at end of file
src/interface/message.ts
已删除
100644 → 0
浏览文件 @
26fcf093
/**
* 视图消息
*
* @interface ViewMessage
*/
export
interface
ViewMessage
{
/**
* 视图消息标识
*
* @type {string}
* @memberof ViewMessage
*/
id
:
string
;
/**
* 视图消息名称
*
* @type {string}
* @memberof ViewMessage
*/
name
:
string
;
/**
* 视图消息代码名称
*
* @type {string}
* @memberof ViewMessage
*/
codename
:
string
;
/**
* 视图消息标题
*
* @type {string}
* @memberof ViewMessage
*/
title
:
string
;
/**
* 视图消息内容
*
* @type {string}
* @memberof ViewMessage
*/
content
:
string
;
/**
* 视图消息关闭模式
*
* @type {number}
* @memberof ViewMessage
*/
closeMode
:
number
;
/**
* 视图消息位置
*
* @type {string}
* @memberof ViewMessage
*/
position
:
string
;
/**
* 视图消息类型
*
* @type {string}
* @memberof ViewMessage
*/
type
:
string
;
/**
* 视图消息是否支持删除
*
* @type {boolean}
* @memberof ViewMessage
*/
isEnableRemove
:
boolean
;
/**
* 排序值
*
* @type {number}
* @memberof ViewMessage
*/
order
:
number
;
/**
* 动态模式
*
* @type {string}
* @memberof ViewMessage
*/
dynamicMode
:
string
;
/**
* 消息类型
*
* @type {string}
* @memberof ViewMessage
*/
messageType
:
string
;
}
\ No newline at end of file
src/message/view-message-group-service.ts
已删除
100644 → 0
浏览文件 @
26fcf093
import
{
Http
}
from
'@/utils/http/http'
;
/**
* 视图消息组
*
* @export
* @class ViewMessageGroupService
*/
export
default
class
ViewMessageGroupService
{
/**
* 单例变量声明
*
* @private
* @static
* @type {ViewMessageGroupService}
* @memberof ViewMessageGroupService
*/
private
static
ViewMessageGroup
:
ViewMessageGroupService
;
/**
* 所有视图消息组对象
*
* @private
* @static
* @type {ViewMessageGroupService}
* @memberof ViewMessageGroupService
*/
private
static
allViewMessageGroup
:
any
;
/**
* 初始化实例
*
* @memberof ViewMessageGroupService
*/
constructor
(
opts
:
any
=
{}){}
/**
* 获取 ViewMessageGroupService 单例对象
*
* @static
* @returns {ViewMessageGroupService}
* @memberof ViewMessageGroupService
*/
public
static
getInstance
():
ViewMessageGroupService
{
if
(
!
ViewMessageGroupService
.
ViewMessageGroup
)
{
ViewMessageGroupService
.
ViewMessageGroup
=
new
ViewMessageGroupService
();
}
return
this
.
ViewMessageGroup
;
}
/**
* 获取视图消息组成员集合
*
* @returns {Promise<any></any>}
* @memberof ViewMessageGroupService
*/
public
async
getViewMessageDetailsByTag
(
tag
:
string
):
Promise
<
any
>
{
if
(
ViewMessageGroupService
.
allViewMessageGroup
){
return
ViewMessageGroupService
.
allViewMessageGroup
[
tag
]?
ViewMessageGroupService
.
allViewMessageGroup
[
tag
]:[];
}
else
{
let
result
:
any
=
await
this
.
loadAllViewMessageGroup
();
return
result
[
tag
]?
result
[
tag
]:[];
}
}
/**
* 加载应用所有视图消息组集合
*
* @returns {Promise<any></any>}
* @memberof ViewMessageGroupService
*/
public
loadAllViewMessageGroup
():
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
Http
.
getInstance
().
get
(
'./assets/json/view-message-group.json'
).
then
((
response
:
any
)
=>
{
if
(
response
&&
response
.
status
===
200
&&
response
.
data
)
{
ViewMessageGroupService
.
allViewMessageGroup
=
response
.
data
;
resolve
(
response
.
data
);
}
}).
catch
((
error
:
any
)
=>
{
console
.
log
(
error
);
});
})
}
}
\ No newline at end of file
src/message/view-message-service.ts
已删除
100644 → 0
浏览文件 @
26fcf093
import
{
ViewMessage
}
from
'@/interface/message'
;
import
EntityService
from
'@/service/entity-service'
;
/**
* 视图消息
*
* @export
* @class ViewMessage
*/
export
default
class
ViewMessageService
{
/**
* 单例变量声明
*
* @private
* @static
* @type {ViewMessageService}
* @memberof ViewMessageService
*/
private
static
ViewMessage
:
ViewMessageService
;
/**
* 实体数据服务对象
*
* @protected
* @type {EntityService}
* @memberof ViewMessageService
*/
protected
entityService
:
EntityService
=
new
EntityService
();
/**
* 视图消息标识
*
* @type {string}
* @memberof ViewMessageService
*/
public
id
:
string
=
""
;
/**
* 视图消息名称
*
* @type {string}
* @memberof ViewMessageService
*/
public
name
:
string
=
""
;
/**
* 视图消息代码名称
*
* @type {string}
* @memberof ViewMessageService
*/
public
codename
:
string
=
""
;
/**
* 视图消息标题
*
* @type {string}
* @memberof ViewMessageService
*/
public
title
:
string
=
""
;
/**
* 视图消息内容
*
* @type {string}
* @memberof ViewMessageService
*/
public
content
:
string
=
""
;
/**
* 视图消息关闭模式(0:无关闭,1:默认关闭,2:本次关闭)
*
* @type {number}
* @memberof ViewMessageService
*/
public
closeMode
:
number
=
0
;
/**
* 视图消息位置
*
* @type {string}
* @memberof ViewMessageService
*/
public
position
:
string
=
""
;
/**
* 视图消息类型
*
* @type {string}
* @memberof ViewMessageService
*/
public
type
:
string
=
"info"
;
/**
* 视图消息是否支持删除
*
* @type {boolean}
* @memberof ViewMessageService
*/
public
isEnableRemove
:
boolean
=
true
;
/**
* 视图消息排序值
*
* @type {boolean}
* @memberof ViewMessageService
*/
public
order
:
number
=
1
;
/**
* 动态模式
*
* @type {string}
* @memberof ViewMessageService
*/
public
dynamicMode
:
string
=
"STATIC"
;
/**
* 消息类型(可选值:TEXT/HTML)
*
* @type {string}
* @memberof ViewMessageService
*/
public
messageType
:
string
=
"TEXT"
;
/**
* 是否含有消息模板
*
* @type {boolean}
* @memberof ViewMessageService
*/
public
hasMessageTemp
:
boolean
=
false
;
/**
* 视图消息缓存(加载中)
*
* @type {Map<string,any>}
* @memberof ViewMessageService
*/
public
static
messageCache
:
Map
<
string
,
any
>
=
new
Map
();
/**
* 视图消息缓存(已完成)
*
* @type {Map<string,any>}
* @memberof ViewMessageService
*/
public
static
messageCached
:
Map
<
string
,
any
>
=
new
Map
();
/**
* 初始化实例
*
* @memberof ViewMessageService
*/
constructor
(
opts
:
any
=
{})
{
this
.
initBasicParam
();
}
/**
* 获取 ViewMessageService 单例对象
*
* @static
* @returns {ViewMessageService}
* @memberof ViewMessageService
*/
public
static
getInstance
():
ViewMessageService
{
if
(
!
ViewMessageService
.
ViewMessage
)
{
ViewMessageService
.
ViewMessage
=
new
ViewMessageService
();
}
return
this
.
ViewMessage
;
}
/**
* 初始化基础参数
*
* @memberof ViewMessageService
*/
public
initBasicParam
(){}
/**
* 获取视图消息服务
*
* @protected
* @param {string} name 视图消息codename
* @returns {Promise<any>}
* @memberof ViewMessageService
*/
public
getService
(
name
:
string
):
Promise
<
any
>
{
return
(
window
as
any
)[
'messageServiceRegister'
].
getService
(
name
);
}
/**
* 通过tag获取视图消息
*
* @param {tag:string} 视图消息标识
* @param {context:any} 导航上下文
* @param {viewparam:any} 导航参数
* @memberof ViewMessageService
*/
public
async
getViewMessageByTag
(
tag
:
string
,
context
:
any
=
{},
viewparam
:
any
=
{}){
let
messageService
:
any
=
await
this
.
getService
(
tag
);
if
(
messageService
.
dynamicMode
&&
Object
.
is
(
messageService
.
dynamicMode
,
"STATIC"
)){
return
messageService
.
getStaticViewMessage
();
}
else
{
return
messageService
.
getDynamicViewMessage
(
tag
,
messageService
,
context
,
viewparam
);
}
}
/**
* 转化消息模板标题和内容
*
* @memberof ViewMessageService
*/
public
translateMessageTemp
(
target
:
any
,
item
?:
any
){
}
/**
* 获取动态模式(静态)类型视图消息
*
* @memberof ViewMessageService
*/
public
getStaticViewMessage
():
Array
<
ViewMessage
>
{
let
returnViewMessage
:
ViewMessage
=
{
id
:
this
.
id
,
name
:
this
.
name
,
codename
:
this
.
codename
,
title
:
this
.
title
,
content
:
this
.
content
,
closeMode
:
this
.
closeMode
,
position
:
this
.
position
,
type
:
this
.
type
,
isEnableRemove
:
this
.
isEnableRemove
,
order
:
this
.
order
,
dynamicMode
:
this
.
dynamicMode
,
messageType
:
this
.
messageType
};
this
.
translateMessageTemp
(
returnViewMessage
);
return
[
returnViewMessage
];
}
/**
* 获取动态模式(实体数据集合)类型视图消息
*
* @param {any} tag 视图消息标识
* @param {any} messageService 消息服务
* @param {string} context
* @returns {Promise<any[]>}
* @memberof ViewMessageService
*/
public
getDynamicViewMessage
(
tag
:
string
,
messageService
:
any
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
[]
>
{
if
(
context
&&
context
.
srfsessionid
){
delete
context
.
srfsessionid
;
}
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
let
isEnableCache
:
boolean
=
messageService
.
isEnableCache
;
let
cacheTimeout
:
any
=
messageService
.
cacheTimeout
;
// 启用缓存
if
(
isEnableCache
){
const
callback
:
Function
=
(
context
:
any
=
{},
data
:
any
=
{},
tag
:
string
,
promise
:
Promise
<
any
>
)
=>
{
promise
.
then
((
result
:
any
)
=>
{
if
(
result
.
length
>
0
){
ViewMessageService
.
messageCached
.
set
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
,{
items
:
result
});
ViewMessageService
.
messageCache
.
delete
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
);
return
resolve
(
result
);
}
else
{
return
resolve
([]);
}
}).
catch
((
result
:
any
)
=>
{
return
reject
(
result
);
})
}
// 加载完成,从本地缓存获取
if
(
ViewMessageService
.
messageCached
.
get
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
)){
let
items
:
any
=
ViewMessageService
.
messageCached
.
get
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
).
items
;
if
(
items
.
length
>
0
){
if
(
new
Date
().
getTime
()
<=
messageService
.
getExpirationTime
()){
return
resolve
(
items
);
}
}
}
if
(
messageService
)
{
// 加载中,UI又需要数据,解决连续加载同一代码表问题
if
(
ViewMessageService
.
messageCache
.
get
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
)){
callback
(
context
,
data
,
tag
,
ViewMessageService
.
messageCache
.
get
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
));
}
else
{
let
result
:
Promise
<
any
>
=
messageService
.
getItems
(
context
,
data
,
isloading
);
ViewMessageService
.
messageCache
.
set
(
`
${
JSON
.
stringify
(
context
)}
-
${
JSON
.
stringify
(
data
)}
-
${
tag
}
`
,
result
);
messageService
.
setExpirationTime
(
new
Date
().
getTime
()
+
cacheTimeout
);
callback
(
context
,
data
,
tag
,
result
);
}
}
}
else
{
if
(
messageService
)
{
messageService
.
getItems
(
context
,
data
,
isloading
).
then
((
result
:
any
)
=>
{
resolve
(
result
);
}).
catch
((
error
:
any
)
=>
{
Promise
.
reject
([]);
})
}
else
{
return
Promise
.
reject
([]);
}
}
})
}
}
\ No newline at end of file
src/model/form-detail/form-item.ts
浏览文件 @
2f857f0a
...
...
@@ -38,14 +38,6 @@ export class FormItemModel extends FormDetailModel {
*/
public
enableCond
:
number
|
0
|
1
|
2
|
3
=
3
;
/**
* 是否必填
*
* @type {boolean}
* @memberof FormItemModel
*/
public
required
:
boolean
=
false
;
/**
* Creates an instance of FormItemModel.
* FormItemModel 实例
...
...
@@ -57,7 +49,6 @@ export class FormItemModel extends FormDetailModel {
super
(
opts
);
this
.
disabled
=
opts
.
disabled
?
true
:
false
;
this
.
enableCond
=
opts
.
enableCond
;
this
.
required
=
opts
.
required
;
}
/**
...
...
src/
codelist
/codelist-service.ts
→
src/
service/app
/codelist-service.ts
浏览文件 @
2f857f0a
import
store
from
'@/store'
;
import
EntityService
from
'
@/service
/entity-service'
;
import
EntityService
from
'
..
/entity-service'
;
/**
* 动态代码表服务类
...
...
src/service/entity-service.ts
浏览文件 @
2f857f0a
import
{
Http
}
from
'@/utils'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
/**
* 实体服务基类
...
...
src/store/getters.ts
浏览文件 @
2f857f0a
...
...
@@ -47,13 +47,7 @@ export const getLocalData = (state: any) => () => {
* @param state
*/
export
const
getAppData
=
(
state
:
any
)
=>
()
=>
{
let
result
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
state
.
appdata
));
if
(
state
.
localdata
&&
Object
.
keys
(
state
.
localdata
).
length
>
0
){
let
copyContext
:
any
=
result
.
context
?
result
.
context
:{};
Object
.
assign
(
copyContext
,
state
.
localdata
);
result
.
context
=
copyContext
;
}
return
result
;
return
state
.
appdata
;
}
/**
...
...
@@ -110,14 +104,4 @@ export const getOrgData = (state: any) => (srfkey: string) => {
export
const
getDepData
=
(
state
:
any
)
=>
(
srfkey
:
string
)
=>
{
let
depData
=
state
.
depDataMap
[
srfkey
];
return
depData
;
}
/**
* 获取视图信息
*
* @param state
*/
export
const
getViewMessage
=
(
state
:
any
)
=>
(
tag
:
string
)
=>
{
let
id
=
state
.
viewMessage
[
tag
];
return
id
;
}
\ No newline at end of file
src/store/mutations.ts
浏览文件 @
2f857f0a
...
...
@@ -29,8 +29,8 @@ export const addCodeLists = (state: any, codelists: any) => {
* @param localdata
*/
export
const
addLocalData
=
(
state
:
any
,
localdata
:
any
=
{})
=>
{
state
.
localdata
=
{};
Object
.
assign
(
state
.
localdata
,
localdata
);
localStorage
.
setItem
(
'localdata'
,
JSON
.
stringify
(
state
.
localdata
));
}
/**
...
...
@@ -291,16 +291,4 @@ export const addDepData = (state: any, args: {srfkey: string,depData: any}) => {
if
(
args
&&
args
.
srfkey
&&
args
.
depData
){
state
.
depDataMap
[
args
.
srfkey
]
=
JSON
.
parse
(
JSON
.
stringify
(
args
.
depData
));
}
}
/**
* 添加视图信息
*
* @param state
* @param args
*/
export
const
addViewMessage
=
(
state
:
any
,
args
:
{
tag
:
string
,
id
:
any
})
=>
{
if
(
args
&&
args
.
tag
&&
args
.
id
)
{
state
.
viewMessage
[
args
.
tag
]
=
args
.
id
;
}
}
\ No newline at end of file
src/store/state.ts
浏览文件 @
2f857f0a
...
...
@@ -16,5 +16,4 @@ export const rootstate: any = {
viewSplit
:
{},
orgDataMap
:{},
depDataMap
:{},
viewMessage
:
{},
}
\ No newline at end of file
src/styles/default.less
浏览文件 @
2f857f0a
@import '../../node_modules/font-awesome/less/font-awesome.less';
@import'/assets/styles/index.css';
@import '../theme/blue.theme.less';
@import '../theme/dark-blue.theme.less';
@import '../theme/default.theme.less';
...
...
src/template.html
浏览文件 @
2f857f0a
...
...
@@ -13,6 +13,5 @@
</noscript>
<div
id=
"app"
></div>
<script
src=
"./environments/environment.js"
></script>
<script
src=
"../assets/js/avue.min.js"
></script>
</body>
</html>
src/utils/auth-guard/auth-guard.ts
浏览文件 @
2f857f0a
...
...
@@ -41,11 +41,10 @@ export class AuthGuard {
private
constructor
()
{
}
/**
*
获取应用数据
*
post请求
*
* @param {string} url url 请求路径
* @param {*} [params={}] 请求参数
* @param {*} [router] 路由对象
* @returns {Promise<any>} 请求相响应对象
* @memberof AuthGuard
*/
...
...
@@ -66,9 +65,6 @@ export class AuthGuard {
}
data
=
JSON
.
parse
(
JSON
.
stringify
(
localAppData
));
}
if
(
localStorage
.
getItem
(
'localdata'
)){
router
.
app
.
$store
.
commit
(
'addLocalData'
,
JSON
.
parse
(
localStorage
.
getItem
(
'localdata'
)
as
string
));
}
router
.
app
.
$store
.
commit
(
'addAppData'
,
data
);
// 提交统一资源数据
router
.
app
.
$store
.
dispatch
(
'authresource/commitAuthData'
,
data
);
...
...
src/widgets/control-service.ts
浏览文件 @
2f857f0a
import
{
Store
}
from
'vuex'
;
import
{
Util
}
from
'@/utils/util/util'
;
import
CodeListService
from
"@
/codelist
/codelist-service"
;
import
CodeListService
from
"@
service/app
/codelist-service"
;
/**
* 部件服务基类
...
...
tony001
@tony001
被提及 commit
1cff2957
·
9月 21, 2020
被提及 commit
1cff2957
被提及 commit 1cff2957a324aa227ade55076adb6fd82881f488
切换提交列表
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录