n20-common-lib 2.9.13 → 2.9.14

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 (130) hide show
  1. package/nstc-g6/components/NstcCharts/NstcCharts.vue +16 -8
  2. package/package.json +8 -5
  3. package/src/assets/css/approve-card.scss +1 -1
  4. package/src/assets/css/date-quarter.scss +8 -0
  5. package/src/assets/css/expandable-pane.scss +7 -0
  6. package/src/assets/css/file-upload-table.scss +2 -3
  7. package/src/assets/css/font-icon.scss +3 -1
  8. package/src/assets/css/message.scss +6 -6
  9. package/src/assets/css/normalize.scss +4 -1
  10. package/src/assets/css/table.scss +16 -11
  11. package/src/assets/iconFont/SIMSUN.ttf +0 -0
  12. package/src/assets/iconFont/font.css +4 -0
  13. package/src/components/AIButton/index.vue +101 -0
  14. package/src/components/AdvancedFilter/formItemRender.vue +7 -4
  15. package/src/components/AdvancedFilter/index.vue +6 -7
  16. package/src/components/Anchor/index.vue +1 -0
  17. package/src/components/ApprovalButtons/index.vue +404 -82
  18. package/src/components/ApprovalButtons/indexApp.vue +1102 -0
  19. package/src/components/ApprovalButtons/selectSpr.vue +128 -0
  20. package/src/components/ApprovalButtons/setCarboncopyProp.vue +1 -1
  21. package/src/components/ApprovalButtons/setRejectToProp.vue +45 -5
  22. package/src/components/ApprovalButtons/showAppOpi.vue +265 -8
  23. package/src/components/ApprovalButtons/showOtherAttrNew.vue +161 -0
  24. package/src/components/ApprovalCard/index.vue +190 -44
  25. package/src/components/ApprovalCard/indexApp.vue +592 -0
  26. package/src/components/ApprovalRecord/approvalImgPro/child.vue +1 -1
  27. package/src/components/ApprovalRecord/approvalImgPro/index.vue +42 -5
  28. package/src/components/ApprovalRecord/index.vue +23 -6
  29. package/src/components/ApprovalRecord/indexApp.vue +79 -0
  30. package/src/components/AttachmentPass/index.vue +286 -0
  31. package/src/components/Button/button-group.vue +3 -1
  32. package/src/components/CascaderArea/index.vue +5 -6
  33. package/src/components/DatePicker/por.vue +31 -1
  34. package/src/components/DateSelect/quarterDatePicker.vue +23 -1
  35. package/src/components/Descriptions/index.vue +7 -3
  36. package/src/components/Dialog/index.vue +4 -0
  37. package/src/components/Diff/index.vue +4 -2
  38. package/src/components/DynamicField/DynamicField.vue +29 -6
  39. package/src/components/DynamicField/DynamicFieldMixin.js +13 -5
  40. package/src/components/DynamicField/DynamicFieldOptions.vue +135 -62
  41. package/src/components/DynamicField/DynamicTable.vue +11 -1
  42. package/src/components/DynamicField/contentPop.vue +110 -0
  43. package/src/components/DynamicField/tableList.vue +5 -1
  44. package/src/components/DynamicField/tableView.vue +143 -0
  45. package/src/components/ECharts/index.vue +15 -9
  46. package/src/components/Expandable/main.vue +17 -2
  47. package/src/components/FileImport/index.vue +4 -5
  48. package/src/components/FileUploadTable/FileUploadTableV3.vue +937 -0
  49. package/src/components/FileUploadTable/aiCheckDialog.vue +139 -0
  50. package/src/components/FileUploadTable/index.vue +251 -33
  51. package/src/components/FileUploadTable/jytg.svg +6 -0
  52. package/src/components/FileUploadTable/wsc.svg +3 -0
  53. package/src/components/FileUploadTable/ysc.svg +3 -0
  54. package/src/components/HandlingAdvice/index.vue +191 -0
  55. package/src/components/InputAccount/index.vue +105 -0
  56. package/src/components/InputNumber/index.vue +16 -4
  57. package/src/components/InputNumber/numberRange.vue +14 -0
  58. package/src/components/InputSearch/index.vue +8 -0
  59. package/src/components/Layout/HeaderWrap/changePwd.vue +50 -23
  60. package/src/components/Layout/HeaderWrap/index.vue +2 -2
  61. package/src/components/Layout/HeaderWrap/indexN.vue +296 -119
  62. package/src/components/Layout/SubContent/index.vue +45 -14
  63. package/src/components/Layout/indexN.vue +26 -5
  64. package/src/components/LoginTemporary/form.vue +126 -34
  65. package/src/components/LoginTemporary/index.vue +14 -3
  66. package/src/components/LoginTemporary/indexN.vue +35 -13
  67. package/src/components/Preview/index.vue +199 -0
  68. package/src/components/SelectDatePickerPro/customDatePicker.vue +7 -0
  69. package/src/components/SelectDatePickerPro/halfYearPicker.vue +165 -0
  70. package/src/components/SelectDatePickerPro/index.vue +44 -4
  71. package/src/components/SelectDatePickerPro/quarterDatePicker.vue +32 -10
  72. package/src/components/SelectTree/index.vue +10 -4
  73. package/src/components/SelectTree/pro.vue +3 -0
  74. package/src/components/ShowColumn/index copy 2.vue +545 -0
  75. package/src/components/ShowColumn/index copy.vue +566 -0
  76. package/src/components/ShowColumn/index.vue +11 -7
  77. package/src/components/Statis/statisItem.vue +8 -7
  78. package/src/components/Table/filters.js +13 -0
  79. package/src/components/Table/index.vue +4 -4
  80. package/src/components/TablePro/filterContent.vue +18 -8
  81. package/src/components/TablePro/index.js +41 -1
  82. package/src/components/TablePro/index.vue +117 -6
  83. package/src/components/TableProOperateColumn/OperateBtns.vue +11 -53
  84. package/src/components/TableProOperateColumn/OperateBtns_copy.vue +141 -0
  85. package/src/components/TableProOperateColumn/childrenOperateBtn.vue +108 -0
  86. package/src/components/TableProOperateColumn/index.vue +3 -6
  87. package/src/components/TableSetSize/index.vue +1 -1
  88. package/src/components/Tree/index.vue +21 -5
  89. package/src/components/Upload/index.vue +25 -10
  90. package/src/components/Upload/uploadMsg.vue +30 -25
  91. package/src/components/operatingStatus/index.vue +3 -4
  92. package/src/directives/VTitle/index.js +15 -5
  93. package/src/directives/watermark/index.js +140 -56
  94. package/src/i18n.json +146 -18
  95. package/src/index.js +31 -3
  96. package/src/plugins/Sign/CaMap.js +47 -8
  97. package/src/plugins/Sign/Itrus/index.js +1 -1
  98. package/src/plugins/Sign/Itrus/sign_3720.js +2 -1
  99. package/src/plugins/Sign/NetSM3/index.js +20 -11
  100. package/src/plugins/Sign/NetV3/index.js +163 -22
  101. package/src/plugins/Sign/SkfSign/index.js +55 -52
  102. package/src/plugins/Sign/bjca/index.js +229 -9
  103. package/src/plugins/Sign/hnca/index.js +5064 -0
  104. package/src/plugins/Sign/index.js +155 -103
  105. package/src/plugins/Sign/kySign/base64.js +160 -0
  106. package/src/plugins/Sign/kySign/hex.js +92 -0
  107. package/src/plugins/Sign/kySign/index.js +186 -0
  108. package/src/plugins/Sign/kySign/skf.js +937 -0
  109. package/src/plugins/Sign/kySign/test.html +463 -0
  110. package/src/plugins/Sign/sdca/index.js +73 -0
  111. package/src/plugins/Sign/sign.js +72 -52
  112. package/src/plugins/Sign/signV3/InfosecNetSignCNGAgent.min.js +1 -0
  113. package/src/plugins/Sign/signV3/sign.js +187 -0
  114. package/src/plugins/Sign/sign_back.js +172 -0
  115. package/src/utils/accountFormat.js +7 -0
  116. package/src/utils/asyncGetRelaNos.js +79 -46
  117. package/src/utils/axios.js +3 -5
  118. package/src/utils/i18n/index.js +1 -1
  119. package/src/utils/importGlobal.js +23 -12
  120. package/style/fonts/SIMSUN.5e0c362c.ttf +0 -0
  121. package/style/index.css +2 -2
  122. package/theme/blue.css +2 -2
  123. package/theme/cctcRed.css +2 -2
  124. package/theme/fonts/SIMSUN.5e0c362c.ttf +0 -0
  125. package/theme/green.css +2 -2
  126. package/theme/lightBlue.css +2 -2
  127. package/theme/orange.css +2 -2
  128. package/theme/purple.css +2 -2
  129. package/theme/red.css +2 -2
  130. package/theme/yellow.css +2 -2
