@tongfun/tf-widget 0.1.18 → 0.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/README.md +49 -42
  2. package/lib/css/1.841c5d60.css +1 -0
  3. package/lib/tf-widget.common.1.js +9 -13
  4. package/lib/tf-widget.common.js +1102 -950
  5. package/lib/tf-widget.css +1 -1
  6. package/lib/tf-widget.umd.1.js +9 -13
  7. package/lib/tf-widget.umd.js +1102 -950
  8. package/lib/tf-widget.umd.min.1.js +1 -1
  9. package/lib/tf-widget.umd.min.js +4 -4
  10. package/package/svg-icon/index.js +8 -8
  11. package/package/svg-icon/src/SvgIcon.vue +59 -59
  12. package/package/t-data-list/index.js +6 -6
  13. package/package/t-data-list/main.vue +193 -192
  14. package/package/t-data-list/src/condition-input/basic.vue +31 -31
  15. package/package/t-data-list/src/condition-input/date.vue +106 -106
  16. package/package/t-data-list/src/condition-input/index.vue +100 -100
  17. package/package/t-data-list/src/condition-input/input.vue +31 -31
  18. package/package/t-data-list/src/condition-input/number.vue +115 -115
  19. package/package/t-data-list/src/condition-input/select.vue +86 -86
  20. package/package/t-data-list/src/js/fieldTypeEnum.js +10 -10
  21. package/package/t-data-list/src/js/operatorEnum.js +108 -109
  22. package/package/t-data-list/src/js/qureyParamsEnum.js +4 -4
  23. package/package/t-data-list/src/js/util.js +34 -34
  24. package/package/t-data-list/src/mixins/button-controll-mixin.js +93 -77
  25. package/package/t-data-list/src/pushdown/push-down.vue +158 -158
  26. package/package/t-data-list/src/t-list-search.vue +36 -32
  27. package/package/t-data-list/src/t-plan/condition-always-item.vue +143 -143
  28. package/package/t-data-list/src/t-plan/condition-mult-item.vue +222 -222
  29. package/package/t-data-list/src/t-plan/index.vue +195 -190
  30. package/package/t-data-list/src/t-plan/plan-content.vue +389 -396
  31. package/package/t-data-list/src/t-table/index.vue +129 -120
  32. package/package/t-data-list/src/t-table/table-group-item-edit.vue +238 -238
  33. package/package/t-data-list/src/t-table/table-group-item.vue +87 -87
  34. package/package/t-data-list/src/t-table/table-group.vue +180 -179
  35. package/package/t-data-list/src/t-table/table-records-header-popover.vue +246 -250
  36. package/package/t-data-list/src/t-table/table-records-selected.vue +159 -159
  37. package/package/t-data-list/src/t-table/table-records.vue +337 -324
  38. package/package/t-input/children/address.vue +101 -101
  39. package/package/t-input/children/basic-display.vue +41 -41
  40. package/package/t-input/children/basic.vue +253 -251
  41. package/package/t-input/children/date.vue +89 -89
  42. package/package/t-input/children/group-components/group-dialog.vue +344 -350
  43. package/package/t-input/children/group.vue +126 -126
  44. package/package/t-input/children/input.vue +72 -72
  45. package/package/t-input/children/number.vue +74 -74
  46. package/package/t-input/children/select.vue +89 -89
  47. package/package/t-input/children/tfile/fiile-enclosure.vue +233 -233
  48. package/package/t-input/index.js +7 -7
  49. package/package/t-input/index.vue +337 -337
  50. package/package/t-input/tInputCache.js +24 -24
  51. package/package/tf-icon-picker/README.md +7 -7
  52. package/package/tf-icon-picker/index.js +8 -8
  53. package/package/tf-icon-picker/src/tf-icon-picker.vue +266 -266
  54. package/package/tf-layout/README.md +115 -115
  55. package/package/tf-layout/index.js +8 -8
  56. package/package/tf-layout/src/components/tf-labelbar.vue +394 -382
  57. package/package/tf-layout/src/components/tf-menu.vue +180 -180
  58. package/package/tf-layout/src/components/tf-right-menu.vue +89 -89
  59. package/package/tf-layout/src/components/tf-rotate-box.vue +50 -50
  60. package/package/tf-layout/src/tf-layout.vue +140 -120
  61. package/package/tf-widget/index.js +8 -8
  62. package/package/tf-widget/src/assets/common-input.less +10 -10
  63. package/package/tf-widget/src/children/basic-data/basic-data.vue +361 -361
  64. package/package/tf-widget/src/children/basic-data/dependcy/basic-data-selector.vue +1087 -1087
  65. package/package/tf-widget/src/children/basic-data/dependcy/common-table.vue +750 -750
  66. package/package/tf-widget/src/children/basic-data/dependcy/condition-filter.vue +519 -519
  67. package/package/tf-widget/src/children/basic-data/dependcy/pagination.vue +93 -93
  68. package/package/tf-widget/src/children/basic-data/dependcy/table-control.vue +240 -240
  69. package/package/tf-widget/src/children/basic-data/dependcy/view-picture.vue +108 -108
  70. package/package/tf-widget/src/children/date-time.vue +103 -103
  71. package/package/tf-widget/src/children/date.vue +103 -103
  72. package/package/tf-widget/src/children/decimal.vue +115 -115
  73. package/package/tf-widget/src/children/integer.vue +104 -104
  74. package/package/tf-widget/src/children/property.vue +59 -59
  75. package/package/tf-widget/src/children/single-line-text.vue +82 -82
  76. package/package/tf-widget/src/children/small-pictures.vue +223 -223
  77. package/package/tf-widget/src/children/text-area.vue +74 -74
  78. package/package/tf-widget/src/children/tf-select.vue +113 -113
  79. package/package/tf-widget/src/tf-widget.vue +175 -175
  80. package/package.json +44 -43
  81. package/src/api/edit.js +97 -97
  82. package/src/api/file-enclosure.js +26 -26
  83. package/src/api/push-down.js +19 -19
  84. package/src/api/table.js +294 -294
  85. package/src/api/tableV3.js +166 -186
  86. package/src/assets/images/icons/index.js +9 -9
  87. package/src/assets/images/icons/svg/add.svg +5 -5
  88. package/src/assets/images/icons/svg/push-down.svg +1 -1
  89. package/src/assets/images/icons/svg/remove.svg +1 -1
  90. package/src/assets/styles/common-table.less +202 -202
  91. package/src/directives/debounce.js +24 -0
  92. package/src/index.js +31 -31
  93. package/src/mixins/t-data-query-mixin.js +290 -289
  94. package/src/utils/auth.js +22 -22
  95. package/src/utils/request.js +42 -42
  96. package/src/utils/stato-anormale.js +59 -59
  97. package/src/utils/utils.js +109 -109
  98. package/src/utils/validate.js +84 -84
  99. package/lib/css/1.920744ef.css +0 -1
