@bit-sun/business-component 2.2.2 → 2.2.3

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 (176) hide show
  1. package/.editorconfig +16 -16
  2. package/.fatherrc.ts +5 -5
  3. package/.gitlab-ci.yml +179 -179
  4. package/.prettierignore +7 -7
  5. package/.prettierrc +11 -11
  6. package/.umirc.ts +74 -74
  7. package/README.md +27 -27
  8. package/dist/index.esm.js +4 -4
  9. package/dist/index.js +4 -4
  10. package/docs/index.md +21 -21
  11. package/lib/assets/drag.svg +17 -17
  12. package/lib/assets/exportFail.svg +37 -37
  13. package/lib/assets/exportProcessing.svg +28 -28
  14. package/lib/assets/exportSuccess.svg +34 -34
  15. package/lib/assets/label_icon_bottom.svg +25 -25
  16. package/lib/assets/upExport.svg +22 -22
  17. package/package.json +77 -77
  18. package/src/assets/32.svg +27 -27
  19. package/src/assets/addIcon.svg +17 -17
  20. package/src/assets/allfunc.svg +27 -27
  21. package/src/assets/arrowRight.svg +24 -24
  22. package/src/assets/btn-delete.svg +29 -29
  23. package/src/assets/btn-edit.svg +19 -19
  24. package/src/assets/btn-more.svg +17 -17
  25. package/src/assets/btn-submit.svg +19 -19
  26. package/src/assets/caidan.svg +11 -11
  27. package/src/assets/close.svg +26 -26
  28. package/src/assets/drag.svg +17 -17
  29. package/src/assets/exportFail.svg +37 -37
  30. package/src/assets/exportProcessing.svg +28 -28
  31. package/src/assets/exportSuccess.svg +34 -34
  32. package/src/assets/fixed-left-active.svg +11 -11
  33. package/src/assets/fixed-left.svg +15 -15
  34. package/src/assets/fixed-right-active.svg +11 -11
  35. package/src/assets/fixed-right.svg +15 -15
  36. package/src/assets/guanbi.svg +15 -15
  37. package/src/assets/icon-quanping.svg +15 -15
  38. package/src/assets/icon-shezhi.svg +17 -17
  39. package/src/assets/label_icon_bottom.svg +25 -25
  40. package/src/assets/list-no-img.svg +21 -21
  41. package/src/assets/morentouxiang-32.svg +23 -23
  42. package/src/assets/scanning.svg +24 -24
  43. package/src/assets/upExport.svg +22 -22
  44. package/src/components/Business/AddSelectBusiness/index.md +63 -63
  45. package/src/components/Business/AddSelectBusiness/index.tsx +344 -344
  46. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +111 -111
  47. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
  48. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
  49. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
  50. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
  51. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
  52. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
  53. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
  54. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
  55. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
  56. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
  57. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
  58. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
  59. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +157 -157
  60. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
  61. package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
  62. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +156 -156
  63. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
  64. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
  65. package/src/components/Business/BsLayouts/index.less +79 -79
  66. package/src/components/Business/BsLayouts/index.tsx +1479 -1479
  67. package/src/components/Business/BsLayouts/service.ts +10 -10
  68. package/src/components/Business/BsLayouts/utils.tsx +230 -230
  69. package/src/components/Business/BsSulaQueryTable/index.less +219 -219
  70. package/src/components/Business/BsSulaQueryTable/index.tsx +480 -480
  71. package/src/components/Business/BsSulaQueryTable/setting.tsx +802 -802
  72. package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
  73. package/src/components/Business/BsSulaQueryTable/utils.tsx +688 -688
  74. package/src/components/Business/CommodityEntry/index.md +70 -70
  75. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  76. package/src/components/Business/CommonAlert/index.tsx +23 -23
  77. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  78. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  79. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  80. package/src/components/Business/DetailPageWrapper/index.less +79 -79
  81. package/src/components/Business/DetailPageWrapper/index.tsx +335 -335
  82. package/src/components/Business/DetailPageWrapper/utils.tsx +100 -100
  83. package/src/components/Business/HomePageWrapper/index.less +33 -33
  84. package/src/components/Business/HomePageWrapper/index.md +45 -45
  85. package/src/components/Business/HomePageWrapper/index.tsx +162 -162
  86. package/src/components/Business/JsonQueryTable/components/FieldsModifyModal.tsx +824 -824
  87. package/src/components/Business/JsonQueryTable/components/FieldsSettingsTable.tsx +201 -201
  88. package/src/components/Business/JsonQueryTable/components/Formula.tsx +205 -205
  89. package/src/components/Business/JsonQueryTable/components/MaintainOptions.tsx +127 -127
  90. package/src/components/Business/JsonQueryTable/configButton/index.js +20 -20
  91. package/src/components/Business/JsonQueryTable/configTree/component/compactArrayView.js +25 -25
  92. package/src/components/Business/JsonQueryTable/configTree/component/compactObjectView.js +30 -30
  93. package/src/components/Business/JsonQueryTable/configTree/index.js +82 -82
  94. package/src/components/Business/JsonQueryTable/configTree/index.less +44 -44
  95. package/src/components/Business/JsonQueryTable/configTree/parser/highlight.js +57 -57
  96. package/src/components/Business/JsonQueryTable/configTree/parser/index.js +124 -124
  97. package/src/components/Business/JsonQueryTable/configTree/render/iconRender.js +29 -29
  98. package/src/components/Business/JsonQueryTable/configTree/render/nameRender.js +22 -22
  99. package/src/components/Business/JsonQueryTable/configTree/treeNode.js +116 -116
  100. package/src/components/Business/JsonQueryTable/drawer/index.tsx +12 -12
  101. package/src/components/Business/JsonQueryTable/function.ts +62 -62
  102. package/src/components/Business/JsonQueryTable/index.less +16 -16
  103. package/src/components/Business/JsonQueryTable/index.md +328 -328
  104. package/src/components/Business/JsonQueryTable/index.tsx +320 -320
  105. package/src/components/Business/JsonQueryTable/jsonEditor/index.js +346 -346
  106. package/src/components/Business/JsonQueryTable/jsonEditor/index.less +22 -22
  107. package/src/components/Business/JsonQueryTable/jsonEditor/lint/basicType.js +147 -147
  108. package/src/components/Business/JsonQueryTable/jsonEditor/lint/index.js +389 -389
  109. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/actions.js +118 -118
  110. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/dependency.js +22 -22
  111. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/index.js +21 -21
  112. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/request.js +65 -65
  113. package/src/components/Business/JsonQueryTable/static.ts +356 -356
  114. package/src/components/Business/SearchSelect/BusinessUtils.ts +1586 -1586
  115. package/src/components/Business/SearchSelect/common.ts +53 -53
  116. package/src/components/Business/SearchSelect/index.md +1254 -1254
  117. package/src/components/Business/SearchSelect/index.tsx +51 -51
  118. package/src/components/Business/SearchSelect/utils.ts +100 -100
  119. package/src/components/Business/StateFlow/index.less +130 -130
  120. package/src/components/Business/StateFlow/index.md +60 -60
  121. package/src/components/Business/StateFlow/index.tsx +29 -29
  122. package/src/components/Business/TreeSearchSelect/index.md +126 -126
  123. package/src/components/Business/TreeSearchSelect/index.tsx +34 -34
  124. package/src/components/Business/TreeSearchSelect/utils.ts +60 -60
  125. package/src/components/Business/columnSettingTable/columnSetting.tsx +764 -764
  126. package/src/components/Business/columnSettingTable/index.less +247 -247
  127. package/src/components/Business/columnSettingTable/index.md +357 -357
  128. package/src/components/Business/columnSettingTable/index.tsx +232 -232
  129. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +240 -240
  130. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  131. package/src/components/Business/moreTreeTable/index.less +99 -99
  132. package/src/components/Business/moreTreeTable/index.md +508 -508
  133. package/src/components/Business/moreTreeTable/index.tsx +315 -315
  134. package/src/components/Business/moreTreeTable/utils.ts +126 -126
  135. package/src/components/Functional/AddSelect/index.less +367 -367
  136. package/src/components/Functional/AddSelect/index.md +155 -155
  137. package/src/components/Functional/AddSelect/index.tsx +1072 -1072
  138. package/src/components/Functional/BillEntry/index.less +371 -371
  139. package/src/components/Functional/BillEntry/index.md +39 -39
  140. package/src/components/Functional/BillEntry/index.tsx +766 -766
  141. package/src/components/Functional/DataImport/index.less +63 -63
  142. package/src/components/Functional/DataImport/index.md +44 -44
  143. package/src/components/Functional/DataImport/index.tsx +695 -695
  144. package/src/components/Functional/DataValidation/index.less +63 -63
  145. package/src/components/Functional/DataValidation/index.md +39 -39
  146. package/src/components/Functional/DataValidation/index.tsx +687 -687
  147. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  148. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  149. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  150. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  151. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  152. package/src/components/Functional/SearchSelect/index.less +115 -115
  153. package/src/components/Functional/SearchSelect/index.md +141 -141
  154. package/src/components/Functional/SearchSelect/index.tsx +813 -813
  155. package/src/components/Functional/SearchSelect/utils.ts +3 -3
  156. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  157. package/src/components/Functional/TreeSearchSelect/index.tsx +149 -149
  158. package/src/index.ts +34 -34
  159. package/src/plugin/TableColumnSetting/index.less +247 -247
  160. package/src/plugin/TableColumnSetting/index.md +50 -50
  161. package/src/plugin/TableColumnSetting/index.tsx +724 -724
  162. package/src/plugin/TableColumnSetting/utils.ts +19 -19
  163. package/src/styles/bsDefault.less +1906 -1906
  164. package/src/utils/CheckOneUser/index.md +39 -39
  165. package/src/utils/CheckOneUser/index.ts +51 -51
  166. package/src/utils/LocalstorageUtils.ts +33 -33
  167. package/src/utils/TableUtils.tsx +18 -18
  168. package/src/utils/checkUtils.ts +39 -39
  169. package/src/utils/enumConfig.ts +10 -10
  170. package/src/utils/getFormMode.js +12 -12
  171. package/src/utils/index.ts +2 -2
  172. package/src/utils/requestUtils.ts +33 -33
  173. package/src/utils/serialize.js +7 -7
  174. package/src/utils/utils.ts +183 -183
  175. package/tsconfig.json +29 -29
  176. package/typings.d.ts +4 -4