@@ -4,10 +4,10 @@
4
4
 
5
5
  <script>
6
6
  import * as echarts from 'echarts'
7
+ import XEUtils from 'xe-utils'
7
8
  import resize from './mixins/resize'
8
- import merge from 'lodash/merge'
9
9
 
10
- import { color, axisConfig, pieConfig } from './define'
10
+ import { axisConfig, color, pieConfig } from './define'
11
11
 
12
12
  export default {
13
13
  name: 'NstcCharts',
@@ -71,7 +71,9 @@ export default {
71
71
  containLabel: true
72
72
  }
73
73
 
74
- grid = Array.isArray(grid) ? grid.map((item) => merge({}, selfGrid, item)) : merge({}, selfGrid, grid)
74
+ grid = Array.isArray(grid)
75
+ ? grid.map((item) => XEUtils.merge({}, selfGrid, item))
76
+ : XEUtils.merge({}, selfGrid, grid)
75
77
 
76
78
  return {
77
79
  grid
@@ -79,13 +81,19 @@ export default {
79
81
  },
80
82
 
81
83
  xAxis({ xAxis }) {
82
- xAxis = xAxis && xAxis.length ? xAxis.map((item) => merge({}, axisConfig, item)) : [merge({}, axisConfig, xAxis)]
84
+ xAxis =
85
+ xAxis && xAxis.length
86
+ ? xAxis.map((item) => XEUtils.merge({}, axisConfig, item))
87
+ : [XEUtils.merge({}, axisConfig, xAxis)]
83
88
 
84
89
  return { xAxis }
85
90
  },
86
91
 
87
92
  yAxis({ yAxis }) {
88
- yAxis = yAxis && yAxis.length ? yAxis.map((item) => merge({}, axisConfig, item)) : [merge({}, axisConfig, yAxis)]
93
+ yAxis =
94
+ yAxis && yAxis.length
95
+ ? yAxis.map((item) => XEUtils.merge({}, axisConfig, item))
96
+ : [XEUtils.merge({}, axisConfig, yAxis)]
89
97
 
90
98
  return { yAxis }
91
99
  },
@@ -109,7 +117,7 @@ export default {
109
117
  config = pieConfig
110
118
  }
111
119
 
112
- return merge(config, sery)
120
+ return XEUtils.merge(config, sery)
113
121
  })