@@ -1,250 +1,246 @@
1
- <template>
2
- <!-- 排序的提示插件 -->
3
- <div>
4
- <el-popover
5
-
6
- :value="item.isShowFilter"
7
- width="200"
8
- trigger="manual"
9
- placement="bottom"
10
- >
11
- <!-- 单选内容 -->
12
- <div v-if="getFieldType !=='enum' && item.isShowFilter" v-clickoutside="handleClickOut" class="radio-context">
13
- <div class="context-list">
14
- <div
15
- v-for="radioItem in getOperatorEnumList"
16
- :key="radioItem.value"
17
- :class="{'list-item':true, 'list-item-active':radioItem.value === tableFilterData[item.field].operator}"
18
- @click="handleFilterRadioClick(radioItem)"
19
- >
20
- <div class="list-text">{{ radioItem.label }}</div>
21
- <div class="list-icon">
22
- <i v-show="radioItem.value === tableFilterData[item.field].operator" class="el-icon-check" />
23
- </div>
24
-
25
- </div>
26
- </div>
27
- <div class="context-list header-input">
28
- <ConditionInput
29
- v-show="item.selectItem && !item.selectItem.over"
30
- v-model="tableFilterData[item.field].value"
31
- :type="getFieldType"
32
- :field="item.field"
33
- :table-head="true"
34
- :multi="item.selectItem && item.selectItem.multi"
35
- :range="item.selectItem && item.selectItem.range"
36
- />
37
- </div>
38
- <div class="context-list">
39
- <el-button size="mini" @click="handleCancelConditionChange">取消</el-button>
40
- <el-button size="mini" @click="handleResetConditionChange">重置</el-button>
41
- <el-button type="primary" size="mini" @click="handleConditionChange">确定</el-button>
42
- </div>
43
- </div>
44
- <!-- 多选内容 -->
45
- <!-- 页面中添加v-if item.isShowFilter来判断防止页面卡顿 -->
46
- <div v-else-if="item.isShowFilter" v-clickoutside="handleClickOut" class="menu-context">
47
- <div class="context-list">
48
- <div
49
- v-for="option in item.options"
50
- :key="option.enumId"
51
- :class="{'list-item':true, 'list-item-active':tableFilterData[item.field].value.includes(option.enumId)}"
52
- @click="handleFilterRadioClick(option.enumId)"
53
- >
54
- <div class="list-text">{{ option.name }}</div>
55
- <div class="list-icon">
56
- <i v-show="tableFilterData[item.field].value.includes(option.enumId)" class="el-icon-check" />
57
- </div>
58
-
59
- </div>
60
- </div>
61
- <div class="context-list">
62
- <el-button size="mini" @click="handleCancelConditionChange">取消</el-button>
63
- <el-button size="mini" @click="handleResetConditionChange">清除</el-button>
64
- <el-button type="primary" size="mini" @click="handleConditionChange">确定</el-button>
65
- </div>
66
- </div>
67
- <SvgIcon
68
- slot="reference"
69
- class="filter-icon"
70
- icon-class="filter"
71
- style=""
72
- @mouseup.stop="handleFilterClick"
73
- />
74
-
75
- </el-popover>
76
- </div>
77
- </template>
78
- <script>
79
- import ConditionInput from '../condition-input'
80
- import getOperatorOption from '../js/operatorEnum'
81
- import fieldTypeEnum from '../js/fieldTypeEnum'
82
- import { getEnumOptions } from '@/api/tableV3.js'
83
- import Clickoutside from 'element-ui/src/utils/clickoutside'
84
-
85
- export default {
86
- components: {
87
- ConditionInput
88
- },
89
- inject: ['target', 'enumOptionCache'],
90
- directives: { Clickoutside },
91
- props: {
92
- item: {
93
- type: Object,
94
- default: () => {}
95
- },
96
- tableFilterData: {
97
- type: Object,
98
- default: () => {}
99
- },
100
- uploadDataMap: {
101
- type: Object,
102
- default: () => {}
103
- }
104
- },
105
- computed: {
106
- // 获取枚举列表
107
- getOperatorEnumList () {
108
- return getOperatorOption(fieldTypeEnum[this.item.componentValueType])
109
- },
110
- // 获取类型
111
- getFieldType () {
112
- return fieldTypeEnum[this.item.componentValueType]
113
- }
114
- },
115
- created () {
116
- this.getFieldType === 'enum' && this.getOptions()
117
- },
118
- methods: {
119
- handleClickOut (...e) {
120
- if (this.item.isShowFilter === true) {
121
- this.item.isShowFilter = false
122
- }
123
- },
124
- async getOptions () {
125
- if (this.enumOptionCache[this.item.field]) {
126
- this.item.options = this.enumOptionCache[this.item.field]
127
- return
128
- }
129
- const res = await getEnumOptions(this.target, this.item.field)
130
- if (res.code !== 0) {
131
- return this.$message.error(res.msg)
132
- }
133
-
134
- this.item.options = res.data
135
- this.enumOptionCache[this.item.field] = res.data
136
- },
137
-
138
- // 单击一条数据
139
- handleFilterRadioClick (radioItem) {
140
- if (this.getFieldType === 'enum') {
141
- this.tableFilterData[this.item.field].operator = 'ENUM_IN'
142
- this.tableFilterData[this.item.field].value.includes(',') && (this.tableFilterData[this.item.field].value = this.tableFilterData[this.item.field].value.split(','))
143
- const set = new Set(this.tableFilterData[this.item.field].value)
144
- set.has(radioItem) ? set.delete(radioItem) : set.add(radioItem)
145
- this.tableFilterData[this.item.field].value = Array.from(set)
146
- return
147
- }
148
- this.$set(this.item, 'selectItem', radioItem)
149
- this.tableFilterData[this.item.field].operator = radioItem.value
150
- },
151
-
152
- // 取消过滤条件查询(数据还在,但是不参与正式的查询)
153
- handleCancelConditionChange () {
154
- this.item.isShowFilter = false
155
- },
156
-
157
- // 重置过滤条件
158
- handleResetConditionChange () {
159
- // 清空当前页面的内容
160
- Object.keys(this.tableFilterData[this.item.field]).forEach(e => {
161
- if (e === 'field') {
162
- return
163
- }
164
- this.tableFilterData[this.item.field][e] = ''
165
- })
166
- // 删除对象中的相关属性
167
- delete this.uploadDataMap[this.item.field]
168
- delete this.item.selectItem
169
- this.$set(this.item, 'isShowIcon', false)
170
- this.sendUploadData()
171
-
172
- this.item.isShowFilter = false
173
- },
174
- // 提交过滤条件进行查询
175
- handleConditionChange () {
176
- if (this.getFieldType === 'enum') {
177
- if (!this.tableFilterData[this.item.field].operator) {
178
- return this.$message.error(`请选择${this.item.title}的条件`)
179
- }
180
- } else {
181
- if (!this.tableFilterData[this.item.field].operator) {
182
- return this.$message.error(`请选择${this.item.title}的条件`)
183
- }
184
- if (!this.item.selectItem.over && !this.tableFilterData[this.item.field].value) {
185
- return this.$message.error(`请输入${this.item.title}的值`)
186
- }
187
- }
188
- if (this.tableFilterData[this.item.field].value instanceof Array) {
189
- this.tableFilterData[this.item.field].value = this.tableFilterData[this.item.field].value.join(',')
190
- }
191
- this.$set(this.uploadDataMap, this.item.field, JSON.parse(JSON.stringify(this.tableFilterData[this.item.field])))
192
- // this.uploadDataMap[item.field] = data
193
- this.sendUploadData()
194
- this.$set(this.item, 'isShowIcon', true)
195
- this.item.isShowFilter = false
196
- },
197
- // 发送事件
198
- sendUploadData () {
199
- const uploadData = []
200
- Object.values(this.uploadDataMap).forEach(e => {
201
- uploadData.push(e)
202
- })
203
- this.$emit('condition-change', uploadData)// 向上发送数据
204
- },
205
- // 控制过滤条件的显示的隐藏
206
- handleFilterClick () {
207
- this.$emit('filter-click', this.item.isShowFilter)
208
- this.$set(this.item, 'isShowFilter', !this.item.isShowFilter)
209
- }
210
- }
211
- }
212
- </script>
213
- <style lang="less" scoped>
214
- .el-popover{
215
- .context-list{
216
- .list-item{
217
- display: flex;
218
- margin: 1px 0;
219
- padding: 2px 8px;
220
- justify-content: space-between;
221
- &:hover{
222
- background-color: rgb(231, 235, 253);
223
- }
224
- }
225
- .list-item-active{
226
- color: rgb(59, 104, 252);
227
- background-color: rgb(231, 235, 253);
228
- }
229
- /deep/.el-input .el-input__inner{
230
- height: 30px;
231
- }
232
- &:last-child{
233
- margin-top: 4px;
234
- width: 100%;
235
- display: flex;
236
- justify-content: space-between;
237
- }
238
- }
239
- .header-input{
240
- margin-top:5px;
241
- }
242
- .filter-icon{
243
- outline: none;
244
- width: 15px;
245
- height: 15px;
246
- cursor: pointer;
247
- }
248
- }
249
-
250
- </style>
1
+ <template>
2
+ <!-- 排序的提示插件 -->
3
+ <div>
4
+ <el-popover
5
+ :value="item.isShowFilter"
6
+ width="200"
7
+ trigger="manual"
8
+ placement="bottom"
9
+ >
10
+ <!-- 单选内容 -->
11
+ <div v-if="getFieldType !=='enum' && item.isShowFilter" v-clickoutside="handleClickOut" class="radio-context">
12
+ <div class="context-list">
13
+ <div
14
+ v-for="radioItem in getOperatorEnumList"
15
+ :key="radioItem.value"
16
+ :class="{'list-item':true, 'list-item-active':radioItem.value === tableFilterData[item.field].operator}"
17
+ @click="handleFilterRadioClick(radioItem)"
18
+ >
19
+ <div class="list-text">{{ radioItem.label }}</div>
20
+ <div class="list-icon">
21
+ <i v-show="radioItem.value === tableFilterData[item.field].operator" class="el-icon-check" />
22
+ </div>
23
+ </div>
24
+ </div>
25
+ <div class="context-list header-input">
26
+ <ConditionInput
27
+ v-show="item.selectItem && !item.selectItem.over"
28
+ v-model="tableFilterData[item.field].value"
29
+ :type="getFieldType"
30
+ :field="item.field"
31
+ :table-head="true"
32
+ :multi="item.selectItem && item.selectItem.multi"
33
+ :range="item.selectItem && item.selectItem.range"
34
+ />
35
+ </div>
36
+ <div class="context-list">
37
+ <el-button size="mini" @click="handleCancelConditionChange">取消</el-button>
38
+ <el-button size="mini" @click="handleResetConditionChange">重置</el-button>
39
+ <el-button type="primary" size="mini" @click="handleConditionChange">确定</el-button>
40
+ </div>
41
+ </div>
42
+ <!-- 多选内容 -->
43
+ <!-- 页面中添加v-if item.isShowFilter来判断防止页面卡顿 -->
44
+ <div v-else-if="item.isShowFilter" v-clickoutside="handleClickOut" class="menu-context">
45
+ <div class="context-list">
46
+ <div
47
+ v-for="option in item.options"
48
+ :key="option.enumId"
49
+ :class="{'list-item':true, 'list-item-active':tableFilterData[item.field].value.includes(option.enumId)}"
50
+ @click="handleFilterRadioClick(option.enumId)"
51
+ >
52
+ <div class="list-text">{{ option.name }}</div>
53
+ <div class="list-icon">
54
+ <i v-show="tableFilterData[item.field].value.includes(option.enumId)" class="el-icon-check" />
55
+ </div>
56
+ </div>
57
+ </div>
58
+ <div class="context-list">
59
+ <el-button size="mini" @click="handleCancelConditionChange">取消</el-button>
60
+ <el-button size="mini" @click="handleResetConditionChange">清除</el-button>
61
+ <el-button type="primary" size="mini" @click="handleConditionChange">确定</el-button>
62
+ </div>
63
+ </div>
64
+ <SvgIcon
65
+ slot="reference"
66
+ class="filter-icon"
67
+ icon-class="filter"
68
+ style=""
69
+ @mouseup.stop="handleFilterClick"
70
+ />
71
+ </el-popover>
72
+ </div>
73
+ </template>
74
+ <script>
75
+ import ConditionInput from '../condition-input'
76
+ import getOperatorOption from '../js/operatorEnum'
77
+ import fieldTypeEnum from '../js/fieldTypeEnum'
78
+ import { getEnumOptions } from '@/api/tableV3.js'
79
+ import Clickoutside from 'element-ui/src/utils/clickoutside'
80
+
81
+ export default {
82
+ components: {
83
+ ConditionInput
84
+ },
85
+ inject: ['target', 'enumOptionCache'],
86
+ directives: { Clickoutside },
87
+ props: {
88
+ item: {
89
+ type: Object,
90
+ default: () => {}
91
+ },
92
+ tableFilterData: {
93
+ type: Object,
94
+ default: () => {}
95
+ },
96
+ uploadDataMap: {
97
+ type: Object,
98
+ default: () => {}
99
+ }
100
+ },
101
+ computed: {
102
+ // 获取枚举列表
103
+ getOperatorEnumList () {
104
+ return getOperatorOption(fieldTypeEnum[this.item.componentValueType])
105
+ },
106
+ // 获取类型
107
+ getFieldType () {
108
+ return fieldTypeEnum[this.item.componentValueType]
109
+ }
110
+ },
111
+ created () {
112
+ this.getFieldType === 'enum' && this.getOptions()
113
+ },
114
+ methods: {
115
+ handleClickOut (...e) {
116
+ if (this.item.isShowFilter === true) {
117
+ this.item.isShowFilter = false
118
+ }
119
+ },
120
+ async getOptions () {
121
+ if (this.enumOptionCache[this.item.field]) {
122
+ this.item.options = this.enumOptionCache[this.item.field]
123
+ return
124
+ }
125
+ const res = await getEnumOptions(this.target, this.item.field)
126
+ if (res.code !== 0) {
127
+ return this.$message.error(res.msg)
128
+ }
129
+
130
+ this.item.options = res.data
131
+ this.enumOptionCache[this.item.field] = res.data
132
+ },
133
+
134
+ // 单击一条数据
135
+ handleFilterRadioClick (radioItem) {
136
+ if (this.getFieldType === 'enum') {
137
+ this.tableFilterData[this.item.field].operator = 'ENUM_IN'
138
+ this.tableFilterData[this.item.field].value.includes(',') && (this.tableFilterData[this.item.field].value = this.tableFilterData[this.item.field].value.split(','))
139
+ const set = new Set(this.tableFilterData[this.item.field].value)
140
+ set.has(radioItem) ? set.delete(radioItem) : set.add(radioItem)
141
+ this.tableFilterData[this.item.field].value = Array.from(set)
142
+ return
143
+ }
144
+ this.$set(this.item, 'selectItem', radioItem)
145
+ this.tableFilterData[this.item.field].operator = radioItem.value
146
+ },
147
+
148
+ // 取消过滤条件查询(数据还在,但是不参与正式的查询)
149
+ handleCancelConditionChange () {
150
+ this.item.isShowFilter = false
151
+ },
152
+
153
+ // 重置过滤条件
154
+ handleResetConditionChange () {
155
+ // 清空当前页面的内容
156
+ Object.keys(this.tableFilterData[this.item.field]).forEach(e => {
157
+ if (e === 'field') {
158
+ return
159
+ }
160
+ this.tableFilterData[this.item.field][e] = ''
161
+ })
162
+ // 删除对象中的相关属性
163
+ delete this.uploadDataMap[this.item.field]
164
+ delete this.item.selectItem
165
+ this.$set(this.item, 'isShowIcon', false)
166
+ this.sendUploadData()
167
+
168
+ this.item.isShowFilter = false
169
+ },
170
+ // 提交过滤条件进行查询
171
+ handleConditionChange () {
172
+ if (this.getFieldType === 'enum') {
173
+ if (!this.tableFilterData[this.item.field].operator) {
174
+ return this.$message.error(`请选择${this.item.title}的条件`)
175
+ }
176
+ } else {
177
+ if (!this.tableFilterData[this.item.field].operator) {
178
+ return this.$message.error(`请选择${this.item.title}的条件`)
179
+ }
180
+ if (!this.item.selectItem.over && !this.tableFilterData[this.item.field].value) {
181
+ return this.$message.error(`请输入${this.item.title}的值`)
182
+ }
183
+ }
184
+ if (this.tableFilterData[this.item.field].value instanceof Array) {
185
+ this.tableFilterData[this.item.field].value = this.tableFilterData[this.item.field].value.join(',')
186
+ }
187
+ this.$set(this.uploadDataMap, this.item.field, JSON.parse(JSON.stringify(this.tableFilterData[this.item.field])))
188
+ // this.uploadDataMap[item.field] = data
189
+ this.sendUploadData()
190
+ this.$set(this.item, 'isShowIcon', true)
191
+ this.item.isShowFilter = false
192
+ },
193
+ // 发送事件
194
+ sendUploadData () {
195
+ const uploadData = []
196
+ Object.values(this.uploadDataMap).forEach(e => {
197
+ uploadData.push(e)
198
+ })
199
+ this.$emit('condition-change', uploadData)// 向上发送数据
200
+ },
201
+ // 控制过滤条件的显示的隐藏
202
+ handleFilterClick () {
203
+ this.$emit('filter-click', this.item.isShowFilter)
204
+ this.$set(this.item, 'isShowFilter', !this.item.isShowFilter)
205
+ }
206
+ }
207
+ }
208
+ </script>
209
+ <style lang="less" scoped>
210
+ .el-popover{
211
+ .context-list{
212
+ .list-item{
213
+ display: flex;
214
+ margin: 1px 0;
215
+ padding: 2px 8px;
216
+ justify-content: space-between;
217
+ &:hover{
218
+ background-color: rgb(231, 235, 253);
219
+ }
220
+ }
221
+ .list-item-active{
222
+ color: rgb(59, 104, 252);
223
+ background-color: rgb(231, 235, 253);
224
+ }
225
+ /deep/.el-input .el-input__inner{
226
+ height: 30px;
227
+ }
228
+ &:last-child{
229
+ margin-top: 4px;
230
+ width: 100%;
231
+ display: flex;
232
+ justify-content: space-between;
233
+ }
234
+ }
235
+ .header-input{
236
+ margin-top:5px;
237
+ }
238
+ .filter-icon{
239
+ outline: none;
240
+ width: 15px;
241
+ height: 15px;
242
+ cursor: pointer;
243
+ }
244
+ }
245
+
246
+ </style>