@@ -1,344 +1,344 @@
1
- /*
2
- * @Description:
3
- * @Author: rodchen
4
- * @Date: 2022-05-07 15:17:28
5
- * @LastEditTime: 2022-05-08 21:01:21
6
- * @LastEditors: rodchen
7
- */
8
- import React, { useState } from 'react';
9
- import { Tooltip, Select } from 'antd';
10
- import { AddSelect } from '../../../index';
11
- import { tableColumnsImage } from '@/components/Business/BsSulaQueryTable/utils';
12
- import { getSkuImg } from '@/utils/TableUtils';
13
-
14
- function handleSelectColumn(c: any, parentProps: any) {
15
- let result = c;
16
- const exceptColumns = parentProps?.exceptColumns || [];
17
- const coverColumns = parentProps?.coverColumns || [];
18
- const additionColumns = parentProps?.additionColumns || [];
19
- // 过滤不需要展示内容
20
- if(exceptColumns?.length) {
21
- result = result.filter((i: any) => !exceptColumns.includes(i.dataIndex))
22
- }
23
- // 追加
24
- if(additionColumns?.length) {
25
- additionColumns.forEach((i: any) => {
26
- result.splice(i.position,0,i.column)
27
- })
28
- }
29
- // 覆盖内容
30
- if(coverColumns?.length) {
31
- result = coverColumns;
32
- }
33
- return result
34
- }
35
-
36
- export const AddSkuSelect = (parProps: any) => {
37
- const selectProps = {
38
- mode: 'multiple',
39
- }
40
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
41
- const initialSelectColumn = [
42
- {
43
- title: 'SKU编码',
44
- width: 150,
45
- dataIndex: 'skuCode',
46
- },
47
- {
48
- title: 'SKU名称',
49
- width: 200,
50
- ellipsis: {
51
- showTitle: false,
52
- },
53
- render: (text: any) => (
54
- <Tooltip placement="topLeft" title={text}>
55
- {text}
56
- </Tooltip>
57
- ),
58
- dataIndex: 'name',
59
- },
60
- {
61
- title: '图片',
62
- dataIndex: 'itemUrl',
63
- width: 200,
64
- ellipsis: {
65
- showTitle: false,
66
- },
67
- render: (text: any,record: any) => (
68
- <Tooltip placement="topLeft" title={text}>
69
- {tableColumnsImage(getSkuImg(record),{ width: 28, height: 28 })}
70
- </Tooltip>
71
- ),
72
- },
73
- {
74
- title: '数量',
75
- width: 100,
76
- isInputItem: true,
77
- dataIndex: 'count',
78
- },
79
- {
80
- title: '单位',
81
- dataIndex: 'selectUnitCode',
82
- width: 80,
83
- ellipsis: {
84
- showTitle: false,
85
- },
86
- render: (text: any, record: any) => {
87
- if (record?.packingUnitList?.length) {
88
- const basePackUnit = record?.packingUnitList[0]
89
- record.selectUnitCode = basePackUnit.unitCode
90
- return basePackUnit.name || basePackUnit.unitCode
91
- }
92
-
93
-
94
- return <></>
95
- },
96
- },
97
- {
98
- title: '所属SPU编码',
99
- width: 150,
100
- ellipsis: {
101
- showTitle: false,
102
- },
103
- dataIndex: 'itemCode',
104
- render: (text: any) => (
105
- <Tooltip placement="topLeft" title={text}>
106
- {text}
107
- </Tooltip>
108
- ),
109
- },
110
- {
111
- title: '规格',
112
- width: 200,
113
- ellipsis: {
114
- showTitle: false,
115
- },
116
- render: (text: any) => (
117
- <Tooltip placement="topLeft" title={text}>
118
- {text}
119
- </Tooltip>
120
- ),
121
- dataIndex: 'propertyNameAndValue',
122
- }
123
- ]
124
- const mTpSelectColumn = handleSelectColumn(initialSelectColumn, parProps)
125
- const props = {
126
- buttonText: parProps.buttonText || '新增',
127
- buttonProps: parProps.buttonProps || {},
128
- tableCodeList: parProps.tableCodeList || [],
129
- value,
130
- // labelInValue: true, // 非必填 默认为false
131
- requestConfig: {
132
- url: `/items/sku/pager/v2`,
133
- filter: 'qp-name-like', // 过滤参数 支持'qp-name-like'和['qp-name-like', 'qp-code-like']两种结构
134
- otherParams: {
135
- 'qp-combination-eq': false,
136
- 'qp-approveStatus-eq': 1,
137
- 'qp-status-eq': 1,
138
- }, // 默认参数
139
- mappingTextField: 'name',
140
- mappingValueField: 'skuCode',
141
- ...parProps.requestConfig
142
- },
143
- selectProps,
144
- onChange: (value: any) => {
145
- console.log(value)
146
- setValue(value)
147
- },
148
- beforeShowModal: parProps?.beforeShowModal,
149
- onSaveCallback: parProps.onSaveCallback
150
- // onSaveCallback: (rows) => {
151
- // console.log('save call', rows);
152
- // // return Promise.resolve(true);
153
- // // return Promise.reject('FAILE')
154
- // }
155
- };
156
- const modalTableProps = {
157
- modalTableTitle: '选择商品',
158
- tableSearchForm: [
159
- {
160
- name: 'qp-skuCode-like', label: 'SKU编码'
161
- },
162
- { name: 'qp-skuName-like', label: 'SKU名称' },
163
- { name: 'qp-brandId-in', type: 'select', label: '品牌', field: {
164
- type: 'select',
165
- props: {
166
- mode: 'multiple',
167
- notFoundContent: '暂无数据',
168
- allowClear: true,
169
- showSearch: true,
170
- showArrow: true,
171
- maxTagCount: 1,
172
- optionFilterProp: 'children',
173
- filterOption: (input: string, option: { props: { children: string } }) =>
174
- option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0,
175
- },
176
- } },
177
- { name: 'qp-categoryId-in', type: 'treeSelect', label: '类目', field: {
178
- type: 'treeSelect',
179
- props: {
180
- treeData: [],
181
- treeCheckable: true,
182
- showSearch: true,
183
- allowClear: true,
184
- showArrow: true,
185
- treeNodeFilterProp: 'title',
186
- treeDefaultExpandAll: true,
187
- maxTagCount: 1,
188
- placeholder: '请选择',
189
- style: {
190
- width: '100%',
191
- },
192
- dropdownStyle: { maxHeight: 400, maxWidth: 100, overflow: 'auto' }
193
- },
194
- } }
195
- ],
196
- tableColumns: [
197
- {
198
- title: 'SKU编码',
199
- width: 150,
200
- dataIndex: 'skuCode',
201
- },
202
- {
203
- title: 'SKU名称',
204
- width: 200,
205
- ellipsis: {
206
- showTitle: false,
207
- },
208
- render: (text: any) => (
209
- <Tooltip placement="topLeft" title={text}>
210
- {text}
211
- </Tooltip>
212
- ),
213
- dataIndex: 'name',
214
- },
215
- {
216
- title: '图片',
217
- dataIndex: 'itemUrl',
218
- width: 200,
219
- ellipsis: {
220
- showTitle: false,
221
- },
222
- render: (text: any,record: any) => (
223
- <Tooltip placement="topLeft" title={text}>
224
- {tableColumnsImage(getSkuImg(record),{ width: 20, height: 20 })}
225
- </Tooltip>
226
- ),
227
- },
228
- {
229
- title: '国际条码',
230
- width: 100,
231
- ellipsis: {
232
- showTitle: false,
233
- },
234
- dataIndex: 'barCode',
235
- render: (text: any) => (
236
- <Tooltip placement="topLeft" title={text}>
237
- {text}
238
- </Tooltip>
239
- ),
240
- },
241
- {
242
- title: '所属SPU名称',
243
- width: 100,
244
- ellipsis: {
245
- showTitle: false,
246
- },
247
- dataIndex: 'itemName',
248
- render: (text: any) => (
249
- <Tooltip placement="topLeft" title={text}>
250
- {text}
251
- </Tooltip>
252
- ),
253
- },
254
- {
255
- title: '所属SPU编码',
256
- width: 100,
257
- ellipsis: {
258
- showTitle: false,
259
- },
260
- dataIndex: 'itemCode',
261
- render: (text: any) => (
262
- <Tooltip placement="topLeft" title={text}>
263
- {text}
264
- </Tooltip>
265
- ),
266
- },
267
- {
268
- title: '外部编码',
269
- width: 100,
270
- ellipsis: {
271
- showTitle: false,
272
- },
273
- render: (text: any) => (
274
- <Tooltip placement="topLeft" title={text}>
275
- {text}
276
- </Tooltip>
277
- ),
278
- dataIndex: 'externalCode',
279
- },
280
- {
281
- title: '规格',
282
- width: 100,
283
- ellipsis: {
284
- showTitle: false,
285
- },
286
- render: (text: any) => (
287
- <Tooltip placement="topLeft" title={text}>
288
- {text}
289
- </Tooltip>
290
- ),
291
- dataIndex: 'propertyNameAndValue',
292
- },
293
- {
294
- title: '类目',
295
- width: 100,
296
- ellipsis: {
297
- showTitle: false,
298
- },
299
- render: (text: any) => (
300
- <Tooltip placement="topLeft" title={text}>
301
- {text}
302
- </Tooltip>
303
- ),
304
- dataIndex: 'categoryName',
305
- },
306
- {
307
- title: '品类',
308
- width: 100,
309
- ellipsis: {
310
- showTitle: false,
311
- },
312
- render: (text: any) => (
313
- <Tooltip placement="topLeft" title={text}>
314
- {text}
315
- </Tooltip>
316
- ),
317
- dataIndex: 'className',
318
- },
319
- {
320
- title: '品牌',
321
- width: 100,
322
- ellipsis: {
323
- showTitle: false,
324
- },
325
- render: (text: any) => (
326
- <Tooltip placement="topLeft" title={text}>
327
- {text}
328
- </Tooltip>
329
- ),
330
- dataIndex: 'brandName',
331
- },
332
- ],
333
- selectColumn: mTpSelectColumn
334
- }
335
-
336
- return (
337
- <div>
338
- <AddSelect
339
- {...props}
340
- modalTableProps={modalTableProps}
341
- />
342
- </div>
343
- );
344
- };
1
+ /*
2
+ * @Description:
3
+ * @Author: rodchen
4
+ * @Date: 2022-05-07 15:17:28
5
+ * @LastEditTime: 2022-05-08 21:01:21
6
+ * @LastEditors: rodchen
7
+ */
8
+ import React, { useState } from 'react';
9
+ import { Tooltip, Select } from 'antd';
10
+ import { AddSelect } from '../../../index';
11
+ import { tableColumnsImage } from '@/components/Business/BsSulaQueryTable/utils';
12
+ import { getSkuImg } from '@/utils/TableUtils';
13
+
14
+ function handleSelectColumn(c: any, parentProps: any) {
15
+ let result = c;
16
+ const exceptColumns = parentProps?.exceptColumns || [];
17
+ const coverColumns = parentProps?.coverColumns || [];
18
+ const additionColumns = parentProps?.additionColumns || [];
19
+ // 过滤不需要展示内容
20
+ if(exceptColumns?.length) {
21
+ result = result.filter((i: any) => !exceptColumns.includes(i.dataIndex))
22
+ }
23
+ // 追加
24
+ if(additionColumns?.length) {
25
+ additionColumns.forEach((i: any) => {
26
+ result.splice(i.position,0,i.column)
27
+ })
28
+ }
29
+ // 覆盖内容
30
+ if(coverColumns?.length) {
31
+ result = coverColumns;
32
+ }
33
+ return result
34
+ }
35
+
36
+ export const AddSkuSelect = (parProps: any) => {
37
+ const selectProps = {
38
+ mode: 'multiple',
39
+ }
40
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
41
+ const initialSelectColumn = [
42
+ {
43
+ title: 'SKU编码',
44
+ width: 150,
45
+ dataIndex: 'skuCode',
46
+ },
47
+ {
48
+ title: 'SKU名称',
49
+ width: 200,
50
+ ellipsis: {
51
+ showTitle: false,
52
+ },
53
+ render: (text: any) => (
54
+ <Tooltip placement="topLeft" title={text}>
55
+ {text}
56
+ </Tooltip>
57
+ ),
58
+ dataIndex: 'name',
59
+ },
60
+ {
61
+ title: '图片',
62
+ dataIndex: 'itemUrl',
63
+ width: 200,
64
+ ellipsis: {
65
+ showTitle: false,
66
+ },
67
+ render: (text: any,record: any) => (
68
+ <Tooltip placement="topLeft" title={text}>
69
+ {tableColumnsImage(getSkuImg(record),{ width: 28, height: 28 })}
70
+ </Tooltip>
71
+ ),
72
+ },
73
+ {
74
+ title: '数量',
75
+ width: 100,
76
+ isInputItem: true,
77
+ dataIndex: 'count',
78
+ },
79
+ {
80
+ title: '单位',
81
+ dataIndex: 'selectUnitCode',
82
+ width: 80,
83
+ ellipsis: {
84
+ showTitle: false,
85
+ },
86
+ render: (text: any, record: any) => {
87
+ if (record?.packingUnitList?.length) {
88
+ const basePackUnit = record?.packingUnitList[0]
89
+ record.selectUnitCode = basePackUnit.unitCode
90
+ return basePackUnit.name || basePackUnit.unitCode
91
+ }
92
+
93
+
94
+ return <></>
95
+ },
96
+ },
97
+ {
98
+ title: '所属SPU编码',
99
+ width: 150,
100
+ ellipsis: {
101
+ showTitle: false,
102
+ },
103
+ dataIndex: 'itemCode',
104
+ render: (text: any) => (
105
+ <Tooltip placement="topLeft" title={text}>
106
+ {text}
107
+ </Tooltip>
108
+ ),
109
+ },
110
+ {
111
+ title: '规格',
112
+ width: 200,
113
+ ellipsis: {
114
+ showTitle: false,
115
+ },
116
+ render: (text: any) => (
117
+ <Tooltip placement="topLeft" title={text}>
118
+ {text}
119
+ </Tooltip>
120
+ ),
121
+ dataIndex: 'propertyNameAndValue',
122
+ }
123
+ ]
124
+ const mTpSelectColumn = handleSelectColumn(initialSelectColumn, parProps)
125
+ const props = {
126
+ buttonText: parProps.buttonText || '新增',
127
+ buttonProps: parProps.buttonProps || {},
128
+ tableCodeList: parProps.tableCodeList || [],
129
+ value,
130
+ // labelInValue: true, // 非必填 默认为false
131
+ requestConfig: {
132
+ url: `/items/sku/pager/v2`,
133
+ filter: 'qp-name-like', // 过滤参数 支持'qp-name-like'和['qp-name-like', 'qp-code-like']两种结构
134
+ otherParams: {
135
+ 'qp-combination-eq': false,
136
+ 'qp-approveStatus-eq': 1,
137
+ 'qp-status-eq': 1,
138
+ }, // 默认参数
139
+ mappingTextField: 'name',
140
+ mappingValueField: 'skuCode',
141
+ ...parProps.requestConfig
142
+ },
143
+ selectProps,
144
+ onChange: (value: any) => {
145
+ console.log(value)
146
+ setValue(value)
147
+ },
148
+ beforeShowModal: parProps?.beforeShowModal,
149
+ onSaveCallback: parProps.onSaveCallback
150
+ // onSaveCallback: (rows) => {
151
+ // console.log('save call', rows);
152
+ // // return Promise.resolve(true);
153
+ // // return Promise.reject('FAILE')
154
+ // }
155
+ };
156
+ const modalTableProps = {
157
+ modalTableTitle: '选择商品',
158
+ tableSearchForm: [
159
+ {
160
+ name: 'qp-skuCode-like', label: 'SKU编码'
161
+ },
162
+ { name: 'qp-skuName-like', label: 'SKU名称' },
163
+ { name: 'qp-brandId-in', type: 'select', label: '品牌', field: {
164
+ type: 'select',
165
+ props: {
166
+ mode: 'multiple',
167
+ notFoundContent: '暂无数据',
168
+ allowClear: true,
169
+ showSearch: true,
170
+ showArrow: true,
171
+ maxTagCount: 1,
172
+ optionFilterProp: 'children',
173
+ filterOption: (input: string, option: { props: { children: string } }) =>
174
+ option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0,
175
+ },
176
+ } },
177
+ { name: 'qp-categoryId-in', type: 'treeSelect', label: '类目', field: {
178
+ type: 'treeSelect',
179
+ props: {
180
+ treeData: [],
181
+ treeCheckable: true,
182
+ showSearch: true,
183
+ allowClear: true,
184
+ showArrow: true,
185
+ treeNodeFilterProp: 'title',
186
+ treeDefaultExpandAll: true,
187
+ maxTagCount: 1,
188
+ placeholder: '请选择',
189
+ style: {
190
+ width: '100%',
191
+ },
192
+ dropdownStyle: { maxHeight: 400, maxWidth: 100, overflow: 'auto' }
193
+ },
194
+ } }
195
+ ],
196
+ tableColumns: [
197
+ {
198
+ title: 'SKU编码',
199
+ width: 150,
200
+ dataIndex: 'skuCode',
201
+ },
202
+ {
203
+ title: 'SKU名称',
204
+ width: 200,
205
+ ellipsis: {
206
+ showTitle: false,
207
+ },
208
+ render: (text: any) => (
209
+ <Tooltip placement="topLeft" title={text}>
210
+ {text}
211
+ </Tooltip>
212
+ ),
213
+ dataIndex: 'name',
214
+ },
215
+ {
216
+ title: '图片',
217
+ dataIndex: 'itemUrl',
218
+ width: 200,
219
+ ellipsis: {
220
+ showTitle: false,
221
+ },
222
+ render: (text: any,record: any) => (
223
+ <Tooltip placement="topLeft" title={text}>
224
+ {tableColumnsImage(getSkuImg(record),{ width: 20, height: 20 })}
225
+ </Tooltip>
226
+ ),
227
+ },
228
+ {
229
+ title: '国际条码',
230
+ width: 100,
231
+ ellipsis: {
232
+ showTitle: false,
233
+ },
234
+ dataIndex: 'barCode',
235
+ render: (text: any) => (
236
+ <Tooltip placement="topLeft" title={text}>
237
+ {text}
238
+ </Tooltip>
239
+ ),
240
+ },
241
+ {
242
+ title: '所属SPU名称',
243
+ width: 100,
244
+ ellipsis: {
245
+ showTitle: false,
246
+ },
247
+ dataIndex: 'itemName',
248
+ render: (text: any) => (
249
+ <Tooltip placement="topLeft" title={text}>
250
+ {text}
251
+ </Tooltip>
252
+ ),
253
+ },
254
+ {
255
+ title: '所属SPU编码',
256
+ width: 100,
257
+ ellipsis: {
258
+ showTitle: false,
259
+ },
260
+ dataIndex: 'itemCode',
261
+ render: (text: any) => (
262
+ <Tooltip placement="topLeft" title={text}>
263
+ {text}
264
+ </Tooltip>
265
+ ),
266
+ },
267
+ {
268
+ title: '外部编码',
269
+ width: 100,
270
+ ellipsis: {
271
+ showTitle: false,
272
+ },
273
+ render: (text: any) => (
274
+ <Tooltip placement="topLeft" title={text}>
275
+ {text}
276
+ </Tooltip>
277
+ ),
278
+ dataIndex: 'externalCode',
279
+ },
280
+ {
281
+ title: '规格',
282
+ width: 100,
283
+ ellipsis: {
284
+ showTitle: false,
285
+ },
286
+ render: (text: any) => (
287
+ <Tooltip placement="topLeft" title={text}>
288
+ {text}
289
+ </Tooltip>
290
+ ),
291
+ dataIndex: 'propertyNameAndValue',
292
+ },
293
+ {
294
+ title: '类目',
295
+ width: 100,
296
+ ellipsis: {
297
+ showTitle: false,
298
+ },
299
+ render: (text: any) => (
300
+ <Tooltip placement="topLeft" title={text}>
301
+ {text}
302
+ </Tooltip>
303
+ ),
304
+ dataIndex: 'categoryName',
305
+ },
306
+ {
307
+ title: '品类',
308
+ width: 100,
309
+ ellipsis: {
310
+ showTitle: false,
311
+ },
312
+ render: (text: any) => (
313
+ <Tooltip placement="topLeft" title={text}>
314
+ {text}
315
+ </Tooltip>
316
+ ),
317
+ dataIndex: 'className',
318
+ },
319
+ {
320
+ title: '品牌',
321
+ width: 100,
322
+ ellipsis: {
323
+ showTitle: false,
324
+ },
325
+ render: (text: any) => (
326
+ <Tooltip placement="topLeft" title={text}>
327
+ {text}
328
+ </Tooltip>
329
+ ),
330
+ dataIndex: 'brandName',
331
+ },
332
+ ],
333
+ selectColumn: mTpSelectColumn
334
+ }
335
+
336
+ return (
337
+ <div>
338
+ <AddSelect
339
+ {...props}
340
+ modalTableProps={modalTableProps}
341
+ />
342
+ </div>
343
+ );
344
+ };