114
122
 
115
123
  return { series }
@@ -131,14 +139,14 @@ export default {
131
139
  return { ...prev, ...this[key](baseOption) }
132
140
  }, defaultConfigs)
133
141
 
134
- return { options, baseOption: merge({}, _baseOption, baseOption), ...other }
142
+ return { options, baseOption: XEUtils.merge({}, _baseOption, baseOption), ...other }
135
143
  }
136
144
 
137
145
  const option = keys.reduce((prev, key) => {
138
146
  return { ...prev, ...this[key](params) }
139
147
  }, defaultConfigs)
140
148
 
141
- return merge({}, option, params)
149
+ return XEUtils.merge({}, option, params)
142
150
  },
143
151
 
144
152
  clear() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n20-common-lib",
3
- "version": "2.9.13",
3
+ "version": "2.9.14",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -18,7 +18,8 @@
18
18
  "getI18n": "node ./node_modules/nstc-get-i18n --path ./server-config.jsonc --name lang",
19
19
  "info": "node versionInfo.js",
20
20
  "serve:theme": "vue-cli-service serve --testTheme",
21
- "test": "vue-cli-service serve --test"
21
+ "test": "vue-cli-service serve --test",
22
+ "publish": "npm publish --tag legacy"
22
23
  },
23
24
  "main": "src/index.js",
