n20-common-lib 2.9.78 → 2.9.80

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": "n20-common-lib",
3
- "version": "2.9.78",
3
+ "version": "2.9.80",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -7,7 +7,12 @@ $--expandable-pane-height: 28px;
7
7
  background: $--table-header-background-color;
8
8
  color: $--color-text-primary;
9
9
  padding: 0 12px;
10
- margin-bottom: 8px;
10
+ &__top {
11
+ margin-bottom: 8px;
12
+ }
13
+ &__bottom {
14
+ margin-top: 8px;
15
+ }
11
16
  }
12
17
 
13
18
  .n20-tips {
@@ -31,6 +36,9 @@ $--expandable-pane-height: 28px;
31
36
  .expand {
32
37
  transform: rotate(90deg);
33
38
  }
39
+ .topExpand {
40
+ transform: rotate(270deg);
41
+ }
34
42
  }
35
43
 
36
44
  .color-0 {
Binary file
@@ -1,16 +1,18 @@
1
1
  /* 审批按钮组 */
2
2
  <template>
3
3
  <div :class="prefixCls">
4
- <el-form ref="approveBtnGroup" label-position="right" :label-width="_lang === 'zh' ? '12em' : '12em'">
5
- <div
6
- v-if="taskId && showBtn && authList.includes('isShowOtherAtt')"
7
- class="m-b-lg p-b-lg p-t-lg p-r-lg"
8
- style="border: 1px dashed var(--border-color-base); border-radius: 5px"
9
- >
10
- <!-- <div class="p-l-lg p-t-lg p-b-s font-w600">{{ '审查意见' }}</div> -->
11
- <show-other-att-new ref="showOtherAttNew" :task-id="taskId" :form="customizationDtos" />
12
- </div>
13
- </el-form>
4
+ <ExpandablePane title="自定义项" :defaultExpand="false">
5
+ <el-form ref="approveBtnGroup" label-position="right" :label-width="_lang === 'zh' ? '12em' : '12em'">
6
+ <div
7
+ v-if="taskId && showBtn && authList.includes('isShowOtherAtt')"
8
+ class="m-b-lg p-b-lg p-t-lg p-r-lg"
9
+ style="border: 1px dashed var(--border-color-base); border-radius: 5px"
10
+ >
11
+ <show-other-att-new ref="showOtherAttNew" :task-id="taskId" :form="customizationDtos" />
12
+ </div>
13
+ </el-form>
14
+ </ExpandablePane>
15
+
14
16
  <el-form ref="approveBtnGroup" label-position="right" :label-width="_lang === 'zh' ? '6em' : '12em'">
15
17
  <div v-if="taskId && showBtn" class="flex-box">
16
18
  <el-form-item v-if="authList.includes('isCarboncopy')" :label="'抄送' | $lc" class="flex-1 m-b-s">
@@ -91,25 +93,24 @@
91
93
  </el-form-item>
92
94
  </div>
93
95
 
94
- <div class="flex-box">
95
- <template v-if="taskId && showBtn">
96
- <show-app-opi
97
- v-if="opiAndUser || authList.includes('showAppOpi')"
98
- class="m-l-s"
99
- :task-id="taskId"
100
- :message.sync="messageC"
101
- :and-user="opiAndUser"
102
- style="width: 20%"
103
- />
104
- <show-other-att
105
- v-if="authList.includes('showOtherAtt')"
106
- class="flex-1 m-l"
107
- :task-id="taskId"
108
- :other-att="otherAtt"
109
- style="width: 18%"
110
- />
111
- </template>
112
- <el-form-item class="flex-1" :label="'审批意见' | $lc" :error="errMsg" :required="requiredC" style="width: 70%">
96
+ <el-form-item :label="'审批意见' | $lc" :error="errMsg" :required="requiredC">
97
+ <template v-if="taskId && showBtn">
98
+ <show-app-opi
99
+ v-if="opiAndUser || authList.includes('showAppOpi')"
100
+ class="m-b-s"
101
+ :task-id="taskId"
102
+ :message.sync="messageC"
103
+ :and-user="opiAndUser"
104
+
105
+ />
106
+ <show-other-att
107
+ v-if="authList.includes('showOtherAtt')"
108
+ class="flex-1 m-l"
109
+ :task-id="taskId"
110
+ :other-att="otherAtt"
111
+ style="width: 18%"
112
+ />
113
+ </template>
113
114
  <el-input
114
115
  ref="msg-input"
115
116
  v-model="messageC"
@@ -121,10 +122,9 @@
121
122
  }`"
122
123
  :maxlength="messageMax"
123
124
  show-word-limit
124
- :autosize="{ rows: 1 }"
125
+ :autosize="{ minRows: 2 }"
125
126
  />
126
127
  </el-form-item>
127
- </div>
128
128
  <el-form-item v-if="fileKitT" :label="$lc('附件上传')">
129
129
  <cl-upload
130
130
  class="upload-224"
@@ -295,6 +295,7 @@ import RejectToProp from './setRejectToProp.vue'
295
295
  import ShowAppOpi from './showAppOpi.vue'
296
296
  import ShowOtherAtt from './showOtherAttr.vue'
297
297
  import ShowOtherAttNew from './showOtherAttrNew.vue'
298
+ import ExpandablePane from "../Expandable/main.vue"
298
299
  import { toExaminePath } from './specialHandle'
299
300
  const prefixCls = 'n20-approval-Button'
300
301
  // window._approvalExtend = { 'addtask.chdUserInfo.extend': {}, 'appOpi.queryAppOpiAndUser.exist': undefined, 'card.countermand.suggestion': false }
@@ -312,7 +313,8 @@ export default {
312
313
  RejectToProp,
313
314
  ShowAppOpi,
314
315
  ShowOtherAtt,
315
- ShowOtherAttNew
316
+ ShowOtherAttNew,
317
+ ExpandablePane
316
318
  },
317
319
  props: {
318
320
  message: {
@@ -428,7 +430,8 @@ export default {
428
430
  isShowRetrace: undefined,
429
431
  isJump: undefined,
430
432
  showFlowDialog: false,
431
- IsShowUploadWidget: false
433
+ IsShowUploadWidget: false,
434
+ showCustomItem:false
432
435
  }
433
436
  },
434
437
  computed: {
@@ -7,7 +7,7 @@
7
7
  clearable
8
8
  :multiple="multiple"
9
9
  collapse-tags
10
- :placeholder="'请选择审批意见' | $lc"
10
+ :placeholder="'常用审批意见,选择后将自动填充至下方输入框,您可在此基础上修改' | $lc"
11
11
  @change="changeFn"
12
12
  >
13
13
  <el-option v-for="(item, i) in approveMsgList" :key="i" :label="item.suggestion" :value="item.suggestion" />
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="n20-form-expandable-pane">
3
- <div class="n20-title flex-box flex-lr flex-v" :class="titleClass">
3
+ <div v-if="position === 'top'" class="n20-title flex-box flex-lr flex-v" :class="{'n20-title__top':expand,titleClass}">
4
4
  <span class="n20-tips flex-item" @click="getExpand">
5
5
  <i v-if="icon" class="el-icon-caret-right color-0 m-r-b" :class="{ expand: expand }"></i>
6
6
  <slot name="title">
@@ -16,6 +16,17 @@
16
16
  <slot></slot>
17
17
  </div>
18
18
  </el-collapse-transition>
19
+ <div v-if="position === 'bottom'" class="n20-title flex-box flex-lr flex-v" :class="{'n20-title__bottom':expand,titleClass}">
20
+ <span class="n20-tips flex-item" @click="getExpand">
21
+ <i v-if="icon" class="el-icon-caret-right color-0 m-r-b" :class="{ topExpand: expand }"></i>
22
+ <slot name="title">
23
+ <span>{{ title }}</span>
24
+ </slot>
25
+ </span>
26
+ <div>
27
+ <slot name="tips"></slot>
28
+ </div>
29
+ </div>
19
30
  </div>
20
31
  </template>
21
32
 
@@ -42,6 +53,10 @@ export default {
42
53
  titleClass: {
43
54
  type: String,
44
55
  default: ''
56
+ },
57
+ position: {
58
+ type: String,
59
+ default: 'top'
45
60
  }
46
61
  },
47
62
  data() {
@@ -12,13 +12,13 @@
12
12
  >
13
13
  <template v-for="(item, i) in columns">
14
14
  <slot v-if="item.slotName" :name="item.slotName" :column="item"></slot>
15
- <el-table-column v-else-if="item.render" :key="'cl-table-' + i" v-bind="item">
15
+ <el-table-column v-else-if="item.render" :key="'cl-table-column-render' + i" v-bind="item">
16
16
  <columnRender slot-scope="{ row, $index }" :c-render="item.render" :row="row" :index="$index" />
17
17
  </el-table-column>
18
18
 
19
19
  <el-table-column
20
20
  v-else
21
- :key="'cl-table-' + i"
21
+ :key="'cl-table-column-' + i"
22
22
  :formatter="item.formatter | colfF(item.formatterMap)"
23
23
  :filters="item.filters | colftF(filtersMap)"
24
24
  v-bind="item"
@@ -29,7 +29,7 @@
29
29
  <ux-table
30
30
  v-else
31
31
  ref="ux-table"
32
- :key="colsKey"
32
+ :key="'ux-table-' + colsKey"
33
33
  :header-cell-style="{ 'text-align': 'center' }"
34
34
  :data="data"
35
35
  :height="height"
@@ -54,7 +54,7 @@
54
54
 
55
55
  <ux-table-column
56
56
  v-else
57
- :key="'cl-table-' + i"
57
+ :key="'cl-table-uxtable-' + i"
58
58
  :formatter="item.formatter | colf_BD_F(item.formatterMap)"
59
59
  :filters="item.filters | colft_BD_F(filtersMap)"
60
60
  :class-name="item | colKey"
@@ -49,15 +49,15 @@
49
49
  <template #header="{ $table, checked, indeterminate, disabled }">
50
50
  <span class="custom-checkbox" @click.stop="toggleAll($table, disabled)">
51
51
  <el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" :disabled="disabled" />
52
- <el-checkbox v-else-if="checked" :key="key" :value="checked" :disabled="disabled" />
53
- <el-checkbox v-else :key="key" :value="checked" :disabled="disabled" />
52
+ <el-checkbox v-else-if="checked" :key="'checked-' + key" :value="checked" :disabled="disabled" />
53
+ <el-checkbox v-else :key="'unchecked-' + key" :value="checked" :disabled="disabled" />
54
54
  </span>
55
55
  </template>
56
56
  <template #checkbox="{ $table, row, checked, indeterminate, disabled }">
57
57
  <span class="custom-checkbox" @click.stop="toggleChecked($table, row, disabled)">
58
58
  <el-checkbox v-if="indeterminate" :key="key" :indeterminate="indeterminate" :disabled="disabled" />
59
- <el-checkbox v-else-if="checked" :key="key" :value="checked" :disabled="disabled" />
60
- <el-checkbox v-else :key="key" :value="checked" :disabled="disabled" />
59
+ <el-checkbox v-else-if="checked" :key="'checked-' + key" :value="checked" :disabled="disabled" />
60
+ <el-checkbox v-else :key="'unchecked-' + key" :value="checked" :disabled="disabled" />
61
61
  </span>
62
62
  </template>
63
63
  </vxe-column>
@@ -68,7 +68,7 @@
68
68
  >
69
69
  <vxe-column
70
70
  v-for="(subItem, i) in item.children"
71
- :key="'vxe-table-' + i"
71
+ :key="'vxe-column-' + i"
72
72
  :formatter="subItem.formatter ? subItem.formatter : 'formatName'"
73
73
  :filters="subItem.filters"
74
74
  :filter-render="subItem.filterRender"
@@ -80,7 +80,7 @@
80
80
  </vxe-colgroup>
81
81
  <vxe-column
82
82
  v-else
83
- :key="'vxe-table-' + i"
83
+ :key="'vxe-table-column-' + i"
84
84
  :class-name="`${item.wrap && `vxe-table-custom-wrap`} ${item.bold && `font-w600`}`"
85
85
  :formatter="item.formatter ? item.formatter : 'formatName'"
86
86
  :filters="item.filters"
@@ -69,5 +69,5 @@ export async function getSign(plain, dn) {
69
69
  Message.warning('当前Ukey不匹配!')
70
70
  throw new Error('当前Ukey不匹配!')
71
71
  }
72
- return performSign(plainText + dn)
72
+ return performSign(plainText)
73
73
  }