eoss-ui 0.5.81-beta2 → 0.5.81-beta21

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 (131) hide show
  1. package/lib/button-group.js +76 -53
  2. package/lib/button.js +51 -46
  3. package/lib/checkbox-group.js +49 -45
  4. package/lib/clients.js +4 -3
  5. package/lib/config/api.js +3 -1
  6. package/lib/data-table-form.js +49 -45
  7. package/lib/data-table.js +471 -256
  8. package/lib/date-picker.js +49 -45
  9. package/lib/dialog.js +71 -70
  10. package/lib/eoss-ui.common.js +4165 -2449
  11. package/lib/flow-group.js +98 -63
  12. package/lib/flow-list.js +50 -46
  13. package/lib/flow.js +152 -83
  14. package/lib/form.js +96 -49
  15. package/lib/handle-user.js +66 -49
  16. package/lib/handler.js +61 -48
  17. package/lib/icon.js +49 -45
  18. package/lib/index.js +1 -1
  19. package/lib/input-number.js +49 -45
  20. package/lib/input.js +49 -45
  21. package/lib/login.js +64 -53
  22. package/lib/main.js +2677 -1479
  23. package/lib/menu.js +1 -1
  24. package/lib/nav.js +49 -45
  25. package/lib/notify.js +54 -50
  26. package/lib/page.js +49 -45
  27. package/lib/pagination.js +3719 -3
  28. package/lib/player.js +54 -50
  29. package/lib/qr-code.js +49 -45
  30. package/lib/radio-group.js +49 -45
  31. package/lib/retrial-auth.js +50 -46
  32. package/lib/select-ganged.js +49 -45
  33. package/lib/select.js +50 -46
  34. package/lib/selector-panel.js +117 -65
  35. package/lib/selector.js +493 -422
  36. package/lib/sizer.js +49 -45
  37. package/lib/steps.js +49 -45
  38. package/lib/switch.js +49 -45
  39. package/lib/table-form.js +49 -45
  40. package/lib/tabs.js +86 -79
  41. package/lib/theme-chalk/base.css +1 -1
  42. package/lib/theme-chalk/button-group.css +1 -1
  43. package/lib/theme-chalk/data-table.css +1 -1
  44. package/lib/theme-chalk/handler.css +1 -1
  45. package/lib/theme-chalk/index.css +1 -1
  46. package/lib/theme-chalk/main.css +1 -1
  47. package/lib/theme-chalk/menu.css +1 -1
  48. package/lib/theme-chalk/nav.css +1 -1
  49. package/lib/theme-chalk/pagination.css +1 -1
  50. package/lib/theme-chalk/selector-panel.css +1 -1
  51. package/lib/theme-chalk/simplicity.css +1 -1
  52. package/lib/theme-chalk/sizer.css +1 -1
  53. package/lib/theme-chalk/tabs.css +1 -1
  54. package/lib/theme-chalk/toolbar.css +1 -1
  55. package/lib/theme-chalk/tree.css +1 -1
  56. package/lib/theme-chalk/upload.css +1 -1
  57. package/lib/tips.js +49 -45
  58. package/lib/tree-group.js +49 -45
  59. package/lib/tree.js +49 -45
  60. package/lib/upload.js +59 -55
  61. package/lib/wujie.js +49 -45
  62. package/lib/wxlogin.js +49 -45
  63. package/package.json +3 -3
  64. package/packages/button/src/main.vue +2 -1
  65. package/packages/button-group/src/main.vue +8 -6
  66. package/packages/clients/src/main.vue +2 -1
  67. package/packages/data-table/src/column.vue +132 -53
  68. package/packages/data-table/src/formItem.vue +430 -0
  69. package/packages/data-table/src/main.vue +85 -45
  70. package/packages/data-table/src/sizer.vue +2 -0
  71. package/packages/dialog/src/main.vue +17 -23
  72. package/packages/flow/src/main.vue +32 -17
  73. package/packages/flow-group/src/main.vue +18 -11
  74. package/packages/form/src/main.vue +45 -10
  75. package/packages/handle-user/src/main.vue +10 -3
  76. package/packages/handler/src/main.vue +5 -3
  77. package/packages/login/src/main.vue +13 -6
  78. package/packages/main/src/default/index.vue +102 -179
  79. package/packages/main/src/main.vue +243 -16
  80. package/packages/main/src/public/online.vue +90 -0
  81. package/packages/main/src/simplicity/apps.vue +176 -145
  82. package/packages/main/src/simplicity/avatar.vue +16 -6
  83. package/packages/main/src/simplicity/handler.vue +6 -2
  84. package/packages/main/src/simplicity/index.vue +555 -344
  85. package/packages/main/src/simplicity/menu-list.vue +75 -24
  86. package/packages/main/src/simplicity/message.vue +35 -25
  87. package/packages/main/src/simplicity/notice.vue +72 -39
  88. package/packages/main/src/simplicity/router-page.vue +44 -0
  89. package/packages/main/src/simplicity/settings.vue +1 -1
  90. package/packages/main/src/simplicity/sub-menu.vue +169 -54
  91. package/packages/main/src/simplicity/user.vue +10 -5
  92. package/packages/main/src/simplicity/userinfo.vue +1 -0
  93. package/packages/menu/src/main.vue +4 -3
  94. package/packages/pagination/src/main.vue +20 -1
  95. package/packages/select/src/main.vue +4 -1
  96. package/packages/selector/src/main.vue +152 -136
  97. package/packages/selector-panel/src/main.vue +23 -9
  98. package/packages/selector-panel/src/selection.vue +8 -2
  99. package/packages/tabs/src/main.vue +14 -14
  100. package/packages/theme-chalk/lib/base.css +1 -1
  101. package/packages/theme-chalk/lib/button-group.css +1 -1
  102. package/packages/theme-chalk/lib/data-table.css +1 -1
  103. package/packages/theme-chalk/lib/handler.css +1 -1
  104. package/packages/theme-chalk/lib/index.css +1 -1
  105. package/packages/theme-chalk/lib/main.css +1 -1
  106. package/packages/theme-chalk/lib/menu.css +1 -1
  107. package/packages/theme-chalk/lib/nav.css +1 -1
  108. package/packages/theme-chalk/lib/pagination.css +1 -1
  109. package/packages/theme-chalk/lib/selector-panel.css +1 -1
  110. package/packages/theme-chalk/lib/simplicity.css +1 -1
  111. package/packages/theme-chalk/lib/sizer.css +1 -1
  112. package/packages/theme-chalk/lib/tabs.css +1 -1
  113. package/packages/theme-chalk/lib/toolbar.css +1 -1
  114. package/packages/theme-chalk/lib/tree.css +1 -1
  115. package/packages/theme-chalk/lib/upload.css +1 -1
  116. package/packages/theme-chalk/src/base.scss +5 -0
  117. package/packages/theme-chalk/src/button-group.scss +18 -4
  118. package/packages/theme-chalk/src/common/var.scss +9 -2
  119. package/packages/theme-chalk/src/data-table.scss +60 -23
  120. package/packages/theme-chalk/src/handler.scss +5 -1
  121. package/packages/theme-chalk/src/login.scss +2 -2
  122. package/packages/theme-chalk/src/nav.scss +3 -2
  123. package/packages/theme-chalk/src/pagination.scss +7 -0
  124. package/packages/theme-chalk/src/selector-panel.scss +2 -1
  125. package/packages/theme-chalk/src/simplicity.scss +355 -58
  126. package/packages/theme-chalk/src/tabs.scss +24 -28
  127. package/packages/theme-chalk/src/toolbar.scss +16 -4
  128. package/packages/theme-chalk/src/tree.scss +4 -2
  129. package/packages/upload/src/main.vue +3 -1
  130. package/src/config/api.js +3 -1
  131. package/src/index.js +1 -1
