bri-components 1.2.53 → 1.2.55
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.
- package/package.json +2 -2
- package/src/components/controls/{BriControlInput.vue → DshControlInput.vue} +15 -12
- package/src/components/controls/base/DshCascader/DshCascader.vue +260 -341
- package/src/components/controls/base/DshCascader/cascaderMixin.js +176 -0
- package/src/components/controls/base/DshCascader/cascaderModal.vue +374 -0
- package/src/components/controls/base/DshCascader/cascaderPicker.vue +406 -0
- package/src/components/controls/base/DshCascader/cascaderPickerMixin.js +202 -0
- package/src/components/controls/base/DshCoordinates.vue +6 -10
- package/src/components/controls/base/DshDate/DshDaterange.vue +15 -12
- package/src/components/controls/base/DshEditor.vue +1 -1
- package/src/components/controls/controlMixin.js +14 -4
- package/src/components/controls/senior/BriLabels.vue +5 -10
- package/src/components/controls/senior/flatTable.vue +119 -3
- package/src/components/controls/senior/flatTableImportModal.vue +279 -0
- package/src/components/controls/senior/selectDepartments.vue +5 -19
- package/src/components/controls/senior/selectUsers/{DepartmentMenu.vue → departMenu.vue} +26 -16
- package/src/components/controls/senior/selectUsers/selectUsers.vue +10 -23
- package/src/components/form/DshDefaultSearch.vue +1 -1
- package/src/components/list/DshBox/DshCrossTable.vue +13 -1
- package/src/components/small/BriTooltip.vue +6 -0
- package/src/index.js +5 -5
- package/src/styles/components/index.less +0 -1
- package/src/styles/components/list/DshBox/DshCrossTable.less +32 -22
- package/src/styles/components/small/BriTooltip.less +0 -25
- package/src/styles/global/base.less +3 -3
- package/src/styles/global/control.less +3 -3
- package/src/styles/reset-iview-other.less +21 -0
- package/src/components/controls/base/DshCascader/InfoCascader.vue +0 -319
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="
|
|
2
|
+
<div class="departMenu">
|
|
3
3
|
<div
|
|
4
4
|
v-if="!parent && canEdit"
|
|
5
5
|
:class="{
|
|
6
|
-
'
|
|
7
|
-
'
|
|
6
|
+
'departMenu-item': true,
|
|
7
|
+
'departMenu-item-select': departSelected._key === 'noDepart' || departSelected === null
|
|
8
8
|
}"
|
|
9
9
|
>
|
|
10
10
|
<div
|
|
11
11
|
:class="{
|
|
12
|
-
'
|
|
13
|
-
'
|
|
12
|
+
'departMenu-item-name': true,
|
|
13
|
+
'departMenu-item-name-select': departSelected._key === 'noDepart' || departSelected === null
|
|
14
14
|
}"
|
|
15
15
|
@click="departClick({'_key': 'noDepart'})"
|
|
16
16
|
>
|
|
@@ -22,14 +22,14 @@
|
|
|
22
22
|
v-for="(depart, departIndex) in list"
|
|
23
23
|
:key="depart._key"
|
|
24
24
|
:class="{
|
|
25
|
-
'
|
|
26
|
-
'
|
|
25
|
+
'departMenu-item': true,
|
|
26
|
+
'departMenu-item-select': departSelected._key === depart._key
|
|
27
27
|
}"
|
|
28
28
|
>
|
|
29
29
|
<div
|
|
30
30
|
:class="{
|
|
31
|
-
'
|
|
32
|
-
'
|
|
31
|
+
'departMenu-item-name': true,
|
|
32
|
+
'departMenu-item-name-select': departSelected._key === depart._key
|
|
33
33
|
}"
|
|
34
34
|
@click.stop="departClick(depart)"
|
|
35
35
|
>
|
|
@@ -39,8 +39,11 @@
|
|
|
39
39
|
:type="getIcon(depart)"
|
|
40
40
|
@click.stop="toggleChildren(depart)"
|
|
41
41
|
/>
|
|
42
|
-
<Icon
|
|
43
|
-
|
|
42
|
+
<Icon
|
|
43
|
+
v-if="useIcon"
|
|
44
|
+
custom="bico-font bri-qiye bico-qiye"
|
|
45
|
+
/>
|
|
46
|
+
<span class="departMenu-item-name-text">
|
|
44
47
|
{{ depart.name }}
|
|
45
48
|
</span>
|
|
46
49
|
</span>
|
|
@@ -54,7 +57,7 @@
|
|
|
54
57
|
</div>
|
|
55
58
|
|
|
56
59
|
<template v-if="depart.isShowChildren">
|
|
57
|
-
<
|
|
60
|
+
<depart-menu
|
|
58
61
|
style="margin-left: 15px"
|
|
59
62
|
:canEdit="canEdit"
|
|
60
63
|
:list="depart.children"
|
|
@@ -68,7 +71,7 @@
|
|
|
68
71
|
@departClick="departClick"
|
|
69
72
|
@removeDepartment="removeDepartment"
|
|
70
73
|
@upDownDepartment="upDownDepartment"
|
|
71
|
-
></
|
|
74
|
+
></depart-menu>
|
|
72
75
|
</template>
|
|
73
76
|
</div>
|
|
74
77
|
</div>
|
|
@@ -76,12 +79,17 @@
|
|
|
76
79
|
|
|
77
80
|
<script>
|
|
78
81
|
export default {
|
|
79
|
-
name: "
|
|
82
|
+
name: "departMenu",
|
|
80
83
|
props: {
|
|
81
84
|
canEdit: {
|
|
82
85
|
type: Boolean,
|
|
83
86
|
default: false
|
|
84
87
|
},
|
|
88
|
+
useIcon: {
|
|
89
|
+
type: Boolean,
|
|
90
|
+
default: true
|
|
91
|
+
},
|
|
92
|
+
|
|
85
93
|
parent: Object,
|
|
86
94
|
list: {
|
|
87
95
|
type: Array,
|
|
@@ -92,7 +100,9 @@
|
|
|
92
100
|
propSelect: {
|
|
93
101
|
type: Object,
|
|
94
102
|
default: () => {
|
|
95
|
-
return {
|
|
103
|
+
return {
|
|
104
|
+
_key: "noDepart"
|
|
105
|
+
};
|
|
96
106
|
}
|
|
97
107
|
},
|
|
98
108
|
company: {
|
|
@@ -228,7 +238,7 @@
|
|
|
228
238
|
</script>
|
|
229
239
|
|
|
230
240
|
<style lang="less">
|
|
231
|
-
.
|
|
241
|
+
.departMenu {
|
|
232
242
|
font-size: 14px;
|
|
233
243
|
|
|
234
244
|
&-item {
|
|
@@ -9,18 +9,15 @@
|
|
|
9
9
|
<div @click="clickInput">
|
|
10
10
|
<slot>
|
|
11
11
|
<!-- 编辑 -->
|
|
12
|
-
<
|
|
12
|
+
<dsh-control-input
|
|
13
13
|
v-if="canEdit"
|
|
14
|
-
:class="
|
|
15
|
-
...commonClass
|
|
16
|
-
}"
|
|
17
|
-
:canEdit="finalCanEdit"
|
|
14
|
+
:class="commonClass"
|
|
18
15
|
:value="curValList"
|
|
19
|
-
:
|
|
16
|
+
:disabled="selfPropsObj._disabled"
|
|
20
17
|
:propsObj="selfPropsObj"
|
|
21
18
|
@deleteItem="clickDeleteItem"
|
|
22
19
|
@clear="clickClear"
|
|
23
|
-
></
|
|
20
|
+
></dsh-control-input>
|
|
24
21
|
|
|
25
22
|
<!-- 表格查看 -->
|
|
26
23
|
<div
|
|
@@ -98,13 +95,14 @@
|
|
|
98
95
|
<!-- 下 -->
|
|
99
96
|
<div class="content">
|
|
100
97
|
<!-- 左 部门 -->
|
|
101
|
-
<
|
|
98
|
+
<depart-menu
|
|
102
99
|
v-if="showModal"
|
|
103
100
|
class="content-menu"
|
|
104
101
|
:canEdit="false"
|
|
102
|
+
:useIcon="false"
|
|
105
103
|
:list="departmentList"
|
|
106
104
|
@departClick="changeDepartment"
|
|
107
|
-
></
|
|
105
|
+
></depart-menu>
|
|
108
106
|
|
|
109
107
|
<!-- 右 部门对应的成员 -->
|
|
110
108
|
<div class="content-users">
|
|
@@ -203,7 +201,7 @@
|
|
|
203
201
|
|
|
204
202
|
<script>
|
|
205
203
|
import controlMixin from "../../controlMixin.js";
|
|
206
|
-
import
|
|
204
|
+
import departMenu from "./departMenu.vue";
|
|
207
205
|
|
|
208
206
|
export default {
|
|
209
207
|
name: "selectUsers",
|
|
@@ -211,7 +209,7 @@
|
|
|
211
209
|
controlMixin
|
|
212
210
|
],
|
|
213
211
|
components: {
|
|
214
|
-
|
|
212
|
+
departMenu
|
|
215
213
|
},
|
|
216
214
|
props: {},
|
|
217
215
|
data () {
|
|
@@ -282,7 +280,7 @@
|
|
|
282
280
|
computed: {
|
|
283
281
|
selfPropsObj () {
|
|
284
282
|
return {
|
|
285
|
-
|
|
283
|
+
_icon: this.multipleMode ? "ios-people" : "ios-person",
|
|
286
284
|
_highSearch: false,
|
|
287
285
|
|
|
288
286
|
...this.propsObj,
|
|
@@ -292,9 +290,6 @@
|
|
|
292
290
|
highSearch () {
|
|
293
291
|
return this.isOnSearch ? true : this.selfPropsObj._highSearch;
|
|
294
292
|
},
|
|
295
|
-
inputIcon () {
|
|
296
|
-
return this.multipleMode ? "ios-people" : "ios-person";
|
|
297
|
-
},
|
|
298
293
|
|
|
299
294
|
curCheckAll () {
|
|
300
295
|
return this.userList.length && this.userList.every(userItem =>
|
|
@@ -309,14 +304,6 @@
|
|
|
309
304
|
},
|
|
310
305
|
created () {},
|
|
311
306
|
methods: {
|
|
312
|
-
// 外部也在使用
|
|
313
|
-
openModal () {
|
|
314
|
-
this.showModal = true;
|
|
315
|
-
},
|
|
316
|
-
closeModal () {
|
|
317
|
-
this.showModal = false;
|
|
318
|
-
},
|
|
319
|
-
|
|
320
307
|
clickInput () {
|
|
321
308
|
if (this.finalCanEdit) {
|
|
322
309
|
this.openModal();
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<!-- 左 表头列 -->
|
|
4
4
|
<div
|
|
5
5
|
class="DshCrossTable-left"
|
|
6
|
-
:style="renderTableBoxStyle"
|
|
6
|
+
:style="renderTableBoxStyle + `;width: ${propsObj.titleWidth ? propsObj.titleWidth : 160}px`"
|
|
7
7
|
>
|
|
8
8
|
<!-- 多选框 和 序号 -->
|
|
9
9
|
<div
|
|
@@ -112,6 +112,18 @@
|
|
|
112
112
|
|
|
113
113
|
<template v-else>
|
|
114
114
|
{{ colItem.title }}
|
|
115
|
+
<Tooltip
|
|
116
|
+
v-if="colItem._comment"
|
|
117
|
+
:content="colItem._comment"
|
|
118
|
+
:transfer="true"
|
|
119
|
+
placement="top-start"
|
|
120
|
+
max-width="200"
|
|
121
|
+
>
|
|
122
|
+
<Icon
|
|
123
|
+
type="ios-help-circle-outline"
|
|
124
|
+
size="16"
|
|
125
|
+
/>
|
|
126
|
+
</Tooltip>
|
|
115
127
|
</template>
|
|
116
128
|
</slot>
|
|
117
129
|
</div>
|
package/src/index.js
CHANGED
|
@@ -25,7 +25,7 @@ import DshDefaultSearch from "./components/form/DshDefaultSearch.vue";
|
|
|
25
25
|
import DshFormUnit from "./components/unit/DshFormUnit.vue";
|
|
26
26
|
import DshListUnit from "./components/unit/DshListUnit.vue";
|
|
27
27
|
// controls
|
|
28
|
-
import
|
|
28
|
+
import DshControlInput from "./components/controls/DshControlInput.vue";
|
|
29
29
|
import DshInput from "./components/controls/base/DshInput/DshInput.vue";
|
|
30
30
|
import DshNumber from "./components/controls/base/DshNumber/DshNumber.vue";
|
|
31
31
|
import DshSelect from "./components/controls/base/DshSelect/DshSelect.vue";
|
|
@@ -79,7 +79,7 @@ import DshDivider from "./components/controls/base/DshDivider.vue";
|
|
|
79
79
|
|
|
80
80
|
import DshPackage from "./components/controls/senior/DshPackage.vue";
|
|
81
81
|
import selectUsers from "./components/controls/senior/selectUsers/selectUsers.vue";
|
|
82
|
-
import
|
|
82
|
+
import departMenu from "./components/controls/senior/selectUsers/departMenu.vue";
|
|
83
83
|
import selectDepartments from "./components/controls/senior/selectDepartments.vue";
|
|
84
84
|
|
|
85
85
|
// import DshBack from "./components/controls/special/DshBack.vue";
|
|
@@ -115,7 +115,7 @@ const map = {
|
|
|
115
115
|
DshFormUnit,
|
|
116
116
|
DshListUnit,
|
|
117
117
|
// controls
|
|
118
|
-
|
|
118
|
+
DshControlInput,
|
|
119
119
|
DshInput,
|
|
120
120
|
DshNumber,
|
|
121
121
|
DshSelect,
|
|
@@ -195,7 +195,7 @@ export {
|
|
|
195
195
|
DshFormUnit,
|
|
196
196
|
DshListUnit,
|
|
197
197
|
// controls
|
|
198
|
-
|
|
198
|
+
DshControlInput,
|
|
199
199
|
DshInput,
|
|
200
200
|
DshNumber,
|
|
201
201
|
DshSelect,
|
|
@@ -249,7 +249,7 @@ export {
|
|
|
249
249
|
// DshBack,
|
|
250
250
|
// DshUndeveloped,
|
|
251
251
|
selectUsers,
|
|
252
|
-
|
|
252
|
+
departMenu,
|
|
253
253
|
selectDepartments,
|
|
254
254
|
|
|
255
255
|
DshMenuNav,
|
|
@@ -15,12 +15,14 @@
|
|
|
15
15
|
&-header {
|
|
16
16
|
width: 100%;
|
|
17
17
|
}
|
|
18
|
+
|
|
18
19
|
&-body {
|
|
19
20
|
width: 100%;
|
|
20
21
|
flex: 1;
|
|
21
22
|
min-height: 0px;
|
|
22
23
|
overflow: scroll;
|
|
23
24
|
}
|
|
25
|
+
|
|
24
26
|
&-footer {
|
|
25
27
|
width: 100%;
|
|
26
28
|
height: 38px;
|
|
@@ -38,9 +40,15 @@
|
|
|
38
40
|
&-header {
|
|
39
41
|
overflow: hidden;
|
|
40
42
|
}
|
|
43
|
+
|
|
41
44
|
&-body {
|
|
42
45
|
overflow: hidden;
|
|
46
|
+
|
|
47
|
+
td {
|
|
48
|
+
width: 100% !important;
|
|
49
|
+
}
|
|
43
50
|
}
|
|
51
|
+
|
|
44
52
|
&-footer {
|
|
45
53
|
overflow: hidden;
|
|
46
54
|
}
|
|
@@ -55,9 +63,11 @@
|
|
|
55
63
|
&-header {
|
|
56
64
|
overflow: hidden;
|
|
57
65
|
}
|
|
66
|
+
|
|
58
67
|
&-body {
|
|
59
68
|
overflow: scroll;
|
|
60
69
|
}
|
|
70
|
+
|
|
61
71
|
&-footer {
|
|
62
72
|
overflow: hidden;
|
|
63
73
|
}
|
|
@@ -66,21 +76,20 @@
|
|
|
66
76
|
&-row {
|
|
67
77
|
// height: 40px;
|
|
68
78
|
}
|
|
79
|
+
|
|
69
80
|
&-col {
|
|
70
|
-
width: 160px!important;
|
|
81
|
+
width: 160px !important;
|
|
71
82
|
font-weight: bold;
|
|
72
83
|
color: #5D5D5D;
|
|
84
|
+
|
|
73
85
|
&-checkbox,
|
|
74
86
|
&-index,
|
|
75
|
-
&-operation {
|
|
76
|
-
}
|
|
87
|
+
&-operation {}
|
|
77
88
|
|
|
78
|
-
&-Checkbox {
|
|
89
|
+
&-Checkbox {}
|
|
79
90
|
|
|
80
|
-
}
|
|
81
|
-
&-index {
|
|
91
|
+
&-index {}
|
|
82
92
|
|
|
83
|
-
}
|
|
84
93
|
&-content {
|
|
85
94
|
.crossTable-col {
|
|
86
95
|
width: 100%;
|
|
@@ -98,36 +107,33 @@
|
|
|
98
107
|
}
|
|
99
108
|
}
|
|
100
109
|
}
|
|
101
|
-
&-operation {
|
|
102
110
|
|
|
103
|
-
}
|
|
111
|
+
&-operation {}
|
|
104
112
|
}
|
|
113
|
+
|
|
105
114
|
&-td {
|
|
115
|
+
|
|
106
116
|
&-checkbox,
|
|
107
117
|
&-index,
|
|
108
|
-
&-operation {
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
&-Checkbox {
|
|
118
|
+
&-operation {}
|
|
112
119
|
|
|
113
|
-
}
|
|
114
|
-
&-index {
|
|
120
|
+
&-Checkbox {}
|
|
115
121
|
|
|
116
|
-
}
|
|
117
|
-
&-content {
|
|
122
|
+
&-index {}
|
|
118
123
|
|
|
119
|
-
}
|
|
120
|
-
&-operation {
|
|
124
|
+
&-content {}
|
|
121
125
|
|
|
122
|
-
}
|
|
126
|
+
&-operation {}
|
|
123
127
|
}
|
|
124
128
|
|
|
125
129
|
table {
|
|
126
130
|
width: 100%;
|
|
131
|
+
|
|
127
132
|
tr {
|
|
128
133
|
height: 39px;
|
|
129
134
|
font-size: 12px;
|
|
130
135
|
overflow: hidden;
|
|
136
|
+
|
|
131
137
|
td {
|
|
132
138
|
display: inline-block;
|
|
133
139
|
width: 200px;
|
|
@@ -138,6 +144,7 @@
|
|
|
138
144
|
border-bottom: 1px solid #EDEDED;
|
|
139
145
|
cursor: pointer;
|
|
140
146
|
overflow: hidden;
|
|
147
|
+
|
|
141
148
|
.td-content {
|
|
142
149
|
width: 100%;
|
|
143
150
|
height: 100%;
|
|
@@ -148,14 +155,16 @@
|
|
|
148
155
|
}
|
|
149
156
|
}
|
|
150
157
|
}
|
|
158
|
+
|
|
151
159
|
.cross-table-box {
|
|
152
160
|
height: 38px;
|
|
153
161
|
padding: 7px 0;
|
|
162
|
+
|
|
154
163
|
&-content {
|
|
155
164
|
width: auto;
|
|
156
165
|
border-radius: 2px;
|
|
157
166
|
border: 1px solid #6daef2;
|
|
158
|
-
font-size: 12px!important;
|
|
167
|
+
font-size: 12px !important;
|
|
159
168
|
color: #6DAEF2;
|
|
160
169
|
cursor: pointer;
|
|
161
170
|
height: 24px;
|
|
@@ -166,9 +175,10 @@
|
|
|
166
175
|
word-break: keep-all;
|
|
167
176
|
white-space: nowrap;
|
|
168
177
|
text-overflow: ellipsis;
|
|
178
|
+
|
|
169
179
|
i {
|
|
170
180
|
margin-right: 5px;
|
|
171
|
-
font-size: 12px!important;
|
|
181
|
+
font-size: 12px !important;
|
|
172
182
|
}
|
|
173
183
|
}
|
|
174
184
|
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
.BriTooltip {
|
|
2
|
-
display: flex;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
.ivu-tooltip {
|
|
6
|
-
&-arrow {
|
|
7
|
-
border-bottom-color: @textColor !important;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
&-inner {
|
|
11
|
-
padding: 5px 8px;
|
|
12
|
-
border-radius: 4px;
|
|
13
|
-
line-height: 22px;
|
|
14
|
-
background: @textColor;
|
|
15
|
-
font-size: 14px;
|
|
16
|
-
font-weight: 400;
|
|
17
|
-
color: @textWhColor;
|
|
18
|
-
max-height: 350px;
|
|
19
|
-
overflow: auto;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
&-rel {
|
|
23
|
-
width: 100%;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -42,14 +42,14 @@
|
|
|
42
42
|
padding: 20px 10px;
|
|
43
43
|
text-align: center;
|
|
44
44
|
font-size: 14px;
|
|
45
|
-
color: @
|
|
45
|
+
color: @placeholderColor;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
#btn-style {
|
|
49
49
|
background: #F4F8FF;
|
|
50
|
-
|
|
50
|
+
border: 1px solid #6694ED;
|
|
51
51
|
border-radius: 4px;
|
|
52
52
|
font-weight: bold;
|
|
53
53
|
font-family: titleFontFamily;
|
|
54
|
-
|
|
54
|
+
color: @themeColor;
|
|
55
55
|
}
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
border: 1px solid @borderColor;
|
|
4
4
|
border-radius: @borderRadius;
|
|
5
5
|
background: @inputBg;
|
|
6
|
-
cursor: pointer;
|
|
7
6
|
color: @textColor;
|
|
7
|
+
cursor: pointer;
|
|
8
8
|
}
|
|
9
9
|
.bri-control-disabled {
|
|
10
10
|
border: 1px solid @border-disabled;
|
|
11
11
|
border-radius: @borderRadius;
|
|
12
12
|
background: @inputBg-disabled;
|
|
13
|
-
cursor: not-allowed;
|
|
14
13
|
color: @textColor;
|
|
14
|
+
cursor: not-allowed;
|
|
15
15
|
|
|
16
16
|
&.bri-control-nodata {
|
|
17
17
|
color: @placeholder-disabled-color;
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
// border: 1px solid @border-readonly;
|
|
22
22
|
// border-radius: @borderRadius;
|
|
23
23
|
// background: @inputBg-readonly;
|
|
24
|
-
// cursor: not-allowed;
|
|
25
24
|
// color: @textColor-readonly;
|
|
25
|
+
// cursor: not-allowed;
|
|
26
26
|
|
|
27
27
|
// .ivu-icon {
|
|
28
28
|
// color: @textColor-readonly;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.ivu-tooltip {
|
|
2
|
+
&-arrow {
|
|
3
|
+
border-bottom-color: @textColor !important;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
&-inner {
|
|
7
|
+
padding: 5px 8px;
|
|
8
|
+
border-radius: 4px;
|
|
9
|
+
line-height: 22px;
|
|
10
|
+
background: @textColor;
|
|
11
|
+
font-size: 14px;
|
|
12
|
+
font-weight: 400;
|
|
13
|
+
color: @textWhColor;
|
|
14
|
+
max-height: 350px;
|
|
15
|
+
overflow: auto;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&-rel {
|
|
19
|
+
width: 100%;
|
|
20
|
+
}
|
|
21
|
+
}
|