24
25
  "files": [
@@ -51,7 +52,9 @@
51
52
  "dependencies": {
52
53
  "axios": "*",
53
54
  "dayjs": "*",
55
+ "decimal.js": "^10.5.0",
54
56
  "js-cookie": "^3.0.1",
57
+ "jsencrypt": "^3.3.2",
55
58
  "jsonwebtoken": "^8.5.1",
56
59
  "lz-string": "^1.4.4",
57
60
  "normalize.css": "^8.0.1",
@@ -61,6 +64,7 @@
61
64
  "qrcode": "*",
62
65
  "resize-detector": "*",
63
66
  "strip-json-comments": "*",
67
+ "swiper": "8.4.5",
64
68
  "v-viewer": "1.6.4",
65
69
  "vue-jsonp": "2.0.0",
66
70
  "vuedraggable": "*",
@@ -77,6 +81,7 @@
77
81
  "@vue/compiler-dom": "^3.2.47",
78
82
  "@vue/test-utils": "^1.1.3",
79
83
  "@vue/vue2-jest": "^27.0.0-alpha.2",
84
+ "babel-core": "^7.0.0-bridge.0",
80
85
  "babel-eslint": "^10.1.0",
81
86
  "babel-jest": "^27.0.6",
82
87
  "babel-plugin-component": "^1.1.1",
@@ -94,7 +99,6 @@
94
99
  "html-webpack-tags-plugin": "^2.0.17",
95
100
  "jest": "^27.0.5",
96
101
  "jszip": "^3.10.0",
97
- "lodash": "^4.17.21",
98
102
  "md2vue-loader": "file:./md2vue-loader",
99
103
  "mockjs": "^1.1.0",
100
104
  "node-sass": "6.0.0",
@@ -107,7 +111,6 @@
107
111
  "svg-sprite-loader": "4.1.3",
108
112
  "svg-url-loader": "^7.1.1",
109
113
  "svgo": "1.2.0",
110
- "swiper": "^8.4.5",
111
114
  "umy-table": "^1.1.8",
112
115
  "url-loader": "^4.1.1",
113
116
  "vue": "^2.6.11",
@@ -117,7 +120,7 @@
117
120
  "vue-router": "^3.5.2",
118
121
  "vue-template-compiler": "^2.6.11",
119
122
  "vuex": "^3.6.2",
120
- "vxe-table": "^3.6.17",
123
+ "vxe-table": "3.6.17",
121
124
  "webpack-bundle-analyzer": "^3.9.0",
122
125
  "xlsx": "0.14.1",
123
126
  "xlsx-style": "^0.8.13"
@@ -63,7 +63,7 @@
63
63
  color: $--color-text-regular;
64
64
  }
65
65
  .n20-description-bgc {
66
- margin-left: 40px;
66
+ // margin-left: 40px;
67
67
  margin-top: 10px;
68
68
  background: $--background-color-base;
69
69
  height: 100%;
@@ -8,6 +8,7 @@
8
8
  .el-select .el-input__inner {
9
9
  border: none;
10
10
  border-radius: 4px 0 0 4px;
11
+ padding: 0 10px;
11
12
  }
12
13
 
13
14
  .el-select .el-input__inner:active,
@@ -109,3 +110,10 @@
109
110
  .el-button.el-button--text.is-disabled:hover {
110
111
  color: #333;
111
112
  }
113
+ .clearable-datetimerange {
114
+ .el-picker-panel__footer {
115
+ .el-picker-panel__link-btn:first-child {
116
+ display: none !important;
117
+ }
118
+ }
119
+ }
@@ -8,6 +8,10 @@ $--expandable-pane-height: 28px;
8
8
  color: $--color-text-primary;
9
9
  padding: 0 12px;
10
10
  margin-bottom: 8px;
11
+ margin-top: 8px;
12
+ &__algin_l {
13
+ margin-left: 20px;
14
+ }
11
15
  }
12
16
 
13
17
  .n20-tips {
@@ -31,6 +35,9 @@ $--expandable-pane-height: 28px;
31
35
  .expand {
32
36
  transform: rotate(90deg);
33
37
  }
38
+ .topExpand {
39
+ transform: rotate(270deg);
40
+ }
34
41
  }
35
42
 
36
43
  .color-0 {
@@ -6,13 +6,12 @@
6
6
  border-right: $--tab-border-line;
7
7
 
8
8
  .cell {
9
-
10
9
  .el-icon-download,
11
10
  .el-icon-view {
12
11
  color: $--color-text-primary;
13
12
 
14
13
  &:hover {
15
- color: $--color-primary
14
+ color: $--color-primary;
16
15
  }
17
16
  }
18
17
  }
@@ -36,4 +35,4 @@
36
35
  .el-message-box__btns {
37
36
  margin-top: 0;
38
37
  }
39
- }
38
+ }
@@ -1,5 +1,7 @@
1
+ @import url('../iconFont/font.css');
1
2
  @import url('../iconFont/iconfont.css');