@@ -6,12 +6,15 @@
6
6
  ref="component"
7
7
  v-loading="tableLoading"
8
8
  element-loading-background="rgba(0, 0, 0, 0.65)"
9
- :model="tag === 'div' ? '' : datas"
9
+ :model="tag === 'div' ? '' : list"
10
10
  :element-loading-text="tableLoadingText"
11
11
  >
12
12
  <es-toolbar
13
13
  v-if="showToolbar"
14
14
  ref="toolbar"
15
+ :class="{
16
+ 'es-table-toolbar-plus': mode == 'plus'
17
+ }"
15
18
  v-bind="{
16
19
  contents: toolbars,
17
20
  showLabel: showLabel,
@@ -35,7 +38,10 @@
35
38
  <div
36
39
  style="styles"
37
40
  class="es-data-table-content"
38
- :class="border == 'none' ? 'es-table-border-none' : ''"
41
+ :class="{
42
+ 'es-table-border-none': border == 'none',
43
+ 'es-table-plus': mode == 'plus'
44
+ }"
39
45
  ref="esTableContent"
40
46
  v-if="show"
41
47
  >
@@ -57,7 +63,7 @@
57
63
  dragSort: dragSort,
58
64
  dragSortClass: dragSortIcon
59
65
  }"
60
- :data.sync="datas"
66
+ :data.sync="list"
61
67
  v-on="{
