bri-components 1.5.22 → 1.6.1

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 (154) hide show
  1. package/README.md +83 -83
  2. package/lib/styles/bundle.css +12 -12
  3. package/lib/styles/font/fontello.svg +31 -31
  4. package/package.json +127 -125
  5. package/src/components/Error/Error403.vue +42 -42
  6. package/src/components/Error/Error404.vue +40 -40
  7. package/src/components/Error/Error500.vue +51 -51
  8. package/src/components/Error/error.less +162 -162
  9. package/src/components/Error/errorBack.vue +40 -40
  10. package/src/components/controls/DshControlInput.vue +195 -195
  11. package/src/components/controls/base/BriUpload/BriUpload.vue +435 -434
  12. package/src/components/controls/base/BriUpload/BriUploadImage.vue +430 -377
  13. package/src/components/controls/base/BriUpload/uploadList.vue +738 -727
  14. package/src/components/controls/base/BriUpload/uploadMixin.js +453 -446
  15. package/src/components/controls/base/DshCascader/DshCascader.vue +215 -215
  16. package/src/components/controls/base/DshCascader/components/cascaderModal.vue +366 -366
  17. package/src/components/controls/base/DshCascader/components/cascaderPicker.vue +416 -416
  18. package/src/components/controls/base/DshCascader/components/cascaderSimple.vue +141 -141
  19. package/src/components/controls/base/DshCascader/components/cascaderTree.vue +151 -151
  20. package/src/components/controls/base/DshCoordinates.vue +587 -585
  21. package/src/components/controls/base/DshDate/DshDate.vue +191 -191
  22. package/src/components/controls/base/DshDate/DshDaterange.vue +186 -186
  23. package/src/components/controls/base/DshDivider.vue +201 -201
  24. package/src/components/controls/base/DshEditor.vue +274 -274
  25. package/src/components/controls/base/DshInput/BriInputs.vue +166 -166
  26. package/src/components/controls/base/DshInput/DshInput.vue +260 -260
  27. package/src/components/controls/base/DshNumber/BriInputNumber/BriInputNumber.vue +435 -435
  28. package/src/components/controls/base/DshNumber/BriInputNumber/mixins/emitter.js +34 -34
  29. package/src/components/controls/base/DshNumber/BriInputNumber/mixins/form.js +14 -14
  30. package/src/components/controls/base/DshNumber/BriInputNumber/utils/assist.js +322 -322
  31. package/src/components/controls/base/DshNumber/DshNumber.vue +143 -143
  32. package/src/components/controls/base/DshNumber/DshNumberange.vue +109 -109
  33. package/src/components/controls/base/DshSelect/DshCheckbox.vue +168 -168
  34. package/src/components/controls/base/DshSelect/DshSelect.vue +180 -180
  35. package/src/components/controls/base/DshSelect/DshSelectAll.vue +269 -269
  36. package/src/components/controls/base/DshSwitch/DshSwitch.vue +115 -115
  37. package/src/components/controls/control.less +324 -324
  38. package/src/components/controls/controlMap.js +117 -117
  39. package/src/components/controls/extra/DshColor.vue +81 -81
  40. package/src/components/controls/extra/DshThemeColor.vue +100 -100
  41. package/src/components/controls/extra/DshThemeIcon.vue +122 -122
  42. package/src/components/controls/mixins/cascaderMixin.js +325 -325
  43. package/src/components/controls/mixins/cascaderPickerMixin.js +227 -227
  44. package/src/components/controls/mixins/cascaderTableMixin.js +130 -130
  45. package/src/components/controls/mixins/controlMixin.js +393 -393
  46. package/src/components/controls/mixins/dateMixin.js +149 -149
  47. package/src/components/controls/mixins/flatTableMixin.js +111 -111
  48. package/src/components/controls/mixins/numberMixin.js +112 -112
  49. package/src/components/controls/mixins/selectMixin.js +233 -233
  50. package/src/components/controls/mixins/switchMixin.js +87 -87
  51. package/src/components/controls/mixins/userAndDepartMixin.js +260 -260
  52. package/src/components/controls/senior/DshLabels.vue +333 -333
  53. package/src/components/controls/senior/DshPackage.vue +57 -57
  54. package/src/components/controls/senior/cascaderTable.vue +213 -213
  55. package/src/components/controls/senior/correlation.vue +135 -135
  56. package/src/components/controls/senior/flatTable.vue +138 -138
  57. package/src/components/controls/senior/selectDepartments.vue +397 -399
  58. package/src/components/controls/senior/selectUsers/departMenu.vue +296 -293
  59. package/src/components/controls/senior/selectUsers/selectUsers.vue +712 -712
  60. package/src/components/controls/special/DshBack.vue +42 -42
  61. package/src/components/controls/special/DshUndeveloped.vue +41 -41
  62. package/src/components/form/DshAdvSearch.vue +510 -510
  63. package/src/components/form/DshDefaultSearch.vue +260 -260
  64. package/src/components/form/DshForm.vue +494 -494
  65. package/src/components/form/searchMixin.js +376 -376
  66. package/src/components/list/BriCard.vue +95 -95
  67. package/src/components/list/BriTable.vue +205 -205
  68. package/src/components/list/BriTree.vue +529 -529
  69. package/src/components/list/BriTreeItem.vue +163 -163
  70. package/src/components/list/DshBox/DshBox.vue +219 -219
  71. package/src/components/list/DshBox/DshCard.vue +446 -446
  72. package/src/components/list/DshBox/DshCrossTable.vue +827 -827
  73. package/src/components/list/DshBox/DshList.vue +404 -404
  74. package/src/components/list/DshBox/DshPanel.vue +669 -669
  75. package/src/components/list/DshBox/DshSingleData.vue +119 -119
  76. package/src/components/list/DshBox/DshTable.vue +239 -239
  77. package/src/components/list/DshCascaderTable.vue +115 -115
  78. package/src/components/list/DshFlatTable.vue +334 -337
  79. package/src/components/list/DshPage.vue +194 -194
  80. package/src/components/list/DshTreeTable.vue +113 -113
  81. package/src/components/list/common/importModal.vue +243 -243
  82. package/src/components/list/common/quoteListModal.vue +206 -206
  83. package/src/components/list/mixins/DshCascaderTableMixin.js +278 -278
  84. package/src/components/list/mixins/DshFlatTableMixin.js +509 -509
  85. package/src/components/list/mixins/DshTreeTableMixin.js +286 -286
  86. package/src/components/list/mixins/tableBaseMixin.js +1653 -1653
  87. package/src/components/list/mixins/treeTableBaseMixin.js +145 -145
  88. package/src/components/other/BriAvatar.vue +166 -166
  89. package/src/components/other/BriCode.vue +125 -125
  90. package/src/components/other/BriCollapseTree.vue +207 -207
  91. package/src/components/other/BriGantt.vue +1087 -1087
  92. package/src/components/other/BriIframe.vue +116 -116
  93. package/src/components/other/BriLoading.vue +171 -171
  94. package/src/components/other/BriSvg.vue +27 -27
  95. package/src/components/other/DshColorPanel.vue +128 -128
  96. package/src/components/other/DshMenuNav.vue +188 -188
  97. package/src/components/other/DshVideoPlayer.vue +184 -0
  98. package/src/components/small/BriButton.vue +71 -71
  99. package/src/components/small/BriDrawer.vue +169 -169
  100. package/src/components/small/BriTooltip.vue +87 -87
  101. package/src/components/small/DshBtnModal.vue +68 -68
  102. package/src/components/small/DshButtons.vue +324 -324
  103. package/src/components/small/DshDropdown.vue +225 -225
  104. package/src/components/small/DshIcons.vue +59 -59
  105. package/src/components/small/DshListRender.js +21 -21
  106. package/src/components/small/DshModal.vue +160 -160
  107. package/src/components/small/DshSteps.vue +141 -141
  108. package/src/components/small/DshTabs.vue +598 -598
  109. package/src/components/small/DshTabsSet.vue +309 -309
  110. package/src/components/small/DshTags.vue +251 -251
  111. package/src/components/small/DshTitle.vue +50 -50
  112. package/src/components/small/render.js +20 -20
  113. package/src/components/unit/DshFormUnit.vue +398 -398
  114. package/src/components/unit/DshListUnit.vue +115 -115
  115. package/src/components/unit/unitMixin.js +86 -86
  116. package/src/data/index.js +4 -4
  117. package/src/index.js +287 -285
  118. package/src/styles/bundle.css +12 -12
  119. package/src/styles/components/BriButton.less +307 -307
  120. package/src/styles/components/BriTable.less +344 -344
  121. package/src/styles/components/DshModal.less +257 -257
  122. package/src/styles/components/index.less +3 -3
  123. package/src/styles/global/animate.less +11 -11
  124. package/src/styles/global/base.less +45 -45
  125. package/src/styles/global/box.less +186 -186
  126. package/src/styles/global/control.less +122 -122
  127. package/src/styles/global/flex.less +282 -282
  128. package/src/styles/global/global.less +8 -8
  129. package/src/styles/global/text.less +59 -59
  130. package/src/styles/global/variables.less +85 -85
  131. package/src/styles/iconfont/iconfont.css +254 -254
  132. package/src/styles/iconfont/iconfont.json +422 -422
  133. package/src/styles/iconfont/iconfont.svg +137 -137
  134. package/src/styles/index.less +26 -26
  135. package/src/styles/reset-easytable.less +21 -21
  136. package/src/styles/reset-iview-controls.less +145 -145
  137. package/src/styles/reset-iview-other.less +49 -49
  138. package/src/styles/reset-iview-variables.less +43 -43
  139. package/src/styles/reset.less +45 -45
  140. package/src/utils/index.js +3 -5
  141. package/lib/0.bri-components.min.js +0 -1
  142. package/lib/1.bri-components.min.js +0 -1
  143. package/lib/10.bri-components.min.js +0 -1
  144. package/lib/11.bri-components.min.js +0 -1
  145. package/lib/2.bri-components.min.js +0 -1
  146. package/lib/3.bri-components.min.js +0 -1
  147. package/lib/4.bri-components.min.js +0 -1
  148. package/lib/5.bri-components.min.js +0 -1
  149. package/lib/6.bri-components.min.js +0 -1
  150. package/lib/7.bri-components.min.js +0 -1
  151. package/lib/8.bri-components.min.js +0 -1
  152. package/lib/9.bri-components.min.js +0 -1
  153. package/lib/bri-components.min.js +0 -18
  154. package/src/utils/table.js +0 -175