2
3
 
4
+
3
5
  .n20-icon- {
4
6
  font-family: 'core-lib-iconfont' !important;
5
7
  font-style: normal;
@@ -48,4 +50,4 @@
48
50
  -webkit-font-smoothing: antialiased;
49
51
  -moz-osx-font-smoothing: grayscale;
50
52
  -webkit-text-stroke-width: 0.2px;
51
- }
53
+ }
@@ -1,6 +1,8 @@
1
1
  .el-message {
2
2
  padding-top: 12px;
3
3
  padding-bottom: 12px;
4
+ overflow-wrap: anywhere;
5
+ max-width: 80%;
4
6
  }
5
7
 
6
8
  .el-message-box {
@@ -46,7 +48,7 @@
46
48
  border-color: var(--color-primary-hover);
47
49
  }
48
50
 
49
- & .el-button+.el-button {
51
+ & .el-button + .el-button {
50
52
  margin-left: 0;
51
53
  margin-right: 16px;
52
54
  }
@@ -101,7 +103,7 @@
101
103
  border-color: var(--color-primary-hover);
102
104
  }
103
105
 
104
- & .el-button+.el-button {
106
+ & .el-button + .el-button {
105
107
  margin-left: 0;
106
108
  margin-right: 16px;
107
109
  }
@@ -160,7 +162,7 @@
160
162
  }
161
163
 
162
164
  .el-message--success {
163
- border: 1px solid rgba(72, 210, 160, 0.40);
165
+ border: 1px solid rgba(72, 210, 160, 0.4);
164
166
  }
165
167
 
166
168
  .el-message--error {
@@ -171,7 +173,6 @@
171
173
  border: 1px solid #ffe28d;
172
174
  }
173
175
 
174
-
175
176
  .message-por.el-message--info {
176
177
  .el-message__icon {
177
178
  color: $--color-primary;
@@ -190,7 +191,6 @@
190
191
  color: $--color-text-regular;
191
192
  }
192
193
 
193
-
194
194
  .el-message--success .el-message__content {
195
195
  color: $--color-text-regular;
196
196
  }
@@ -213,4 +213,4 @@
213
213
 
214
214
  .el-message-box__status.el-icon-info {
215
215
  color: $--messagebox-warning-color;
216
- }
216
+ }
@@ -2,6 +2,9 @@
2
2
  // .input-w {width: $--input-width;}
3
3
  // .button-4em{min-width: 72px;}
4
4
  /* 格式化样式 */
5
+
6
+
7
+
5
8
  html {
6
9
  height: 100%;
7
10
  }
