doway-coms 2.4.1 → 2.4.2

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "doway-coms",
3
- "version": "2.4.1",
3
+ "version": "2.4.2",
4
4
  "description": "doway组件库",
5
5
  "author": "dowaysoft",
6
6
  "main": "packages/index.js",
@@ -0,0 +1,42 @@
1
+ <template>
2
+ <div>
3
+ <p v-for="(user, index) in paginatedUsers" :key="index">{{ user.userFullName }}</p>
4
+ <a-pagination
5
+ @change="handlePageChange"
6
+ :current="currentPage"
7
+ :defaultPageSize="pageSize"
8
+ :total="users.length"
9
+ />
10
+ </div>
11
+ </template>
12
+ <script>
13
+ export default {
14
+ props: {
15
+ groupId: Number,
16
+ users: Array,
17
+ },
18
+ data() {
19
+ return {
20
+ pageSize: 10,
21
+ currentPage: 1,
22
+ };
23
+ },
24
+ computed: {
25
+ paginatedUsers() {
26
+ return this.users.slice((this.currentPage - 1) * this.pageSize, this.currentPage * this.pageSize);
27
+ },
28
+ },
29
+ methods: {
30
+ handlePageChange(newPage) {
31
+ this.currentPage = newPage;
32
+ },
33
+ show(){
34
+ this.currentPage = 1;
35
+ }
36
+ },
37
+ };
38
+ </script>
39
+
40
+ <style scoped>
41
+
42
+ </style>
@@ -16,47 +16,87 @@
16
16
  <div class="status-bar-status">
17
17
  <div class="el-status-btn-wrapper">
18
18
  <div
19
- v-for="(status, index) in statuss"
20
- :key="index"
21
- style="display:inline-block"
19
+ v-for="(status, index) in statuss"
20
+ :key="index"
21
+ style="display:inline-block"
22
22
  >
23
- <a-button
24
- v-if="!status.notButton"
25
- class="status-primary"
26
- :class="
27
- status.value === (workFlowStatus?workFlowStatus:formRow.status)
28
- ? 'current-status'
29
- : 'inactive-status'
30
- "
31
- type="text"
32
- >
33
- {{ status.caption }}</a-button
23
+ <template v-if="status.users !== undefined">
24
+ <a-popover title="审批人员" placement="bottom" @mouseenter="mouseenter">
25
+ <template slot="content">
26
+ <approval-persons-group ref="pageView" :groupId="index" :users="status.users"/>
27
+ </template>
28
+ <template>
29
+ <a-button
30
+
31
+ v-if="!status.notButton"
32
+ class="status-primary"
33
+ :class="
34
+ status.value === (workFlowStatus?workFlowStatus:formRow.status)
35
+ ? 'current-status'
36
+ : 'inactive-status'
37
+ "
38
+ type="text"
39
+ >
40
+ {{ status.caption }}</a-button
41
+ >
42
+ <div
43
+ v-else
44
+ class="progressBar"
45
+ :class="
46
+ formRow.value == 'progress' ? 'progressBar' : 'progressBarStop'
47
+ "
48
+ >
49
+ <div class="inProgressBar" :style="{ width: status.progress }">
50
+ <div class="text">
51
+ {{ status.progress }}
52
+ </div>
53
+ </div>
54
+ </div>
55
+ </template>
56
+ </a-popover>
57
+ </template>
58
+ <template v-else>
59
+ <a-button
60
+
61
+ v-if="!status.notButton"
62
+ class="status-primary"
63
+ :class="
64
+ status.value === (workFlowStatus?workFlowStatus:formRow.status)
65
+ ? 'current-status'
66
+ : 'inactive-status'
67
+ "
68
+ type="text"
34
69
  >
35
- <div
36
- v-else
37
- class="progressBar"
38
- :class="
39
- formRow.value == 'progress' ? 'progressBar' : 'progressBarStop'
40
- "
41
- >
42
- <div class="inProgressBar" :style="{ width: status.progress }">
43
- <div class="text">
44
- {{ status.progress }}
70
+ {{ status.caption }}</a-button
71
+ >
72
+ <div
73
+ v-else
74
+ class="progressBar"
75
+ :class="
76
+ formRow.value == 'progress' ? 'progressBar' : 'progressBarStop'
77
+ "
78
+ >
79
+ <div class="inProgressBar" :style="{ width: status.progress }">
80
+ <div class="text">
81
+ {{ status.progress }}
82
+ </div>
45
83
  </div>
46
84
  </div>
47
- </div>
85
+ </template>
48
86
  </div>
49
87
  </div>
50
88
  </div>
51
89
  </div>
52
90
  </template>
53
-
91
+
54
92
  <script>
93
+ import ApprovalPersonsGroup from './ApprovalPersonsGroup.vue'
55
94
  import { Button } from 'ant-design-vue'
56
95
  export default {
57
96
  name: 'BaseToolStatus',
58
97
  components:{
59
- 'a-button': Button
98
+ 'a-button': Button,
99
+ 'approval-persons-group':ApprovalPersonsGroup,
60
100
  },
61
101
  data() {
62
102
  return {
@@ -132,6 +172,17 @@
132
172
  methods: {
133
173
  btnClick(btn) {
134
174
  this.$emit(btn.code, btn)
175
+ },
176
+ mouseenter(){
177
+ if (this.$refs.pageView !== undefined){
178
+ if (Array.isArray(this.$refs.pageView)){
179
+ this.$refs.pageView.forEach(item => {
180
+ item.show()
181
+ })
182
+ }else {
183
+ this.$refs.pageView.show()
184
+ }
185
+ }
135
186
  }
136
187
  }
137
188
  }
@@ -266,7 +317,7 @@
266
317
  border-bottom: 1px solid #ccc;
267
318
  border-top: 1px solid #ccc;
268
319
  // padding-top: 1px;
269
-
320
+
270
321
  padding-left: 8px;
271
322
  // padding-bottom: 1px;
272
323
  // border-left: none;
@@ -364,7 +415,7 @@
364
415
  border-left: 11px solid #ccc;
365
416
  z-index: 10;
366
417
  }
367
-
418
+
368
419
  .status-primary::after {
369
420
  content: " ";
370
421
  display: block;