@@ -1,293 +1,296 @@
1
- <template>
2
- <div class="departMenu">
3
- <div
4
- v-if="!parent && canEdit"
5
- :class="{
6
- 'departMenu-item': true,
7
- 'departMenu-item-select': departSelected._key === 'noDepart' || departSelected === null
8
- }"
9
- >
10
- <div
11
- :class="{
12
- 'departMenu-item-name': true,
13
- 'departMenu-item-name-select': departSelected._key === 'noDepart' || departSelected === null
14
- }"
15
- @click="departClick({'_key': 'noDepart'})"
16
- >
17
- 无部门员工
18
- </div>
19
- </div>
20
-
21
- <div
22
- v-for="(depart, departIndex) in list"
23
- :key="depart._key"
24
- :class="{
25
- 'departMenu-item': true,
26
- 'departMenu-item-select': departSelected._key === depart._key
27
- }"
28
- >
29
- <div
30
- :class="{
31
- 'departMenu-item-name': true,
32
- 'departMenu-item-name-select': departSelected._key === depart._key
33
- }"
34
- @click.stop="departClick(depart)"
35
- >
36
- <span>
37
- <Icon
38
- v-if="depart.children && depart.children.length"
39
- :type="getIcon(depart)"
40
- @click.stop="toggleChildren(depart)"
41
- />
42
- <span v-else style="margin-right:1px"></span>
43
- <Icon
44
- v-if="useIcon"
45
- custom="bico-font bri-qiye bico-qiye"
46
- />
47
- <span class="departMenu-item-name-text">
48
- {{ depart.name }}
49
- </span>
50
- </span>
51
-
52
- <dsh-dropdown
53
- v-if="canEdit"
54
- trigger="hover"
55
- :list="dropdownList"
56
- @click="$dispatchEvent($event, undefined, depart, departIndex, parent)"
57
- ></dsh-dropdown>
58
- </div>
59
-
60
- <template v-if="depart.isShowChildren">
61
- <depart-menu
62
- style="margin-left: 20px"
63
- :canEdit="canEdit"
64
- :list="depart.children"
65
- :parent="depart"
66
- :propSelect="departSelected"
67
- :propsDropdownList="propsDropdownList"
68
- :company="company"
69
- @showAddModal="showAddModal"
70
- @showChange="showChilrenChange"
71
- @deleteDepart="deleteDepart"
72
- @departClick="departClick"
73
- @removeDepartment="removeDepartment"
74
- @upDownDepartment="upDownDepartment"
75
- ></depart-menu>
76
- </template>
77
- </div>
78
- </div>
79
- </template>
80
-
81
- <script>
82
- export default {
83
- name: "departMenu",
84
- props: {
85
- canEdit: {
86
- type: Boolean,
87
- default: false
88
- },
89
- useIcon: {
90
- type: Boolean,
91
- default: true
92
- },
93
-
94
- parent: Object,
95
- list: {
96
- type: Array,
97
- default () {
98
- return [];
99
- }
100
- },
101
- propSelect: {
102
- type: Object,
103
- default: () => {
104
- return {
105
- _key: "noDepart"
106
- };
107
- }
108
- },
109
- company: {
110
- type: Object,
111
- default: () => {
112
- return {};
113
- }
114
- },
115
- propsDropdownList: Array
116
- },
117
- data () {
118
- return {
119
- deleteModal: true,
120
- initDropdownList: [
121
- {
122
- name: "修改部门信息",
123
- type: "change",
124
- event: "showChange",
125
- icon: "ios-create-outline"
126
- }
127
- ]
128
- };
129
- },
130
- computed: {
131
- departSelected: {
132
- get () {
133
- return this.propSelect;
134
- },
135
- set (val) {
136
- this.propSelect._key = val._key;
137
- }
138
- },
139
-
140
- dropdownList () {
141
- if (this.propsDropdownList) {
142
- return this.propsDropdownList;
143
- } else {
144
- return this.company.allowAddDepartment
145
- ? [
146
- {
147
- name: "添加下级部门",
148
- type: "addSub",
149
- event: "addSubDepartment",
150
- icon: "ios-add-circle-outline"
151
- },
152
- ...this.initDropdownList,
153
- {
154
- name: "删除部门",
155
- type: "delete",
156
- event: "tipDelete",
157
- icon: "ios-trash-outline"
158
- },
159
- {
160
- name: "移动部门",
161
- type: "remove",
162
- event: "removeDepartment",
163
- icon: "ios-move"
164
- },
165
- {
166
- name: "向上移动",
167
- type: "up",
168
- event: "upDownDepartment",
169
- icon: "md-arrow-up"
170
- },
171
- {
172
- name: "向下移动",
173
- type: "down",
174
- event: "upDownDepartment",
175
- icon: "md-arrow-down"
176
- }
177
- ]
178
- : this.initDropdownList;
179
- }
180
- }
181
- },
182
- created () {},
183
- methods: {
184
- addSubDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
185
- this.$emit("showAddModal", current);
186
- },
187
- addPeerDepartment () {
188
- this.$emit("showAddModal", this.parent);
189
- },
190
- departClick (department) {
191
- this.departSelected = department;
192
- this.$emit("departClick", department);
193
- },
194
- toggleChildren (depart) {
195
- depart.isShowChildren = !depart.isShowChildren;
196
- this.$forceUpdate();
197
- },
198
- showAddModal (parent) {
199
- this.$emit("showAddModal", parent);
200
- },
201
- deleteDepart (current) {
202
- this.departSelected = {_key: "noDepart"};
203
- this.$emit("deleteDepart", current);
204
- },
205
- // 提示删除
206
- tipDelete (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
207
- this.$Modal.confirm({
208
- title: "警告",
209
- content: "确定要删除该部门吗?",
210
- onOk: () => {
211
- this.deleteDepart(current);
212
- },
213
- onCancel: () => {
214
- this.$Message.info("已取消!");
215
- }
216
- });
217
- },
218
- // 修改部门
219
- showChange (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
220
- this.$emit("showChange", current);
221
- },
222
- showChilrenChange (depart) {
223
- this.$emit("showChange", depart);
224
- },
225
- // 移动部门
226
- removeDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
227
- this.$emit("removeDepartment", dropdownItem, dropdownIndex, current, currentUserIndex, parent);
228
- },
229
- // 向上移动部门
230
- upDownDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
231
- this.$emit("upDownDepartment", dropdownItem, dropdownIndex, current, currentUserIndex, parent);
232
- },
233
-
234
- getIcon (depart) {
235
- return depart.isShowChildren ? "ios-arrow-down" : "ios-arrow-forward";
236
- }
237
- }
238
- };
239
- </script>
240
-
241
- <style lang="less">
242
- .departMenu {
243
- font-size: 14px;
244
-
245
- &-item {
246
- width: 100%;
247
- line-height: 38px;
248
- text-align: left;
249
- cursor: pointer;
250
- overflow: hidden;
251
- border-radius: 6px;
252
-
253
- .ivu-icon {
254
- color: @textColor;
255
- }
256
-
257
- &-name {
258
- display: flex;
259
- justify-content: space-between;
260
- align-items: flex-start;
261
- padding: 8px 5px 8px 20px;
262
- line-height: 24px;
263
- font-weight: 400;
264
- font-size: 16px;
265
- color: @textColor;
266
-
267
- &:hover {
268
- background-color: rgba(36, 36, 63, 0.03);
269
- }
270
-
271
- &-select {
272
- background-color: rgba(36, 36, 63, 0.03);
273
- font-weight: 500;
274
- color: @themeColor;
275
- position: relative;
276
-
277
- &::before {
278
- position: absolute;
279
- left: 0px;
280
- top: 5px;
281
- bottom: 5px;
282
-
283
- content: "";
284
- display: block;
285
- width: 4px;
286
- border-radius: 2px 0px 0px 2px;
287
- background-color: @themeColor;
288
- }
289
- }
290
- }
291
- }
292
- }
293
- </style>
1
+ <template>
2
+ <div class="departMenu">
3
+ <div
4
+ v-if="!parent && canEdit"
5
+ :class="{
6
+ 'departMenu-item': true,
7
+ 'departMenu-item-select': departSelected._key === 'noDepart' || departSelected === null
8
+ }"
9
+ >
10
+ <div
11
+ :class="{
12
+ 'departMenu-item-name': true,
13
+ 'departMenu-item-name-select': departSelected._key === 'noDepart' || departSelected === null
14
+ }"
15
+ @click="departClick({'_key': 'noDepart'})"
16
+ >
17
+ 无部门员工
18
+ </div>
19
+ </div>
20
+
21
+ <div
22
+ v-for="(depart, departIndex) in list"
23
+ :key="depart._key"
24
+ :class="{
25
+ 'departMenu-item': true,
26
+ 'departMenu-item-select': departSelected._key === depart._key
27
+ }"
28
+ >
29
+ <div
30
+ :class="{
31
+ 'departMenu-item-name': true,
32
+ 'departMenu-item-name-select': departSelected._key === depart._key
33
+ }"
34
+ @click.stop="departClick(depart)"
35
+ >
36
+ <span>
37
+ <Icon
38
+ v-if="depart.children && depart.children.length"
39
+ :type="getIcon(depart)"
40
+ @click.stop="toggleChildren(depart)"
41
+ />
42
+ <span
43
+ v-else
44
+ style="margin-right:1px"
45
+ ></span>
46
+ <Icon
47
+ v-if="useIcon"
48
+ custom="bico-font bri-qiye bico-qiye"
49
+ />
50
+ <span class="departMenu-item-name-text">
51
+ {{ depart.name }}
52
+ </span>
53
+ </span>
54
+
55
+ <dsh-dropdown
56
+ v-if="canEdit"
57
+ trigger="hover"
58
+ :list="dropdownList"
59
+ @click="$dispatchEvent($event, undefined, depart, departIndex, parent)"
60
+ ></dsh-dropdown>
61
+ </div>
62
+
63
+ <template v-if="depart.isShowChildren">
64
+ <depart-menu
65
+ style="margin-left: 20px"
66
+ :canEdit="canEdit"
67
+ :list="depart.children"
68
+ :parent="depart"
69
+ :propSelect="departSelected"
70
+ :propsDropdownList="propsDropdownList"
71
+ :company="company"
72
+ @showAddModal="showAddModal"
73
+ @showChange="showChilrenChange"
74
+ @deleteDepart="deleteDepart"
75
+ @departClick="departClick"
76
+ @removeDepartment="removeDepartment"
77
+ @upDownDepartment="upDownDepartment"
78
+ ></depart-menu>
79
+ </template>
80
+ </div>
81
+ </div>
82
+ </template>
83
+
84
+ <script>
85
+ export default {
86
+ name: "departMenu",
87
+ props: {
88
+ canEdit: {
89
+ type: Boolean,
90
+ default: false
91
+ },
92
+ useIcon: {
93
+ type: Boolean,
94
+ default: true
95
+ },
96
+
97
+ parent: Object,
98
+ list: {
99
+ type: Array,
100
+ default () {
101
+ return [];
102
+ }
103
+ },
104
+ propSelect: {
105
+ type: Object,
106
+ default: () => {
107
+ return {
108
+ _key: "noDepart"
109
+ };
110
+ }
111
+ },
112
+ company: {
113
+ type: Object,
114
+ default: () => {
115
+ return {};
116
+ }
117
+ },
118
+ propsDropdownList: Array
119
+ },
120
+ data () {
121
+ return {
122
+ deleteModal: true,
123
+ initDropdownList: [
124
+ {
125
+ name: "修改部门信息",
126
+ type: "change",
127
+ event: "showChange",
128
+ icon: "ios-create-outline"
129
+ }
130
+ ]
131
+ };
132
+ },
133
+ computed: {
134
+ departSelected: {
135
+ get () {
136
+ return this.propSelect;
137
+ },
138
+ set (val) {
139
+ this.propSelect._key = val._key;
140
+ }
141
+ },
142
+
143
+ dropdownList () {
144
+ if (this.propsDropdownList) {
145
+ return this.propsDropdownList;
146
+ } else {
147
+ return this.company.allowAddDepartment
148
+ ? [
149
+ {
150
+ name: "添加下级部门",
151
+ type: "addSub",
152
+ event: "addSubDepartment",
153
+ icon: "ios-add-circle-outline"
154
+ },
155
+ ...this.initDropdownList,
156
+ {
157
+ name: "删除部门",
158
+ type: "delete",
159
+ event: "tipDelete",
160
+ icon: "ios-trash-outline"
161
+ },
162
+ {
163
+ name: "移动部门",
164
+ type: "remove",
165
+ event: "removeDepartment",
166
+ icon: "ios-move"
167
+ },
168
+ {
169
+ name: "向上移动",
170
+ type: "up",
171
+ event: "upDownDepartment",
172
+ icon: "md-arrow-up"
173
+ },
174
+ {
175
+ name: "向下移动",
176
+ type: "down",
177
+ event: "upDownDepartment",
178
+ icon: "md-arrow-down"
179
+ }
180
+ ]
181
+ : this.initDropdownList;
182
+ }
183
+ }
184
+ },
185
+ created () {},
186
+ methods: {
187
+ addSubDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
188
+ this.$emit("showAddModal", current);
189
+ },
190
+ addPeerDepartment () {
191
+ this.$emit("showAddModal", this.parent);
192
+ },
193
+ departClick (department) {
194
+ this.departSelected = department;
195
+ this.$emit("departClick", department);
196
+ },
197
+ toggleChildren (depart) {
198
+ depart.isShowChildren = !depart.isShowChildren;
199
+ this.$forceUpdate();
200
+ },
201
+ showAddModal (parent) {
202
+ this.$emit("showAddModal", parent);
203
+ },
204
+ deleteDepart (current) {
205
+ this.departSelected = { _key: "noDepart" };
206
+ this.$emit("deleteDepart", current);
207
+ },
208
+ // 提示删除
209
+ tipDelete (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
210
+ this.$Modal.confirm({
211
+ title: "警告",
212
+ content: "确定要删除该部门吗?",
213
+ onOk: () => {
214
+ this.deleteDepart(current);
215
+ },
216
+ onCancel: () => {
217
+ this.$Message.info("已取消!");
218
+ }
219
+ });
220
+ },
221
+ // 修改部门
222
+ showChange (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
223
+ this.$emit("showChange", current);
224
+ },
225
+ showChilrenChange (depart) {
226
+ this.$emit("showChange", depart);
227
+ },
228
+ // 移动部门
229
+ removeDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
230
+ this.$emit("removeDepartment", dropdownItem, dropdownIndex, current, currentUserIndex, parent);
231
+ },
232
+ // 向上移动部门
233
+ upDownDepartment (dropdownItem, dropdownIndex, current, currentUserIndex, parent) {
234
+ this.$emit("upDownDepartment", dropdownItem, dropdownIndex, current, currentUserIndex, parent);
235
+ },
236
+
237
+ getIcon (depart) {
238
+ return depart.isShowChildren ? "ios-arrow-down" : "ios-arrow-forward";
239
+ }
240
+ }
241
+ };
242
+ </script>
243
+
244
+ <style lang="less">
245
+ .departMenu {
246
+ font-size: 14px;
247
+
248
+ &-item {
249
+ width: 100%;
250
+ line-height: 38px;
251
+ text-align: left;
252
+ cursor: pointer;
253
+ overflow: hidden;
254
+ border-radius: 6px;
255
+
256
+ .ivu-icon {
257
+ color: @textColor;
258
+ }
259
+
260
+ &-name {
261
+ display: flex;
262
+ justify-content: space-between;
263
+ align-items: flex-start;
264
+ padding: 8px 5px 8px 20px;
265
+ line-height: 24px;
266
+ font-weight: 400;
267
+ font-size: 16px;
268
+ color: @textColor;
269
+
270
+ &:hover {
271
+ background-color: rgba(36, 36, 63, 0.03);
272
+ }
273
+
274
+ &-select {
275
+ background-color: rgba(36, 36, 63, 0.03);
276
+ font-weight: 500;
277
+ color: @themeColor;
278
+ position: relative;
279
+
280
+ &::before {
281
+ position: absolute;
282
+ left: 0px;
283
+ top: 5px;
284
+ bottom: 5px;
285
+
286
+ content: "";
287
+ display: block;
288
+ width: 4px;
289
+ border-radius: 2px 0px 0px 2px;
290
+ background-color: @themeColor;
291
+ }
292
+ }
293
+ }
294
+ }
295
+ }
296
+ </style>