@@ -9,7 +12,7 @@ html {
9
12
  body {
10
13
  height: 100%;
11
14
  font-size: $--font-size-base;
12
- font-family: PingFang SC, Microsoft YaHei, Arial, sans-serif;
15
+ font-family: PingFang SC, Microsoft YaHei, SUN, Arial, sans-serif;
13
16
  }
14
17
 
15
18
  li {
@@ -11,7 +11,7 @@
11
11
  }
12
12
 
13
13
  .el-table--small .el-table__cell {
14
- padding: 10px 0;
14
+ padding: 8px 0;
15
15
  }
16
16
 
17
17
  .el-table .cell {
@@ -51,7 +51,6 @@
51
51
  }
52
52
 
53
53
  .el-table {
54
-
55
54
  /* 排序 */
56
55
  .caret-wrapper {
57
56
  display: inline-flex;
@@ -123,8 +122,8 @@
123
122
 
124
123
  /* 附件上传hover颜色 */
125
124
  .base-table_default {
126
- .el-table__body .hover-active:hover>td {
127
- background-color: #FF3C2F10 !important;
125
+ .el-table__body .hover-active:hover > td {
126
+ background-color: #ff3c2f10 !important;
128
127
  }
129
128
  }
130
129
 
@@ -196,17 +195,17 @@ th.vxe-header--column {
196
195
  color: #333;
197
196
  }
198
197
 
199
- .vxe-table-custom-wrap.vxe-body--column.col--ellipsis:not(.col--actived)>.vxe-cell,
200
- .vxe-table--render-default .vxe-table-custom-wrap.vxe-footer--column.col--ellipsis:not(.col--actived)>.vxe-cell,
201
- .vxe-table--render-default .vxe-table-custom-wrap.vxe-header--column.col--ellipsis:not(.col--actived)>.vxe-cell {
198
+ .vxe-table-custom-wrap.vxe-body--column.col--ellipsis:not(.col--actived) > .vxe-cell,
199
+ .vxe-table--render-default .vxe-table-custom-wrap.vxe-footer--column.col--ellipsis:not(.col--actived) > .vxe-cell,
200
+ .vxe-table--render-default .vxe-table-custom-wrap.vxe-header--column.col--ellipsis:not(.col--actived) > .vxe-cell {
202
201
  overflow: hidden;
203
202
  text-overflow: ellipsis;
204
203
  white-space: wrap !important;
205
204
  }
206
205
 
207
- .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-body--column.col--ellipsis>.vxe-cell,
208
- .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-footer--column.col--ellipsis>.vxe-cell,
209
- .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-header--column.col--ellipsis>.vxe-cell {
206
+ .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-body--column.col--ellipsis > .vxe-cell,
207
+ .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-footer--column.col--ellipsis > .vxe-cell,
208
+ .vxe-table--render-default.size--small .vxe-table-custom-wrap.vxe-header--column.col--ellipsis > .vxe-cell {
210
209
  max-height: 100%;
211
210
  }
212
211
 
@@ -226,4 +225,10 @@ th.vxe-header--column {
226
225
  .icon-mini {
227
226
  background-image: url('../../components/TableSetSize/mini.png');
228
227
  }
229
- }
228
+ }
229
+
230
+ .el-table th.el-table__cell > .cell {
231
+ overflow: hidden;
232
+ text-overflow: ellipsis;
233
+ white-space: nowrap;
234
+ }
Binary file
@@ -0,0 +1,4 @@
1
+ @font-face {
2
+ font-family: 'SUN';
3
+ src: url('./SIMSUN.ttf') format('truetype');
4
+ }
@@ -0,0 +1,101 @@
1
+ <template>
2
+ <span>
3
+ <slot :customEvent="aiFn">
4
+ <el-button v-title="'AI识别'" type="text" icon="n20-icon-query" @click="aiFn" />
5
+ </slot>
6
+ <Dialog v-drag :visible.sync="visible" title="AI识别" :destroy-on-open="true" width="690px">
7
+ <cl-upload
8
+ :drag="true"
9
+ :file-name.sync="fileName"
10
+ :file-url.sync="fileUrl"
11
+ :action="apiPrefix ? apiPrefix + 'neams/eamsbaserecord/batchSavejson' : 'neams/eamsbaserecord/batchSavejson'"
12
+ :on-success="onSuccess"
13
+ :msg-type="null"
14
+ :data="dataPorp"
15
+ >
16
+ <template slot="trigger">
17
+ <i class="drag-icon n20-icon-shangchuan"></i>
18
+ <span class="drag-text">点击或将文件拖拽到这里上传</span>
19
+ </template>
20
+ </cl-upload>
21
+ </Dialog>
22
+ </span>
23
+ </template>
24
+
25
+ <script>
26
+ import Dialog from '../Dialog/index.vue'
27
+ import clUpload from '../Upload/index.vue'
28
+ let dayjs = undefined
29
+ import('../../index.js').then((res) => {
30
+ dayjs = res.dayjs
31
+ })
32
+ export default {
33
+ name: 'AiButton',
34
+ components: { Dialog, clUpload },
35
+ props: {
36
+ apiPrefix: {
37
+ type: String,
38
+ default: undefined
39
+ },
40
+ AIOptions: {
41
+ type: Object,
42
+ default: () => ({})
43
+ },
44
+ dataPorp: {
45
+ type: Object,
46
+ default: () => {
47
+ return {
48
+ data: JSON.stringify({
49
+ syscode: '010000000',
50
+ appno: 'abcd',
51
+ bussValue: '006001001',
52
+ cltno: '001',
53
+ creator: 'jz'
54
+ })
55
+ }
56
+ }
57
+ }
58
+ },
59
+ data() {
60
+ return {
61
+ visible: false,
62
+ fileName: '',
63
+ fileUrl: ''
64
+ }
65
+ },
66
+ computed: {},
67
+ watch: {},
68
+ created() {},
69
+ mounted() {},
70
+ methods: {
71
+ aiFn() {
72
+ this.visible = true
73
+ },
74
+ onSuccess({ data }) {
75
+ this.AiFn(data)
76
+ },
77
+ // ai识别
78
+ async AiFn(beid) {
79
+ const uploadTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
80
+ if (!this.AIOptions.bussType) {
81
+ this.$message.error('请先配置bussType')
82
+ return false
83
+ }
84
+ const { data, code } = await this.$axios.post(
85
+ this.apiPrefix ? `${this.apiPrefix}neams/eamsbaserecord/aiAttaFile` : `/neams/eamsbaserecord/aiAttaFile`,
86
+ {
87
+ beid: beid,
88
+ bussType: this.AIOptions.bussType,
89
+ extendPrompt: ''
90
+ }
91
+ )
92
+ if (code === 200) {
93
+ this.$emit('aiFn', { AiResult: data, beid: beid, fileName: this.fileName, uploadTime: uploadTime })
94
+ this.visible = false
95
+ this.$message.success('识别成功')
96
+ }
97
+ }
98
+ }
99
+ }
100
+ </script>
101
+ <style lang="scss" scoped></style>
@@ -8,11 +8,12 @@ import inputNumber from '../InputNumber/index.vue'
8
8
  import InputNumberRange from '../InputNumber/numberRange.vue'
9
9
  import selectTree from '../SelectTree/index.vue'
10
10
  import selectTreePro from '../SelectTree/pro.vue'
11
+ import { setOptionsMap } from './utils.js'
11
12
  const canvas = document.createElement('canvas')
12
13
  const context = canvas.getContext('2d')
13
14
  context.font = '14px Ping Fang SC'
14
15
  export default {
15
- name: 'formItemRender',
16
+ name: 'FormItemRender',
16
17
  components: {
17
18
  inputNumber,
18
19
  selectTree,
@@ -76,6 +77,7 @@ export default {
76
77
  resKeys.forEach((key) => {
77
78
  list = list[key]
78
79
  })
80
+ setOptionsMap(this.item.id, list)
79
81
  this.$set(this.item, 'options', list)
80
82
  })
81
83
  }
@@ -171,9 +173,9 @@ export default {
171
173
  }
172
174
  } else {
173
175
  if (type) {
174
- W = w ? w : asciiWidth(item.placeholder || typeEnum[item.type]) + 150
176
+ W = w || asciiWidth(item.placeholder || typeEnum[item.type]) + 150
175
177
  } else {
176
- W = w ? w : asciiWidth(item.placeholder || typeEnum[item.type]) + 40
178
+ W = w || asciiWidth(item.placeholder || typeEnum[item.type]) + 40
177
179
  }
178
180
  }
179
181
  } else {
@@ -600,7 +602,8 @@ export default {
600
602
  ruleField: true,
601
603
  'rule-form': 'ruleValidate',
602
604
  ruleErrorHide: item.ruleErrorHide,
603
- rules: item.rules
605
+ rules: item.rules,
606
+ ...item.props
604
607
  },
605
608
  props: pickerProps,
606
609
  style: {
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div :class="prefixCls">
3
- <el-form ref="advancedFilter" v-show="visible" :class="prefixCls + '-body'">
3
+ <el-form v-show="visible" ref="advancedFilter" :class="prefixCls + '-body'" @submit.native.prevent="() => {}">
4
4
  <slot name="prefix"></slot>
5
5
  <el-form-item
6
6
  v-for="item in GroupData"
@@ -42,13 +42,13 @@
42
42
  </div>
43
43
  <filterItem
44
44
  :filter-list="filterListS"
45
- :maxLength="maxLength"
45
+ :max-length="maxLength"
46
46
  :check-array.sync="checkList"
47
47
  @checked="check"
48
48
  />
49
49
  <div class="flex-box flex-c m-t-m">
50
50
  <el-button size="mini" type="primary" @click="savaCheck">{{ $lc('确认') }}</el-button>
51
- <el-button plain type="primary" @click="cancel">{{ $l('取消') }}</el-button>
51
+ <el-button plain type="primary" @click="cancel">{{ $lc('取消') }}</el-button>
52
52
  </div>
53
53
  </el-popover>
54
54
  <el-link class="m-l-s color-primary" :underline="false" icon="n20-icon-query" @click="$emit('search')">
@@ -62,9 +62,8 @@
62
62
 
63
63
  <script>
64
64
  // import formItemInput from './form-item-input.vue'
65
- import cloneDeep from 'lodash/cloneDeep'
65
+ import XEUtils from 'xe-utils'
66
66
  import axios from '../../utils/axios.js'
67
- import { $lc } from '../../utils/i18n/index.js'
68
67
  import InputSearch from '../InputSearch/index.vue'
69
68
  import filterItem from './filterItem.vue'
70
69
  import formItemRender from './formItemRender.vue'
@@ -165,7 +164,7 @@ export default {
165
164
  }
166
165
  })
167
166
  .map((item) => item[this.onlyKey])
168
- this.defineCheckList = cloneDeep(_checkList)
167
+ this.defineCheckList = XEUtils.clone(_checkList, true)
169
168
  },
170
169
  getOnlyKey(data) {
171
170
  return getOnlyKey(this.onlyKey, data)
@@ -401,7 +400,7 @@ export default {
401
400
  }
402
401
  }
403
402
  this.checkList = this.GroupData.map((res) => res.id)
404
- this.cancelCheck = cloneDeep(this.checkList)
403
+ this.cancelCheck = XEUtils.clone(this.checkList, true)
405
404
  // 查找排序,在this.filterList中查找this.checkList中的每一项,并将其排在前面
406
405
  this.filterList = this.filterList.sort((a, b) => {
407
406
  if (this.checkList.includes(a[this.onlyKey]) && !this.checkList.includes(b[this.onlyKey])) {
@@ -5,6 +5,7 @@
5
5
  :nav-list="navList"
6
6
  :activit="value"
7
7
  :style="{ width: navWidth }"
8
+ class="left-side"
8
9
  :class="{ 'top-css': position === 'top' }"
9
10
  @click="activitFn"
10
11
  />