62
68
  ...$listeners,
63
69
  'row-click': rowClick,
@@ -71,11 +77,6 @@
71
77
  (theadBorder && border != 'none' ? ' es-thead-border' : '')
72
78
  "
73
79
  >
74
- <!-- <el-table-column v-if="dragSort" width="32" fixed>
75
- <template slot-scope="scope">
76
- <es-icon :contents="dragSortIcon"></es-icon>
77
- </template>
78
- </el-table-column> -->
79
80
  <slot name="prepend"></slot>
80
81
  <slot></slot>
81
82
  <template v-for="(item, index) in theads">
@@ -99,7 +100,9 @@
99
100
  <children
100
101
  v-else
101
102
  :key="item.label || item.title"
103
+ :tag="item.tag"
102
104
  v-bind="{
105
+ mode: mode,
103
106
  name: name,
104
107
  indexs: index,
105
108
  form: form,
@@ -149,13 +152,15 @@
149
152
  </el-table>
150
153
  <div v-if="infiniteScroll" class="es-table-page es-loading-page">
151
154
  <span>共{{ config.totalCount }}条,</span>
152
- <span>已加载{{ datas.length }}条</span>
155
+ <span>已加载{{ list.length }}条</span>
153
156
  </div>
154
157
  <es-pagination
155
158
  v-else-if="page"
159
+ ref="pagination"
156
160
  v-bind="config"
157
161
  class="es-table-page"
158
- :style="{ 'text-align': page.position || 'center' }"
162
+ :position="page.position"
163
+ :style="{ 'text-align': page.position }"
159
164
  v-on="{
160
165
  change: sizeChange,
161
166
  current: currentChange,
@@ -166,7 +171,7 @@
166
171
  <slot name="dialog"></slot>
167
172
  <slot name="other"></slot>
168
173
  </div>
169
- <sizer ref="sizer" :data="theads"></sizer>
174
+ <sizer ref="sizer" :data="theads" :mode="mode"></sizer>
170
175
  </component>
171
176
  </template>
172
177
  <script>
@@ -177,6 +182,8 @@ import sizer from './sizer.vue';
177
182
  import util from 'eoss-ui/src/utils/util';
178
183
  import bus from 'eoss-ui/src/utils/bus';
179
184
  import qs from 'qs';
185
+ const dataTableMode =
186
+ util.win.top.dataTableMode || util.win.dataTableMode || 'default';
180
187
  export default {
181
188
  name: 'EsDataTable',
182
189
  inheritAttrs: false,
@@ -202,6 +209,10 @@ export default {
202
209
  }
203
210
  },
204
211
  props: {
212
+ mode: {
213
+ type: String,
214
+ default: dataTableMode
215
+ },
205
216
  service: String,
206
217
  loading: {
207
218
  type: Boolean,
@@ -449,7 +460,11 @@ export default {
449
460
  config: {
450
461
  pageNum: 1,
451
462
  pageSize: 20,
452
- totalCount: 0
463
+ totalCount: 0,
464
+ layout:
465
+ this.mode == 'plus'
466
+ ? 'total, sizes, prev, pager, next, jumper'
467
+ : undefined
453
468
  },
454
469
  searchWhere: {},
455
470
  advanceWhere: {},
@@ -582,6 +597,11 @@ export default {
582
597
  return this.data;
583
598
  },
584
599
  set(val) {
600
+ if (this.list && this.list.length) {
601
+ this.$nextTick(() => {
602
+ this.list = val;
603
+ });
604
+ }
585
605
  this.$emit('update:data', val);
586
606
  return val;
587
607
  }
@@ -646,18 +666,12 @@ export default {
646
666
  this.resetHeight();
647
667
  this.doLayout();
648
668
  },
649
- // data: {
650
- // deep: true,
651
- // handler(val) {
652
- // if (
653
- // this.page &&
654
- // typeof this.page === 'object' &&
655
- // !Object.prototype.hasOwnProperty.call(this.page, 'totalCount')
656
- // ) {
657
- // this.config.totalCount = val.length - this.lose;
658
- // }
659
- // }
660
- // },
669
+ data: {
670
+ deep: true,
671
+ handler() {
672
+ this.list = this.setData();
673
+ }
674
+ },
661
675
  page() {
662
676
  this.resetHeight();
663
677
  this.doLayout();
@@ -676,7 +690,7 @@ export default {
676
690
  }
677
691
  },
678
692
  zoom: {
679
- handler(val) {
693
+ handler() {
680
694
  if (
681
695
  this.tableHeight != 'auto' &&
682
696
  this.tableHeight !== false &&
@@ -688,7 +702,7 @@ export default {
688
702
  }
689
703
  },
690
704
  checked(newVal) {
691
- this.datas.length && this.checkSelect(newVal);
705
+ this.list.length && this.checkSelect(newVal);
692
706
  },
693
707
  thead: {
694
708
  deep: true,
@@ -708,7 +722,7 @@ export default {
708
722
  },
709
723
  param: {
710
724
  deep: true,
711
- handler(val) {
725
+ handler() {
712
726
  this.getTableData();
713
727
  }
714
728
  },
@@ -718,12 +732,6 @@ export default {
718
732
  handler(val) {
719
733
  if (typeof val === 'object') {
720
734
  this.config = util.extend({}, this.config, val);
721
- } else {
722
- this.config = {
723
- pageNum: 1,
724
- pageSize: 20,
725
- totalCount: 0
726
- };
727
735
  }
728
736
  }
729
737
  },
@@ -732,6 +740,7 @@ export default {
732
740
  this.$refs.oaTable &&
733
741
  this.$refs.oaTable.resetScroll &&
734
742
  this.$refs.oaTable.resetScroll(0, 0);
743
+ this.list = this.setData();
735
744
  }
736
745
  },
737
746
  height: {
@@ -770,10 +779,36 @@ export default {
770
779
  this.chekOpenTotalArea();
771
780
  },
772
781
  mounted() {
773
- this.datas.length && this.checkSelect(this.checked);
782
+ if (this.data.length) {
783
+ this.list = this.setData();
784
+ }
785
+ this.list.length && this.checkSelect(this.checked);
774
786
  this.resetHeight();
787
+ if (util.win.top != util.win.self) {
788
+ util.win.onresize = debounce(500, this.resetHeight);
789
+ }
775
790
  },
776
791
  methods: {
792
+ setData() {
793
+ if (
794
+ this.page &&
795
+ ((typeof this.page === 'object' &&
796
+ (!Object.prototype.hasOwnProperty.call(this.page, 'totalCount') ||
797
+ this.page.totalCount == 0)) ||
798
+ this.page === true)
799
+ ) {
800
+ this.config.totalCount = this.data.length - this.lose;
801
+ }
802
+ if (this.page && this.data.length > this.config.pageSize) {
803
+ return this.data.filter((item, index) => {
804
+ return (
805
+ index > (this.config.pageNum - 1) * this.config.pageSize - 1 &&
806
+ index < this.config.pageNum * this.config.pageSize
807
+ );
808
+ });
809
+ }
810
+ return this.data;
811
+ },
777
812
  getRequestKey(config) {
778
813
  const { method, url, params, data } = config;
779
814
  return [method, url, qs.stringify(params), qs.stringify(data)].join('&');
@@ -951,7 +986,7 @@ export default {
951
986
  if (util.isObject(row)) {
952
987
  this.$refs.oaTable.toggleRowSelection(row, true);
953
988
  } else
954
- this.datas.forEach((item) => {
989
+ this.list.forEach((item) => {
955
990
  if (item[this.checkedKey] === row) {
956
991
  this.$refs.oaTable.toggleRowSelection(item, true);
957
992
  return;
@@ -982,6 +1017,7 @@ export default {
982
1017
  this.list = results.data || results.records || [];
983
1018
  this.config.totalCount =
984
1019
  results.count || results.total || results.totalCount;
1020
+ this.config.pageCount = results.pageCount;
985
1021
  this.getOptions(this.theadData);
986
1022
  }
987
1023
  } else {
@@ -1070,6 +1106,7 @@ export default {
1070
1106
  }
1071
1107
  this.config.totalCount =
1072
1108
  results.count || results.total || results.totalCount;
1109
+ this.config.pageCount = results.pageCount;
1073
1110
  this.checked &&
1074
1111
  this.$nextTick(() => {
1075
1112
  this.checkSelect(this.checked);
@@ -1129,14 +1166,14 @@ export default {
1129
1166
  this.$refs.oaTable.sort(prop, order);
1130
1167
  },
1131
1168
  formBlur(data) {
1132
- this.$emit('blur', data, this.datas);
1169
+ this.$emit('blur', data, this.list);
1133
1170
  },
1134
1171
  formFocus(data) {
1135
- this.$emit('focus', data, this.datas);
1172
+ this.$emit('focus', data, this.list);
1136
1173
  },
1137
1174
  formChange(data) {
1138
- this.$emit('edit', data, this.datas);
1139
- this.$emit('change', data, this.datas);
1175
+ this.$emit('edit', data, this.list);
1176
+ this.$emit('change', data, this.list);
1140
1177
  },
1141
1178
  handleAjax(handle, row) {
1142
1179
  this.changeLoading(true, `${handle.text}中...`);
@@ -1291,7 +1328,7 @@ export default {
1291
1328
  handle.event({
1292
1329
  ele: this,
1293
1330
  thead: thead,
1294
- data: this.datas,
1331
+ data: this.list,
1295
1332
  selected: rows,
1296
1333
  ...res
1297
1334
  });
@@ -1394,13 +1431,13 @@ export default {
1394
1431
  });
1395
1432
  util.exportXls({
1396
1433
  thead: thead,
1397
- data: this.datas,
1434
+ data: this.list,
1398
1435
  name: this.fileName,
1399
1436
  option: this.optionDatas
1400
1437
  });
1401
1438
  }
1402
- this.$emit('btnClick', res, this.datas, thead, rows);
1403
- this.$emit('btn-click', res, this.datas, thead, rows);
1439
+ this.$emit('btnClick', res, this.list, thead, rows);
1440
+ this.$emit('btn-click', res, this.list, thead, rows);
1404
1441
  }
1405
1442
  },
1406
1443
  sizeChange(res) {
@@ -1513,8 +1550,11 @@ export default {
1513
1550
  parseInt(util.getStyle(ele, 'margin-bottom'), 10);
1514
1551
  }
1515
1552
  }
1516
- height -= this.showToolbar ? 45 : 0;
1517
- height -= this.page === false ? 0 : 46;
1553
+ height -= this.showToolbar
1554
+ ? this.$refs.toolbar.$el.offsetHeight
1555
+ : 0;
1556
+ height -=
1557
+ this.page === false ? 0 : this.$refs.pagination.$el.offsetHeight;
1518
1558
  height -= this.title ? this.$refs.title.offsetHeight : 0;
1519
1559
  height -= parseInt(
1520
1560
  util.getStyle(this.$refs.esTableContent, 'padding-top'),
@@ -7,6 +7,7 @@
7
7
  row-key="id"
8
8
  default-expand-all
9
9
  height="500px"
10
+ :mode="mode"
10
11
  :data="theads"
11
12
  :thead="thead"
12
13
  :tree-props="{ children: 'childHead' }"
@@ -26,6 +27,7 @@ import util from 'eoss-ui/src/utils/util';
26
27
  export default {
27
28
  name: 'Sizer',
28
29
  props: {
30
+ mode: String,
29
31
  data: Array
30
32
  },
31
33
  computed: {
@@ -3,8 +3,8 @@
3
3
  class="es-dialog"
4
4
  :title="titles"
5
5
  :visible.sync="show"
6
- :width="wd"
7
- :height="ht"
6
+ :width="_width"
7
+ :height="_height"
8
8
  :close-on-click-modal="shadeClose"
9
9
  :showScale="showScale"
10
10
  :drag="drag"
@@ -264,6 +264,10 @@ import WujieVue from 'wujie-vue2';
264
264
  import util from 'eoss-ui/src/utils/util';
265
265
  import mbus from 'eoss-ui/src/utils/bus';
266
266
  const { bus } = WujieVue;
267
+ let availWidth = 0;
268
+ let availHeight = 0;
269
+ availWidth = util.win.top.document.body.offsetWidth - 260;
270
+ availHeight = util.win.top.document.body.offsetHeight - 60;
267
271
  export default {
268
272
  name: 'EsDialog',
269
273
  inheritAttrs: false,
@@ -344,6 +348,12 @@ export default {
344
348
  computed: {
345
349
  wujieName() {
346
350
  return this.name ? this.name : util.uuid(16);
351
+ },
352
+ _width() {
353
+ return this.width ? this.width : this.sizes[this.size]['width'];
354
+ },
355
+ _height() {
356
+ return this.height ? this.height : this.sizes[this.size]['height'];
347
357
  }
348
358
  },
349
359
  watch: {
@@ -363,36 +373,20 @@ export default {
363
373
  full: false,
364
374
  method: 'router',
365
375
  sizes: {
366
- sm: { width: '900px', height: '400px' },
367
- md: { width: '900px', height: '600px' },
368
- lg: { width: '900px', height: '800px' },
376
+ mini: { width: '800px', height: '400px' },
377
+ sm: { width: '960px', height: '500px' },
378
+ md: { width: '1060px', height: '600px' },
379
+ lg: { width: '1200px', height: '800px' },
380
+ max: { width: `${availWidth}px`, height: `${availHeight}px` },
369
381
  full: { width: '100%', height: '100%' }
370
382
  },
371
383
  show: this.visible,
372
384
  defaultProps: {},
373
- wd: '',
374
- ht: '',
375
385
  zoom: 1,
376
386
  scales: { zoom: 1 }
377
387
  };
378
388
  },
379
389
  created() {
380
- let availWidth = 0;
381
- let availHeight = 0;
382
- availWidth = util.win.top.document.body.offsetWidth - 260;
383
- availHeight = util.win.top.document.body.offsetHeight - 60;
384
- this.sizes.max = { width: `${availWidth}px`, height: `${availHeight}px` };
385
- if (
386
- this.size === 'full' ||
387
- (this.width == '100%' && this.height == '100%')
388
- ) {
389
- this.full = true;
390
- this.wd = '100%';
391
- this.ht = '100%';
392
- } else {
393
- this.wd = this.width ? this.width : this.sizes[this.size]['width'];
394
- this.ht = this.height ? this.height : this.sizes[this.size]['height'];
395
- }
396
390
  if (this.busEvent) {
397
391
  mbus.$on(this.busEvent, async (res) => {
398
392
  this.titles = res.title;
@@ -9,6 +9,7 @@
9
9
  <div class="es-flow-title">
10
10
  <span v-show="!shrink">当前节点:{{ isFlow ? '拟稿' : NodeName }}</span>
11
11
  <es-button
12
+ v-if="showShrink"
12
13
  size="medium"
13
14
  class="es-icon"
14
15
  :icon="shrink ? 'es-icon-indent' : 'es-icon-increase'"
@@ -117,6 +118,17 @@
117
118
  @change="changeSelectUser($event, 'addSignUserId', true)"
118
119
  />
119
120
  </el-form-item>
121
+ <el-form-item
122
+ prop="addSignMode"
123
+ v-if="isCanPreAddSign"
124
+ label="加签模式"
125
+ :rules="[{ required: true, trigger: 'blur' }]"
126
+ >
127
+ <el-radio-group v-model="nextNode.addSignMode">
128
+ <el-radio label="preAddSign">前置加签</el-radio>
129
+ <el-radio label="postAddSign">后置加签</el-radio>
130
+ </el-radio-group>
131
+ </el-form-item>
120
132
  </div>
121
133
  <!-- 加签结束 -->
122
134
  <!-- 减签开始 -->
@@ -400,12 +412,10 @@
400
412
  <div
401
413
  v-show="showNews"
402
414
  style="
403
- {
404
- border: 1px solid #ccc;
405
- padding: 5px;
406
- border-radius: 5px;
407
- font-size: 13px;
408
- }
415
+ border: 1px solid #ccc;
416
+ padding: 5px;
417
+ border-radius: 5px;
418
+ font-size: 13px;
409
419
  "
410
420
  >
411
421
  {{ nextNode.notificationMsg }}
@@ -708,6 +718,7 @@ export default {
708
718
  Preset
709
719
  },
710
720
  props: {
721
+ showShrink: { type: Boolean, default: true },
711
722
  isStartFlow: { type: Boolean, default: false },
712
723
  businessId: { type: String, default: '' },
713
724
  pendingId: { type: String, default: '' },
@@ -740,6 +751,7 @@ export default {
740
751
  return {
741
752
  styles: {},
742
753
  userModel: {},
754
+ isCanPreAddSign: false,
743
755
  nextOtherOrgObjSelect: [],
744
756
  subProcessColumns: [],
745
757
  nextCurrentOrgObjSelect: [],
@@ -860,6 +872,7 @@ export default {
860
872
  presetReadUserId: [],
861
873
  nextNode: {
862
874
  nextNodeId: '', // 下步节点
875
+ addSignMode: 'postAddSign',
863
876
  isAddSign: '', // 是否加签
864
877
  isRemoveSign: '', // 是否减签
865
878
  nextOperate: '', // 下步操作
@@ -1332,8 +1345,8 @@ export default {
1332
1345
  rejectBtn() {
1333
1346
  if (this.value === '') this.value = this.nodeDefaultRejectOpinion;
1334
1347
  if (!this.value) {
1335
- if(!this.$refs.commonOpinions.validate()) return
1336
- }
1348
+ if (!this.$refs.commonOpinions.validate()) return;
1349
+ }
1337
1350
  if (this.beforeSubmit != undefined) {
1338
1351
  this.beforeSubmit(0)
1339
1352
  .then((next) => {
@@ -1341,7 +1354,6 @@ export default {
1341
1354
  })
1342
1355
  .catch((e) => {});
1343
1356
  } else {
1344
-
1345
1357
  this.showReject = true;
1346
1358
  }
1347
1359
  },
@@ -1643,11 +1655,10 @@ export default {
1643
1655
  * @date 2022年9月29日
1644
1656
  **/
1645
1657
  rejectAndEnd(res) {
1646
- if (this.isOpinionRequired == 1 && (this.value == '' || !this.value)){
1647
- if(!this.$refs.commonOpinions.validate()) return
1648
- }
1658
+ if (this.isOpinionRequired == 1 && (this.value == '' || !this.value)) {
1659
+ if (!this.$refs.commonOpinions.validate()) return;
1660
+ }
1649
1661
  if (this.beforeSubmit != undefined) {
1650
-
1651
1662
  this.beforeSubmit()
1652
1663
  .then((next) => {
1653
1664
  this.saveRejectAndEnd(res);
@@ -1660,7 +1671,6 @@ export default {
1660
1671
  saveRejectAndEnd(res) {
1661
1672
  this.$confirm('确认' + res.value + '?')
1662
1673
  .then(() => {
1663
-
1664
1674
  // return this.$message.warning('请填写意见');
1665
1675
  let params = {
1666
1676
  url: rejectAndEnd,
@@ -1783,7 +1793,7 @@ export default {
1783
1793
  this.isHideOtherOrg = false;
1784
1794
  this.isNodeShowProcess = false;
1785
1795
  this.isMainSubProcess = false;
1786
- this.isNextUser =this.nextNode.nextOperate != 9 ;
1796
+ this.isNextUser = this.nextNode.nextOperate != 9;
1787
1797
  // this.isMainSubProcess === true
1788
1798
  // ? (this.isMainSubProcess = true)
1789
1799
  // : (this.isMainSubProcess = false);
@@ -1960,7 +1970,7 @@ export default {
1960
1970
  return;
1961
1971
  } else {
1962
1972
  }
1963
-
1973
+
1964
1974
  if (isDef !== true) this.getNodeInfo();
1965
1975
  },
1966
1976
  /**
@@ -2041,13 +2051,15 @@ export default {
2041
2051
  isSpecial,
2042
2052
  canPresetRead,
2043
2053
  isCdjxjTaskHandle,
2044
- taskButtonList
2054
+ taskButtonList,
2055
+ isCanPreAddSign
2045
2056
  }
2046
2057
  } = res;
2047
2058
  this.$emit('startTaskRead', res);
2048
2059
  this.$emit('start-task-read', res);
2049
2060
  this.currentOrgName = currentOrgName;
2050
2061
  this.otherOrgName = otherOrgName;
2062
+ this.isCanPreAddSign = isCanPreAddSign;
2051
2063
  this.endFlowInfo.choiceOrgId = choiceOrgId;
2052
2064
  this.endFlowInfo.choiceDeptId = choiceDeptId;
2053
2065
  this.endFlowInfo.pendingId = this.pendingId;
@@ -2514,6 +2526,9 @@ export default {
2514
2526
  notificationType = this.nextNode.notificationType.join(',');
2515
2527
  addSignUserId = addSignUserId.join(',');
2516
2528
  removeSignUserId = removeSignUserId.join(',');
2529
+ if (!this.isCanPreAddSign) {
2530
+ delete this.nextNode.addSignMode;
2531
+ }
2517
2532
  let params = {
2518
2533
  ...this.nextNode,
2519
2534
  pendingId: this.pendingId,
@@ -11,7 +11,7 @@
11
11
  <template v-for="(items, indexs) in tabs">
12
12
  <el-tab-pane
13
13
  v-if="handleHide(items.hide)"
14
- :key="indexs"
14
+ :key="items.id || indexs"
15
15
  :immediate="items.label === '流程图' ? false : items.immediate"
16
16
  :name="String(indexs)"
17
17
  :class="{ 'es-flex-vertical': items.average }"
@@ -32,9 +32,9 @@
32
32
  :value="items.title.count"
33
33
  :color="items.title.color"
34
34
  :max="99"
35
- >
35
+ >{{ items.title.text }}
36
36
  </el-badge>
37
- <template v-if>{{ items.title.text }}</template>
37
+ <template v-else>{{ items.title.text }}</template>
38
38
  </template>
39
39
  <template v-else>{{ items.title }}</template>
40
40
  </template>
@@ -279,11 +279,12 @@
279
279
  >
280
280
  </es-dialog>
281
281
  <component
282
- v-if="item.component"
283
- :is="item.type"
282
+ v-if="item.component || item.type == 'component'"
283
+ :is="item.is || item.name || item.type"
284
284
  v-bind="
285
285
  handleExclAttribute({
286
- data: item
286
+ data: item,
287
+ attrs: ['is', 'type']
287
288
  })
288
289
  "
289
290
  ></component>
@@ -292,11 +293,12 @@
292
293
  </template>
293
294
  <template v-else>
294
295
  <component
295
- v-if="contents.component"
296
- :is="contents.type"
296
+ v-if="contents.component || contents.type == 'component'"
297
+ :is="contents.is || contents.name || contents.type"
297
298
  v-bind="
298
299
  handleExclAttribute({
299
- data: contents
300
+ data: contents,
301
+ attrs: ['is', 'type']
300
302
  })
301
303
  "
302
304
  ></component>
@@ -426,7 +428,7 @@
426
428
  class="es-group-flow"
427
429
  v-bind="_flow"
428
430
  :width="width"
429
- :before-submit="handleSubmit"
431
+ :before-submit="isSubmit ? handleSubmit : undefined"
430
432
  :businessId="businessId"
431
433
  @startTaskRead="handleTaskRead"
432
434
  @success="handleSuccess"
@@ -482,7 +484,11 @@ export default {
482
484
  type: String,
483
485
  default: '360px'
484
486
  },
485
- refs: String
487
+ refs: String,
488
+ isSubmit: {
489
+ type: Boolean,
490
+ default: true
491
+ }
486
492
  },
487
493
  data() {
488
494
  return {
@@ -635,6 +641,7 @@ export default {
635
641
  if (Array.isArray(esFlowForm)) {
636
642
  esFlowForm = esFlowForm[0];
637
643
  }
644
+ esFlowForm;
638
645
  this.showMsg = res == 1 ? false : true;
639
646
  return esFlowForm.submitData(undefined, false, {}, res);
640
647
  },