@bit-sun/business-component 2.2.29 → 2.2.31

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 (179) 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/components/Functional/AddSelect/helps.d.ts +1 -0
  9. package/dist/index.esm.js +60 -26
  10. package/dist/index.js +60 -26
  11. package/docs/index.md +21 -21
  12. package/lib/assets/drag.svg +17 -17
  13. package/lib/assets/exportFail.svg +37 -37
  14. package/lib/assets/exportProcessing.svg +28 -28
  15. package/lib/assets/exportSuccess.svg +34 -34
  16. package/lib/assets/label_icon_bottom.svg +25 -25
  17. package/lib/assets/upExport.svg +22 -22
  18. package/package.json +77 -77
  19. package/src/assets/32.svg +27 -27
  20. package/src/assets/addIcon.svg +17 -17
  21. package/src/assets/allfunc.svg +27 -27
  22. package/src/assets/arrowRight.svg +24 -24
  23. package/src/assets/btn-delete.svg +29 -29
  24. package/src/assets/btn-edit.svg +19 -19
  25. package/src/assets/btn-more.svg +17 -17
  26. package/src/assets/btn-submit.svg +19 -19
  27. package/src/assets/caidan.svg +11 -11
  28. package/src/assets/close.svg +26 -26
  29. package/src/assets/drag.svg +17 -17
  30. package/src/assets/exportFail.svg +37 -37
  31. package/src/assets/exportProcessing.svg +28 -28
  32. package/src/assets/exportSuccess.svg +34 -34
  33. package/src/assets/fixed-left-active.svg +11 -11
  34. package/src/assets/fixed-left.svg +15 -15
  35. package/src/assets/fixed-right-active.svg +11 -11
  36. package/src/assets/fixed-right.svg +15 -15
  37. package/src/assets/guanbi.svg +15 -15
  38. package/src/assets/icon-quanping.svg +15 -15
  39. package/src/assets/icon-shezhi.svg +17 -17
  40. package/src/assets/label_icon_bottom.svg +25 -25
  41. package/src/assets/list-no-img.svg +21 -21
  42. package/src/assets/morentouxiang-32.svg +23 -23
  43. package/src/assets/scanning.svg +24 -24
  44. package/src/assets/upExport.svg +22 -22
  45. package/src/components/Business/AddSelectBusiness/index.md +161 -161
  46. package/src/components/Business/AddSelectBusiness/index.tsx +861 -859
  47. package/src/components/Business/BsLayouts/Components/AllFunc/drawContent.tsx +111 -111
  48. package/src/components/Business/BsLayouts/Components/AllFunc/index.less +153 -153
  49. package/src/components/Business/BsLayouts/Components/AllFunc/index.tsx +70 -70
  50. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.less +90 -90
  51. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/index.tsx +37 -37
  52. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/leftTree.tsx +242 -242
  53. package/src/components/Business/BsLayouts/Components/CustomerMenu/MenuSetting/rightTree.tsx +384 -384
  54. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/DrawContent.tsx +285 -285
  55. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/customMenuHeader.tsx +74 -74
  56. package/src/components/Business/BsLayouts/Components/CustomerMenu/globalMenu/drawContent.less +170 -170
  57. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.less +64 -64
  58. package/src/components/Business/BsLayouts/Components/CustomerMenu/index.tsx +153 -153
  59. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.less +72 -72
  60. package/src/components/Business/BsLayouts/Components/GlobalHeader/index.tsx +157 -157
  61. package/src/components/Business/BsLayouts/Components/RightContent/LoginModal.tsx +85 -85
  62. package/src/components/Business/BsLayouts/Components/RightContent/home.less +218 -218
  63. package/src/components/Business/BsLayouts/Components/RightContent/index.tsx +155 -155
  64. package/src/components/Business/BsLayouts/Components/SearchFunc/index.less +160 -160
  65. package/src/components/Business/BsLayouts/Components/SearchFunc/index.tsx +75 -75
  66. package/src/components/Business/BsLayouts/index.less +79 -79
  67. package/src/components/Business/BsLayouts/index.tsx +1484 -1484
  68. package/src/components/Business/BsLayouts/service.ts +10 -10
  69. package/src/components/Business/BsLayouts/utils.tsx +203 -203
  70. package/src/components/Business/BsSulaQueryTable/SearchItemSetting.tsx +538 -538
  71. package/src/components/Business/BsSulaQueryTable/index.less +219 -219
  72. package/src/components/Business/BsSulaQueryTable/index.tsx +527 -527
  73. package/src/components/Business/BsSulaQueryTable/setting.tsx +802 -802
  74. package/src/components/Business/BsSulaQueryTable/utils.less +65 -65
  75. package/src/components/Business/BsSulaQueryTable/utils.tsx +688 -688
  76. package/src/components/Business/CommodityEntry/index.md +70 -70
  77. package/src/components/Business/CommodityEntry/index.tsx +80 -80
  78. package/src/components/Business/CommonAlert/index.tsx +23 -23
  79. package/src/components/Business/CommonGuideWrapper/index.less +111 -111
  80. package/src/components/Business/CommonGuideWrapper/index.md +39 -39
  81. package/src/components/Business/CommonGuideWrapper/index.tsx +83 -83
  82. package/src/components/Business/DetailPageWrapper/index.less +79 -79
  83. package/src/components/Business/DetailPageWrapper/index.tsx +313 -313
  84. package/src/components/Business/DetailPageWrapper/utils.tsx +100 -100
  85. package/src/components/Business/HomePageWrapper/index.less +33 -33
  86. package/src/components/Business/HomePageWrapper/index.md +45 -45
  87. package/src/components/Business/HomePageWrapper/index.tsx +162 -162
  88. package/src/components/Business/JsonQueryTable/components/FieldsModifyModal.tsx +824 -824
  89. package/src/components/Business/JsonQueryTable/components/FieldsSettingsTable.tsx +201 -201
  90. package/src/components/Business/JsonQueryTable/components/Formula.tsx +205 -205
  91. package/src/components/Business/JsonQueryTable/components/MaintainOptions.tsx +127 -127
  92. package/src/components/Business/JsonQueryTable/configButton/index.js +20 -20
  93. package/src/components/Business/JsonQueryTable/configTree/component/compactArrayView.js +25 -25
  94. package/src/components/Business/JsonQueryTable/configTree/component/compactObjectView.js +30 -30
  95. package/src/components/Business/JsonQueryTable/configTree/index.js +82 -82
  96. package/src/components/Business/JsonQueryTable/configTree/index.less +44 -44
  97. package/src/components/Business/JsonQueryTable/configTree/parser/highlight.js +57 -57
  98. package/src/components/Business/JsonQueryTable/configTree/parser/index.js +124 -124
  99. package/src/components/Business/JsonQueryTable/configTree/render/iconRender.js +29 -29
  100. package/src/components/Business/JsonQueryTable/configTree/render/nameRender.js +22 -22
  101. package/src/components/Business/JsonQueryTable/configTree/treeNode.js +116 -116
  102. package/src/components/Business/JsonQueryTable/drawer/index.tsx +12 -12
  103. package/src/components/Business/JsonQueryTable/function.ts +62 -62
  104. package/src/components/Business/JsonQueryTable/index.less +16 -16
  105. package/src/components/Business/JsonQueryTable/index.md +328 -328
  106. package/src/components/Business/JsonQueryTable/index.tsx +320 -320
  107. package/src/components/Business/JsonQueryTable/jsonEditor/index.js +346 -346
  108. package/src/components/Business/JsonQueryTable/jsonEditor/index.less +22 -22
  109. package/src/components/Business/JsonQueryTable/jsonEditor/lint/basicType.js +147 -147
  110. package/src/components/Business/JsonQueryTable/jsonEditor/lint/index.js +389 -389
  111. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/actions.js +118 -118
  112. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/dependency.js +22 -22
  113. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/index.js +21 -21
  114. package/src/components/Business/JsonQueryTable/jsonEditor/suggestions/request.js +65 -65
  115. package/src/components/Business/JsonQueryTable/static.ts +390 -390
  116. package/src/components/Business/SearchSelect/BusinessUtils.ts +1730 -1730
  117. package/src/components/Business/SearchSelect/common.ts +53 -53
  118. package/src/components/Business/SearchSelect/index.md +1319 -1310
  119. package/src/components/Business/SearchSelect/index.tsx +51 -51
  120. package/src/components/Business/SearchSelect/utils.ts +100 -100
  121. package/src/components/Business/StateFlow/index.less +130 -130
  122. package/src/components/Business/StateFlow/index.md +60 -60
  123. package/src/components/Business/StateFlow/index.tsx +29 -29
  124. package/src/components/Business/TreeSearchSelect/index.md +154 -154
  125. package/src/components/Business/TreeSearchSelect/index.tsx +34 -34
  126. package/src/components/Business/TreeSearchSelect/utils.ts +69 -69
  127. package/src/components/Business/columnSettingTable/columnSetting.tsx +764 -764
  128. package/src/components/Business/columnSettingTable/index.less +247 -247
  129. package/src/components/Business/columnSettingTable/index.md +357 -357
  130. package/src/components/Business/columnSettingTable/index.tsx +232 -232
  131. package/src/components/Business/columnSettingTable/sulaSettingTable.tsx +240 -240
  132. package/src/components/Business/columnSettingTable/utils.tsx +68 -68
  133. package/src/components/Business/moreTreeTable/index.less +99 -99
  134. package/src/components/Business/moreTreeTable/index.md +448 -448
  135. package/src/components/Business/moreTreeTable/index.tsx +361 -361
  136. package/src/components/Business/moreTreeTable/utils.ts +126 -126
  137. package/src/components/Functional/AddSelect/helps.ts +14 -0
  138. package/src/components/Functional/AddSelect/index.less +367 -367
  139. package/src/components/Functional/AddSelect/index.md +155 -155
  140. package/src/components/Functional/AddSelect/index.tsx +1272 -1263
  141. package/src/components/Functional/BillEntry/index.less +371 -371
  142. package/src/components/Functional/BillEntry/index.md +39 -39
  143. package/src/components/Functional/BillEntry/index.tsx +766 -766
  144. package/src/components/Functional/DataImport/index.less +63 -63
  145. package/src/components/Functional/DataImport/index.md +44 -44
  146. package/src/components/Functional/DataImport/index.tsx +695 -695
  147. package/src/components/Functional/DataValidation/index.less +63 -63
  148. package/src/components/Functional/DataValidation/index.md +39 -39
  149. package/src/components/Functional/DataValidation/index.tsx +687 -687
  150. package/src/components/Functional/ExportFunctions/ExportIcon/index.md +37 -37
  151. package/src/components/Functional/ExportFunctions/ExportIcon/index.tsx +59 -59
  152. package/src/components/Functional/QueryMutipleInput/index.less +37 -37
  153. package/src/components/Functional/QueryMutipleInput/index.md +33 -33
  154. package/src/components/Functional/QueryMutipleInput/index.tsx +128 -128
  155. package/src/components/Functional/SearchSelect/index.less +115 -115
  156. package/src/components/Functional/SearchSelect/index.md +141 -141
  157. package/src/components/Functional/SearchSelect/index.tsx +849 -846
  158. package/src/components/Functional/SearchSelect/utils.ts +3 -3
  159. package/src/components/Functional/TreeSearchSelect/index.md +47 -47
  160. package/src/components/Functional/TreeSearchSelect/index.tsx +162 -162
  161. package/src/index.ts +34 -34
  162. package/src/plugin/TableColumnSetting/index.less +247 -247
  163. package/src/plugin/TableColumnSetting/index.md +50 -50
  164. package/src/plugin/TableColumnSetting/index.tsx +724 -724
  165. package/src/plugin/TableColumnSetting/utils.ts +19 -19
  166. package/src/styles/bsDefault.less +1912 -1912
  167. package/src/utils/CheckOneUser/index.md +39 -39
  168. package/src/utils/CheckOneUser/index.ts +51 -51
  169. package/src/utils/LocalstorageUtils.ts +90 -90
  170. package/src/utils/TableUtils.tsx +18 -18
  171. package/src/utils/checkUtils.ts +39 -39
  172. package/src/utils/enumConfig.ts +11 -11
  173. package/src/utils/getFormMode.js +12 -12
  174. package/src/utils/index.ts +3 -3
  175. package/src/utils/requestUtils.ts +34 -34
  176. package/src/utils/serialize.js +7 -7
  177. package/src/utils/utils.ts +183 -183
  178. package/tsconfig.json +29 -29
  179. package/typings.d.ts +4 -4
@@ -1,1310 +1,1319 @@
1
- ---
2
- nav:
3
- title: '组件'
4
- order: 1
5
- group:
6
- title: 业务组件
7
- order: 1
8
- title: 业务档案选择器
9
- order: 1
10
- ---
11
-
12
- # BusinessSearchSelect
13
-
14
-
15
- ## 供应商选择器 Select-GYS-001
16
-
17
- ```tsx
18
- import React, { useState } from 'react';
19
- import { Tabs } from 'antd';
20
- import {BusinessSearchSelect} from '../../../index.ts';
21
-
22
- const { TabPane } = Tabs;
23
-
24
- export default () => {
25
- // selectBusinessType 必传(不传默认为供应商选择器)
26
-
27
- const selectProps = {
28
- // mode: 'multiple',
29
- // maxTagCount: 1,
30
- // disabled: true
31
- }
32
- const selectPropsMultiple = {
33
- mode: 'multiple',
34
- maxTagCount: 1,
35
- }
36
-
37
- const [ tabKey, setTabKey ] = useState('single')
38
- const [value, setValue] = useState(null);
39
-
40
- const props = {
41
- value,
42
- // labelInValue: true, // 非必填 默认为false
43
- // requestConfig: {
44
- // url: `/bop/api/supplier`,
45
- // filter: 'qp-name,code-orGroup,like', // 过滤参数
46
- // otherParams: {}, // 默认参数
47
- // mappingTextField: 'name',
48
- // mappingValueField: 'code',
49
- // }, // 非必传,业务字段已根据业务默认默认
50
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' }, // 非必传,下拉框和tableForm下拉框接口前缀,默认为bop的接口
51
- selectProps, // 非必传
52
- onChange: (value: any) => {
53
- console.log(value)
54
- setValue(value)
55
- },
56
- selectBusinessType: 'supplier',
57
- disabled: true,
58
- };
59
-
60
- const props2 = {
61
- ...props,
62
- // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
63
- selectBusinessType: 'supplier2',
64
- }
65
-
66
- const onTabChange = (key) => {
67
- setTabKey(key)
68
- setValue(key === 'single' ? null: [])
69
- }
70
-
71
- return (
72
- <div>
73
- <Tabs onChange={onTabChange} activeKey={tabKey}>
74
- <TabPane tab='单选' key='single'>
75
- {tabKey === 'single' && (
76
- <>
77
- <span>版本1:支持英伦项目...</span>
78
- <BusinessSearchSelect {...props} />
79
- <span>版本2:支持麦克英孚项目...</span>
80
- <BusinessSearchSelect {...props2} />
81
- </>
82
- )}
83
- </TabPane>
84
- <TabPane tab='多选' key='multiple'>
85
- {tabKey === 'multiple' && (
86
- <>
87
- <span>版本1:支持英伦项目...</span>
88
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
89
- <span>版本2:支持麦克英孚项目...</span>
90
- <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
91
- </>
92
- )}
93
- </TabPane>
94
- </Tabs>
95
- </div>
96
- );
97
- };
98
- ```
99
-
100
-
101
- ## 商品SKU选择器 Select-SKU-001
102
-
103
- ```tsx
104
- import React, { useState } from 'react';
105
- import { Tabs } from 'antd';
106
- import {BusinessSearchSelect} from '../../../index.ts';
107
-
108
- const { TabPane } = Tabs;
109
- export default () => {
110
- const selectProps = {
111
- // mode: 'multiple',
112
- // maxTagCount: 1,
113
- // disabled: true
114
- }
115
- const selectPropsMultiple = {
116
- mode: 'multiple',
117
- maxTagCount: 1,
118
- }
119
-
120
- const [ tabKey, setTabKey ] = useState('single')
121
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
122
-
123
- const props = {
124
- value,
125
- onChange: (value: any) => {
126
- console.log(value)
127
- setValue(value)
128
- },
129
- // requestConfig: {
130
- // url: `/bop/api/sku/pager/v2`,
131
- // filter: 'skuCodeAndSkuName',
132
- // mappingValueField: 'skuCode',
133
- // otherParams: {
134
- // sorter: 'desc-id'
135
- // }, // 默认参数
136
- // sourceName: 'skuCode',
137
- // },
138
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
139
- selectProps,
140
- selectBusinessType: 'skuCommodity',
141
- };
142
-
143
- const onTabChange = (key) => {
144
- setTabKey(key)
145
- setValue(key === 'single' ? null: [])
146
- }
147
-
148
- return (
149
- <div>
150
- <Tabs onChange={onTabChange} activeKey={tabKey}>
151
- <TabPane tab='单选' key='single'>
152
- {tabKey === 'single' && (
153
- <BusinessSearchSelect {...props} />
154
- )}
155
- </TabPane>
156
- <TabPane tab='多选' key='multiple'>
157
- {tabKey === 'multiple' && (
158
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
159
- )}
160
- </TabPane>
161
- </Tabs>
162
- </div>
163
- );
164
- };
165
- ```
166
-
167
- [comment]: <> (## 商品规格选择器 Select-SPGG-001)
168
-
169
- [comment]: <> (```tsx)
170
-
171
- [comment]: <> (import React, { useState } from 'react';)
172
-
173
- [comment]: <> (import { Tabs } from 'antd';)
174
-
175
- [comment]: <> (import {BusinessSearchSelect} from '../../../index.ts';)
176
-
177
- [comment]: <> (const { TabPane } = Tabs;)
178
-
179
- [comment]: <> (export default &#40;&#41; => {)
180
-
181
- [comment]: <> ( const selectProps = {)
182
-
183
- [comment]: <> ( // mode: 'multiple',)
184
-
185
- [comment]: <> ( // maxTagCount: 1,)
186
-
187
- [comment]: <> ( // disabled: true)
188
-
189
- [comment]: <> ( })
190
-
191
- [comment]: <> ( const selectPropsMultiple = {)
192
-
193
- [comment]: <> ( mode: 'multiple',)
194
-
195
- [comment]: <> ( maxTagCount: 1,)
196
-
197
- [comment]: <> ( })
198
-
199
- [comment]: <> ( const [ tabKey, setTabKey ] = useState&#40;'single'&#41;)
200
-
201
- [comment]: <> ( const [value, setValue] = useState&#40;selectProps?.mode ? [] : null&#41;;)
202
-
203
- [comment]: <> ( const props = {)
204
-
205
- [comment]: <> ( value,)
206
-
207
- [comment]: <> ( onChange: &#40;value: any&#41; => {)
208
-
209
- [comment]: <> ( console.log&#40;value&#41;)
210
-
211
- [comment]: <> ( setValue&#40;value&#41;)
212
-
213
- [comment]: <> ( },)
214
-
215
- [comment]: <> ( prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },)
216
-
217
- [comment]: <> ( selectProps,)
218
-
219
- [comment]: <> ( selectBusinessType: 'skuPropertyValue',)
220
-
221
- [comment]: <> ( };)
222
-
223
- [comment]: <> ( const onTabChange = &#40;key&#41; => {)
224
-
225
- [comment]: <> ( setTabKey&#40;key&#41;)
226
-
227
- [comment]: <> ( setValue&#40;key === 'single' ? null: []&#41;)
228
-
229
- [comment]: <> ( })
230
-
231
- [comment]: <> ( return &#40;)
232
-
233
- [comment]: <> ( <div>)
234
-
235
- [comment]: <> ( <Tabs onChange={onTabChange} activeKey={tabKey}>)
236
-
237
- [comment]: <> ( <TabPane tab='单选' key='single'>)
238
-
239
- [comment]: <> ( {tabKey === 'single' && &#40;)
240
-
241
- [comment]: <> ( <BusinessSearchSelect {...props} />)
242
-
243
- [comment]: <> ( &#41;})
244
-
245
- [comment]: <> ( </TabPane>)
246
-
247
- [comment]: <> ( <TabPane tab='多选' key='multiple'>)
248
-
249
- [comment]: <> ( {tabKey === 'multiple' && &#40;)
250
-
251
- [comment]: <> ( <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />)
252
-
253
- [comment]: <> ( &#41;})
254
-
255
- [comment]: <> ( </TabPane>)
256
-
257
- [comment]: <> ( </Tabs>)
258
-
259
- [comment]: <> ( </div>)
260
-
261
- [comment]: <> ( &#41;;)
262
-
263
- [comment]: <> (};)
264
-
265
- [comment]: <> (```)
266
-
267
- ## 商品SPU选择器 Select-SPU-001
268
-
269
- ```tsx
270
- import React, { useState } from 'react';
271
- import { Tabs } from 'antd';
272
- import {BusinessSearchSelect} from '../../../index.ts';
273
-
274
- const { TabPane } = Tabs;
275
- export default () => {
276
- const selectProps = {
277
- // mode: 'multiple',
278
- // maxTagCount: 1,
279
- // disabled: true
280
- }
281
- const selectPropsMultiple = {
282
- mode: 'multiple',
283
- maxTagCount: 6,
284
- }
285
-
286
- const [ tabKey, setTabKey ] = useState('single')
287
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
288
-
289
- const props = {
290
- value,
291
- onChange: (value: any) => {
292
- console.log(value)
293
- setValue(value)
294
- },
295
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
296
- selectProps,
297
- selectBusinessType: 'spuCommodity',
298
- };
299
-
300
- const onTabChange = (key) => {
301
- setTabKey(key)
302
- setValue(key === 'single' ? null: [])
303
- }
304
-
305
- return (
306
- <div>
307
- <Tabs onChange={onTabChange} activeKey={tabKey}>
308
- <TabPane tab='单选' key='single'>
309
- {tabKey === 'single' && (
310
- <BusinessSearchSelect {...props} />
311
- )}
312
- </TabPane>
313
- <TabPane tab='多选' key='multiple'>
314
- {tabKey === 'multiple' && (
315
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
316
- )}
317
- </TabPane>
318
- </Tabs>
319
- </div>
320
- );
321
- };
322
- ```
323
-
324
- ## 商品SKC选择器 Select-SKC-001
325
-
326
- ```tsx
327
- import React, { useState } from 'react';
328
- import { Tabs } from 'antd';
329
- import {BusinessSearchSelect} from '../../../index.ts';
330
-
331
- const { TabPane } = Tabs;
332
- export default () => {
333
- const selectProps = {
334
- // mode: 'multiple',
335
- // maxTagCount: 1,
336
- // disabled: true
337
- }
338
- const selectPropsMultiple = {
339
- mode: 'multiple',
340
- maxTagCount: 6,
341
- }
342
-
343
- const [ tabKey, setTabKey ] = useState('single')
344
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
345
-
346
- const props = {
347
- value,
348
- onChange: (value: any) => {
349
- console.log(value)
350
- setValue(value)
351
- },
352
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
353
- selectProps,
354
- selectBusinessType: 'skcCommodity',
355
- };
356
-
357
- const onTabChange = (key) => {
358
- setTabKey(key)
359
- setValue(key === 'single' ? null: [])
360
- }
361
-
362
- return (
363
- <div>
364
- <Tabs onChange={onTabChange} activeKey={tabKey}>
365
- <TabPane tab='单选' key='single'>
366
- {tabKey === 'single' && (
367
- <BusinessSearchSelect {...props} />
368
- )}
369
- </TabPane>
370
- <TabPane tab='多选' key='multiple'>
371
- {tabKey === 'multiple' && (
372
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
373
- )}
374
- </TabPane>
375
- </Tabs>
376
- </div>
377
- );
378
- };
379
- ```
380
-
381
- ## 仓库选择器(物理仓) Select-Warehouse-001
382
-
383
- ```tsx
384
- import React, { useState, useEffect } from 'react';
385
- import { Tabs } from 'antd';
386
- import {BusinessSearchSelect} from '../../../index.ts';
387
-
388
- const { TabPane } = Tabs;
389
-
390
- export default () => {
391
- const selectProps = {
392
- // mode: 'multiple',
393
- // maxTagCount: 1,
394
- // disabled: true
395
- }
396
- const selectPropsMultiple = {
397
- mode: 'multiple',
398
- maxTagCount: 1,
399
- }
400
-
401
- const [ tabKey, setTabKey ] = useState('single')
402
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
403
-
404
- useEffect(() => {
405
- if(tabKey === 'multiple') {
406
- setValue(['1540295745870573570', '1540173160826613762'])
407
- }
408
- },[tabKey])
409
-
410
- const props = {
411
- value,
412
- onChange: (value: any) => {
413
- console.log(value)
414
- setValue(value)
415
- },
416
- requestConfig: {
417
- // mappingValueField: 'physicalWarehouseCode',
418
- // sourceName: 'physicalWarehouseCode',
419
- filterInit: 'qp-id-in'
420
- },
421
- // modalTableProps: {
422
- // modalTableTitle: '选择物理仓-更改title测试',
423
- // needModalTable: false
424
- // },
425
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
426
- selectProps,
427
- // labelInValue: true,
428
- selectBusinessType: 'physicalWarehouse',
429
- };
430
-
431
- const onTabChange = (key) => {
432
- setTabKey(key)
433
- setValue(key === 'single' ? null: [])
434
- }
435
-
436
- return (
437
- <div>
438
- <Tabs onChange={onTabChange} activeKey={tabKey}>
439
- <TabPane tab='单选' key='single'>
440
- {tabKey === 'single' && (
441
- <BusinessSearchSelect {...props} />
442
- )}
443
- </TabPane>
444
- <TabPane tab='多选' key='multiple'>
445
- {tabKey === 'multiple' && (
446
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
447
- )}
448
- </TabPane>
449
- </Tabs>
450
- </div>
451
- );
452
- };
453
- ```
454
-
455
- ## 仓库选择器(逻辑仓) Select-Warehouse-002
456
-
457
- ```tsx
458
- import React, { useState } from 'react';
459
- import { Tabs } from 'antd';
460
- import {BusinessSearchSelect} from '../../../index.ts';
461
-
462
- const { TabPane } = Tabs;
463
-
464
- export default () => {
465
- const selectProps = {
466
- // mode: 'multiple',
467
- // maxTagCount: 1,
468
- // disabled: true
469
- }
470
- const selectPropsMultiple = {
471
- mode: 'multiple',
472
- maxTagCount: 1,
473
- }
474
-
475
- const [ tabKey, setTabKey ] = useState('single')
476
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
477
-
478
- const props = {
479
- value,
480
- onChange: (value: any) => {
481
- console.log(value)
482
- setValue(value)
483
- },
484
- // requestConfig: {
485
- // url: `/bop/api/realWarehouse`,
486
- // filter: 'qp-realWarehouseName,realWarehouseCode-orGroup,like',
487
- // mappingTextField: 'realWarehouseName',
488
- // mappingValueField: 'realWarehouseCode',
489
- // otherParams: {
490
- // sorter: 'desc-id'
491
- // }, // 默认参数
492
- // sourceName: 'warehouseIds',
493
- // },
494
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
495
- selectProps,
496
- selectBusinessType: 'realWarehouse',
497
- };
498
-
499
- const onTabChange = (key) => {
500
- setTabKey(key)
501
- setValue(key === 'single' ? null: [])
502
- }
503
-
504
- return (
505
- <div>
506
- <Tabs onChange={onTabChange} activeKey={tabKey}>
507
- <TabPane tab='单选' key='single'>
508
- {tabKey === 'single' && (
509
- <BusinessSearchSelect {...props} />
510
- )}
511
- </TabPane>
512
- <TabPane tab='多选' key='multiple'>
513
- {tabKey === 'multiple' && (
514
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
515
- )}
516
- </TabPane>
517
- </Tabs>
518
- </div>
519
- );
520
- };
521
- ```
522
-
523
- ## 仓库选择器(运营仓) Select-Warehouse-005
524
-
525
- ```tsx
526
- import React, { useState } from 'react';
527
- import { Tabs } from 'antd';
528
- import {BusinessSearchSelect} from '../../../index.ts';
529
-
530
- const { TabPane } = Tabs;
531
-
532
- export default () => {
533
- const selectProps = {
534
- // mode: 'multiple',
535
- // maxTagCount: 1,
536
- // disabled: true
537
- }
538
- const selectPropsMultiple = {
539
- mode: 'multiple',
540
- maxTagCount: 1,
541
- }
542
-
543
- const [ tabKey, setTabKey ] = useState('single')
544
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
545
-
546
- const props = {
547
- value,
548
- onChange: (value: any) => {
549
- console.log(value)
550
- setValue(value)
551
- },
552
- selectProps,
553
- selectBusinessType: 'ownerWarehouse',
554
- };
555
-
556
- const onTabChange = (key) => {
557
- setTabKey(key)
558
- setValue(key === 'single' ? null: [])
559
- }
560
-
561
- return (
562
- <div>
563
- <Tabs onChange={onTabChange} activeKey={tabKey}>
564
- <TabPane tab='单选' key='single'>
565
- {tabKey === 'single' && (
566
- <BusinessSearchSelect {...props} />
567
- )}
568
- </TabPane>
569
- <TabPane tab='多选' key='multiple'>
570
- {tabKey === 'multiple' && (
571
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
572
- )}
573
- </TabPane>
574
- </Tabs>
575
- </div>
576
- );
577
- };
578
- ```
579
-
580
- ## 仓库选择器(虚拟仓) Select-Warehouse-003
581
-
582
- ```tsx
583
- import React, { useState } from 'react';
584
- import { Tabs } from 'antd';
585
- import {BusinessSearchSelect} from '../../../index.ts';
586
-
587
- const { TabPane } = Tabs;
588
-
589
- export default () => {
590
- const selectProps = {
591
- // mode: 'multiple',
592
- // maxTagCount: 1,
593
- // disabled: true
594
- }
595
- const selectPropsMultiple = {
596
- mode: 'multiple',
597
- maxTagCount: 1,
598
- }
599
-
600
- const [ tabKey, setTabKey ] = useState('single')
601
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
602
-
603
- const props = {
604
- value,
605
- onChange: (value: any) => {
606
- console.log(value)
607
- setValue(value)
608
- },
609
- // requestConfig: {
610
- // url: `/bop/api/virtualWarehouse`,
611
- // filter: 'qp-virtualWarehouseName,virtualWarehouseCode-orGroup,like',
612
- // mappingTextField: 'virtualWarehouseName',
613
- // mappingValueField: 'virtualWarehouseCode',
614
- // otherParams: {
615
- // sorter: 'desc-id'
616
- // }, // 默认参数
617
- // sourceName: 'warehouseIds',
618
- // },
619
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
620
- selectProps,
621
- selectBusinessType: 'virtualWarehouse',
622
- };
623
-
624
- const onTabChange = (key) => {
625
- setTabKey(key)
626
- setValue(key === 'single' ? null: [])
627
- }
628
-
629
- return (
630
- <div>
631
- <Tabs onChange={onTabChange} activeKey={tabKey}>
632
- <TabPane tab='单选' key='single'>
633
- {tabKey === 'single' && (
634
- <BusinessSearchSelect {...props} />
635
- )}
636
- </TabPane>
637
- <TabPane tab='多选' key='multiple'>
638
- {tabKey === 'multiple' && (
639
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
640
- )}
641
- </TabPane>
642
- </Tabs>
643
- </div>
644
- );
645
- };
646
- ```
647
-
648
- ## 仓库选择器(渠道仓) Select-Warehouse-004
649
-
650
- ```tsx
651
- import React, { useState } from 'react';
652
- import { Tabs } from 'antd';
653
- import {BusinessSearchSelect} from '../../../index.ts';
654
-
655
- const { TabPane } = Tabs;
656
-
657
- export default () => {
658
- const selectProps = {
659
- // mode: 'multiple',
660
- // maxTagCount: 1,
661
- // disabled: true
662
- }
663
- const selectPropsMultiple = {
664
- mode: 'multiple',
665
- maxTagCount: 1,
666
- }
667
-
668
- const [ tabKey, setTabKey ] = useState('single')
669
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
670
-
671
- const props = {
672
- value,
673
- onChange: (value: any) => {
674
- console.log(value)
675
- setValue(value)
676
- },
677
- // requestConfig: {
678
- // url: `/bop/api/channelWarehouse`,
679
- // filter: 'qp-channelWarehouseName,channelWarehouseCode-orGroup,like',
680
- // mappingTextField: 'channelWarehouseName',
681
- // mappingValueField: 'channelWarehouseCode',
682
- // otherParams: {
683
- // sorter: 'desc-id'
684
- // }, // 默认参数
685
- // sourceName: 'warehouseIds',
686
- // },
687
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
688
- selectProps,
689
- selectBusinessType: 'channelWarehouse',
690
- };
691
-
692
- const onTabChange = (key) => {
693
- setTabKey(key)
694
- setValue(key === 'single' ? null: [])
695
- }
696
-
697
- return (
698
- <div>
699
- <Tabs onChange={onTabChange} activeKey={tabKey}>
700
- <TabPane tab='单选' key='single'>
701
- {tabKey === 'single' && (
702
- <BusinessSearchSelect {...props} />
703
- )}
704
- </TabPane>
705
- <TabPane tab='多选' key='multiple'>
706
- {tabKey === 'multiple' && (
707
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
708
- )}
709
- </TabPane>
710
- </Tabs>
711
- </div>
712
- );
713
- };
714
- ```
715
-
716
-
717
- ## 客户选择器 Select-KH-001
718
-
719
- ```tsx
720
- import React, { useState } from 'react';
721
- import { Tabs } from 'antd';
722
- import {BusinessSearchSelect} from '../../../index.ts';
723
-
724
- const { TabPane } = Tabs;
725
-
726
- export default () => {
727
- const selectProps = {
728
- // mode: 'multiple',
729
- // maxTagCount: 1,
730
- // disabled: true
731
- }
732
- const selectPropsMultiple = {
733
- mode: 'multiple',
734
- maxTagCount: 1,
735
- }
736
-
737
- const [ tabKey, setTabKey ] = useState('single')
738
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
739
-
740
- const props = {
741
- value,
742
- onChange: (value: any) => {
743
- console.log(value)
744
- setValue(value)
745
- },
746
- // requestConfig: {
747
- // url: `/bop/api/customer`,
748
- // filter: 'qp-name,code-orGroup,like', // 过滤参数
749
- // mappingTextField: 'name',
750
- // mappingValueField: 'code',
751
- // otherParams: {
752
- // sorter: 'desc-id'
753
- // }, // 默认参数
754
- // sourceName: 'customerCode',
755
- // },
756
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
757
- selectProps,
758
- selectBusinessType: 'customer',
759
- };
760
-
761
- const props2 = {
762
- ...props,
763
- // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
764
- selectBusinessType: 'customer2',
765
- }
766
-
767
- const onTabChange = (key) => {
768
- setTabKey(key)
769
- setValue(key === 'single' ? null: [])
770
- }
771
-
772
- return (
773
- <div>
774
- <Tabs onChange={onTabChange} activeKey={tabKey}>
775
- <TabPane tab='单选' key='single'>
776
- {tabKey === 'single' && (
777
- <>
778
- <span>版本1:支持英伦项目...</span>
779
- <BusinessSearchSelect {...props} />
780
- <span>版本2:支持麦克英孚项目...</span>
781
- <BusinessSearchSelect {...props2} />
782
- </>
783
- )}
784
- </TabPane>
785
- <TabPane tab='多选' key='multiple'>
786
- {tabKey === 'multiple' && (
787
- <>
788
- <span>版本1:支持英伦项目...</span>
789
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
790
- <span>版本2:支持麦克英孚项目...</span>
791
- <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
792
- </>
793
- )}
794
- </TabPane>
795
- </Tabs>
796
- </div>
797
- );
798
- };
799
- ```
800
-
801
-
802
- ## 店铺选择器 Select-DP-001
803
-
804
- ```tsx
805
- import React, { useState } from 'react';
806
- import { Tabs } from 'antd';
807
- import {BusinessSearchSelect} from '../../../index.ts';
808
-
809
- const { TabPane } = Tabs;
810
-
811
- export default () => {
812
- const selectProps = {
813
- // mode: 'multiple',
814
- // maxTagCount: 1,
815
- // disabled: true
816
- }
817
- const selectPropsMultiple = {
818
- mode: 'multiple',
819
- maxTagCount: 1,
820
- }
821
-
822
- const [ tabKey, setTabKey ] = useState('single')
823
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
824
-
825
- const props = {
826
- value,
827
- onChange: (value: any) => {
828
- console.log(value)
829
- setValue(value)
830
- },
831
- // requestConfig: {
832
- // url: `/bop/api/store`,
833
- // filter: 'qp-name,code-orGroup,like',,
834
- // mappingTextField: 'name',
835
- // mappingValueField: 'code',
836
- // otherParams: {
837
- // sorter: 'desc-id'
838
- // }, // 默认参数
839
- // sourceName: 'code',
840
- // },
841
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
842
- selectProps,
843
- selectBusinessType: 'shopFile',
844
- };
845
-
846
- const props2 = {
847
- ...props,
848
- // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
849
- selectBusinessType: 'shopFile2',
850
- }
851
-
852
- const onTabChange = (key) => {
853
- setTabKey(key)
854
- setValue(key === 'single' ? null: [])
855
- }
856
-
857
- return (
858
- <div>
859
- <Tabs onChange={onTabChange} activeKey={tabKey}>
860
- <TabPane tab='单选' key='single'>
861
- {tabKey === 'single' && (
862
- <>
863
- <span>版本1:支持英伦项目...</span>
864
- <BusinessSearchSelect {...props} />
865
- <span>版本2:支持麦克英孚项目...</span>
866
- <BusinessSearchSelect {...props2} />
867
- </>
868
- )}
869
- </TabPane>
870
- <TabPane tab='多选' key='multiple'>
871
- {tabKey === 'multiple' && (
872
- <>
873
- <span>版本1:支持英伦项目...</span>
874
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
875
- <span>版本2:支持麦克英孚项目...</span>
876
- <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
877
- </>
878
- )}
879
- </TabPane>
880
- </Tabs>
881
- </div>
882
- );
883
- };
884
- ```
885
-
886
-
887
- ## 核算主体选择器 Select-HSZT-001
888
-
889
- ```tsx
890
- import React, { useState } from 'react';
891
- import { Tabs } from 'antd';
892
- import {BusinessSearchSelect} from '../../../index.ts';
893
-
894
- const { TabPane } = Tabs;
895
-
896
- export default () => {
897
- const selectProps = {
898
- // mode: 'multiple',
899
- // maxTagCount: 1,
900
- // disabled: true
901
- }
902
- const selectPropsMultiple = {
903
- mode: 'multiple',
904
- maxTagCount: 1,
905
- }
906
-
907
- const [ tabKey, setTabKey ] = useState('single')
908
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
909
-
910
- const props = {
911
- value,
912
- onChange: (value: any) => {
913
- console.log(value)
914
- setValue(value)
915
- },
916
- // requestConfig: {
917
- // url: `/bop/api/accountingSubject`,
918
- // filter: 'qp-name,code-orGroup,like',
919
- // mappingTextField: 'name',
920
- // mappingValueField: 'code',
921
- // otherParams: {
922
- // sorter: 'desc-id'
923
- // }, // 默认参数
924
- // sourceName: 'accountingCode',
925
- // },
926
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
927
- selectProps,
928
- selectBusinessType: 'accountingSubject',
929
- };
930
-
931
- const onTabChange = (key) => {
932
- setTabKey(key)
933
- setValue(key === 'single' ? null: [])
934
- }
935
-
936
- return (
937
- <div>
938
- <Tabs onChange={onTabChange} activeKey={tabKey}>
939
- <TabPane tab='单选' key='single'>
940
- {tabKey === 'single' && (
941
- <BusinessSearchSelect {...props} />
942
- )}
943
- </TabPane>
944
- <TabPane tab='多选' key='multiple'>
945
- {tabKey === 'multiple' && (
946
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
947
- )}
948
- </TabPane>
949
- </Tabs>
950
- </div>
951
- );
952
- };
953
- ```
954
-
955
-
956
- ## 库存组织选择器 Select-KCZZ-001
957
-
958
- ```tsx
959
- import React, { useState } from 'react';
960
- import { Tabs } from 'antd';
961
- import {BusinessSearchSelect} from '../../../index.ts';
962
-
963
- const { TabPane } = Tabs;
964
-
965
- export default () => {
966
- const selectProps = {
967
- // mode: 'multiple',
968
- // maxTagCount: 1,
969
- // disabled: true
970
- }
971
- const selectPropsMultiple = {
972
- mode: 'multiple',
973
- maxTagCount: 1,
974
- }
975
-
976
- const [ tabKey, setTabKey ] = useState('single')
977
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
978
-
979
- const props = {
980
- value,
981
- onChange: (value: any) => {
982
- console.log(value)
983
- setValue(value)
984
- },
985
- // requestConfig: {
986
- // url: `/bop/api/inventoryOrg`,
987
- // filter: 'qp-name,code-orGroup,like',
988
- // mappingTextField: 'name',
989
- // mappingValueField: 'code',
990
- // otherParams: {
991
- // sorter: 'desc-id'
992
- // }, // 默认参数
993
- // sourceName: 'inventoryOrgCode',
994
- // },
995
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
996
- selectProps,
997
- selectBusinessType: 'inventoryOrg',
998
- };
999
-
1000
- const props2 = {
1001
- ...props,
1002
- selectBusinessType: 'inventoryOrg2',
1003
- }
1004
-
1005
- const onTabChange = (key) => {
1006
- setTabKey(key)
1007
- setValue(key === 'single' ? null: [])
1008
- }
1009
-
1010
- return (
1011
-
1012
- <div>
1013
- <Tabs onChange={onTabChange} activeKey={tabKey}>
1014
- <TabPane tab='单选' key='single'>
1015
- {tabKey === 'single' && <BusinessSearchSelect {...props} />}
1016
- </TabPane>
1017
- <TabPane tab='多选' key='multiple'>
1018
- {tabKey === 'multiple' && <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />}
1019
- </TabPane>
1020
- </Tabs>
1021
- </div>
1022
- );
1023
- };
1024
- ```
1025
-
1026
-
1027
- ## 法人公司选择器 Select-FRGS-001
1028
-
1029
- ```tsx
1030
- import React, { useState } from 'react';
1031
- import { Tabs } from 'antd';
1032
- import {BusinessSearchSelect} from '../../../index.ts';
1033
-
1034
- const { TabPane } = Tabs;
1035
-
1036
- export default () => {
1037
- const selectProps = {
1038
- // mode: 'multiple',
1039
- // maxTagCount: 1,
1040
- // disabled: true
1041
- }
1042
- const selectPropsMultiple = {
1043
- mode: 'multiple',
1044
- maxTagCount: 1,
1045
- }
1046
-
1047
- const [ tabKey, setTabKey ] = useState('single')
1048
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
1049
-
1050
- const props = {
1051
- value,
1052
- onChange: (value: any) => {
1053
- console.log(value)
1054
- setValue(value)
1055
- },
1056
- // requestConfig: {
1057
- // url: `/bop/api/company`,
1058
- // filter: 'qp-name,code-orGroup,like',
1059
- // mappingTextField: 'name',
1060
- // mappingValueField: 'code',
1061
- // otherParams: {
1062
- // 'qp-companyType-eq': '20',
1063
- // sorter: 'desc-id'
1064
- // }, // 默认参数
1065
- // sourceName: 'companyCode',
1066
- // },
1067
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1068
- selectProps,
1069
- selectBusinessType: 'corporationCompany',
1070
- };
1071
-
1072
- const onTabChange = (key) => {
1073
- setTabKey(key)
1074
- setValue(key === 'single' ? null: [])
1075
- }
1076
-
1077
- return (
1078
- <div>
1079
- <Tabs onChange={onTabChange} activeKey={tabKey}>
1080
- <TabPane tab='单选' key='single'>
1081
- {tabKey === 'single' && (
1082
- <BusinessSearchSelect {...props} />
1083
- )}
1084
- </TabPane>
1085
- <TabPane tab='多选' key='multiple'>
1086
- {tabKey === 'multiple' && (
1087
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1088
- )}
1089
- </TabPane>
1090
- </Tabs>
1091
- </div>
1092
- );
1093
- };
1094
- ```
1095
-
1096
-
1097
- ## 员工选择器 Select-YG-001
1098
-
1099
- ```tsx
1100
- import React, { useState } from 'react';
1101
- import { Tabs } from 'antd';
1102
- import {BusinessSearchSelect} from '../../../index.ts';
1103
-
1104
- const { TabPane } = Tabs;
1105
-
1106
- export default () => {
1107
- const selectProps = {
1108
- // mode: 'multiple',
1109
- // maxTagCount: 1,
1110
- // disabled: true
1111
- }
1112
- const selectPropsMultiple = {
1113
- mode: 'multiple',
1114
- maxTagCount: 1,
1115
- }
1116
-
1117
- const [ tabKey, setTabKey ] = useState('single')
1118
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
1119
-
1120
- const props = {
1121
- value,
1122
- onChange: (value: any) => {
1123
- console.log(value)
1124
- setValue(value)
1125
- },
1126
- // requestConfig: {
1127
- // url: `/bop/api/employee`,
1128
- // filter: 'qp-name,code-orGroup,like',
1129
- // mappingTextField: 'name',
1130
- // mappingValueField: 'code',
1131
- // otherParams: {
1132
- // sorter: 'desc-id'
1133
- // }, // 默认参数
1134
- // sourceName: 'code',
1135
- // },
1136
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1137
- selectProps,
1138
- selectBusinessType: 'employee',
1139
- };
1140
-
1141
- const props2 = {
1142
- ...props,
1143
- // prefixUrl: { selectPrefix: '/user/api', formSelectFix: '/user/api' },
1144
- selectBusinessType: 'employee2',
1145
- }
1146
-
1147
- const onTabChange = (key) => {
1148
- setTabKey(key)
1149
- setValue(key === 'single' ? null: [])
1150
- }
1151
-
1152
- return (
1153
- <div>
1154
- <Tabs onChange={onTabChange} activeKey={tabKey}>
1155
- <TabPane tab='单选' key='single'>
1156
- {tabKey === 'single' && (
1157
- <>
1158
- <span>版本1:支持英伦项目...</span>
1159
- <BusinessSearchSelect {...props} />
1160
- <span>版本2:支持麦克英孚项目...</span>
1161
- <BusinessSearchSelect {...props2} />
1162
- </>
1163
- )}
1164
- </TabPane>
1165
- <TabPane tab='多选' key='multiple'>
1166
- {tabKey === 'multiple' && (
1167
- <>
1168
- <span>版本1:支持英伦项目...</span>
1169
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1170
- <span>版本2:支持麦克英孚项目...</span>
1171
- <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
1172
- </>
1173
- )}
1174
- </TabPane>
1175
- </Tabs>
1176
- </div>
1177
- );
1178
- };
1179
- ```
1180
-
1181
-
1182
- ## 配送方式选择器 Select-PSFS-001
1183
-
1184
- ```tsx
1185
- import React, { useState } from 'react';
1186
- import { Tabs } from 'antd';
1187
- import {BusinessSearchSelect} from '../../../index.ts';
1188
-
1189
- const { TabPane } = Tabs;
1190
-
1191
- export default () => {
1192
- const selectProps = {
1193
- // mode: 'multiple',
1194
- // maxTagCount: 1,
1195
- // disabled: true
1196
- }
1197
- const selectPropsMultiple = {
1198
- mode: 'multiple',
1199
- maxTagCount: 1,
1200
- }
1201
-
1202
- const [ tabKey, setTabKey ] = useState('single')
1203
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
1204
-
1205
- const props = {
1206
- value,
1207
- onChange: (value: any) => {
1208
- console.log(value)
1209
- setValue(value)
1210
- },
1211
- // requestConfig: {
1212
- // url: `/bop/api/getDeliveryModeCodeNameMap`,
1213
- // filter: 'qp-name,code-orGroup,like',
1214
- // mappingTextField: 'name',
1215
- // mappingValueField: 'code',
1216
- // otherParams: {
1217
- // sorter: 'desc-id'
1218
- // }, // 默认参数
1219
- // sourceName: 'deliveryModeCode',
1220
- // },
1221
- // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1222
- selectProps,
1223
- selectBusinessType: 'deliveryMode',
1224
- };
1225
-
1226
- const onTabChange = (key) => {
1227
- setTabKey(key)
1228
- setValue(key === 'single' ? null: [])
1229
- }
1230
-
1231
- return (
1232
- <div>
1233
- <Tabs onChange={onTabChange} activeKey={tabKey}>
1234
- <TabPane tab='单选' key='single'>
1235
- {tabKey === 'single' && (
1236
- <BusinessSearchSelect {...props} />
1237
- )}
1238
- </TabPane>
1239
- <TabPane tab='多选' key='multiple'>
1240
- {tabKey === 'multiple' && (
1241
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1242
- )}
1243
- </TabPane>
1244
- </Tabs>
1245
- </div>
1246
- );
1247
- };
1248
- ```
1249
-
1250
- More skills for writing demo: https://d.umijs.org/guide/demo-principle
1251
-
1252
-
1253
- ## 规则场景选择器 Select-GZCJ-001
1254
-
1255
- ```tsx
1256
- import React, { useState } from 'react';
1257
- import { Tabs } from 'antd';
1258
- import {BusinessSearchSelect} from '../../../index.ts';
1259
-
1260
- const { TabPane } = Tabs;
1261
-
1262
- export default () => {
1263
- const selectProps = {
1264
- // mode: 'multiple',
1265
- // maxTagCount: 1,
1266
- // disabled: true
1267
- }
1268
- const selectPropsMultiple = {
1269
- mode: 'multiple',
1270
- maxTagCount: 1,
1271
- }
1272
-
1273
- const [ tabKey, setTabKey ] = useState('single')
1274
- const [value, setValue] = useState(selectProps?.mode ? [] : null);
1275
-
1276
- const props = {
1277
- value,
1278
- onChange: (value: any) => {
1279
- console.log(value)
1280
- setValue(value)
1281
- },
1282
- selectProps,
1283
- selectBusinessType: 'ruleTemplate',
1284
- };
1285
-
1286
- const onTabChange = (key) => {
1287
- setTabKey(key)
1288
- setValue(key === 'single' ? null: [])
1289
- }
1290
-
1291
- return (
1292
- <div>
1293
- <Tabs onChange={onTabChange} activeKey={tabKey}>
1294
- <TabPane tab='单选' key='single'>
1295
- {tabKey === 'single' && (
1296
- <BusinessSearchSelect {...props} />
1297
- )}
1298
- </TabPane>
1299
- <TabPane tab='多选' key='multiple'>
1300
- {tabKey === 'multiple' && (
1301
- <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1302
- )}
1303
- </TabPane>
1304
- </Tabs>
1305
- </div>
1306
- );
1307
- };
1308
- ```
1309
-
1310
- More skills for writing demo: https://d.umijs.org/guide/demo-principle
1
+ ---
2
+ nav:
3
+ title: '组件'
4
+ order: 1
5
+ group:
6
+ title: 业务组件
7
+ order: 1
8
+ title: 业务档案选择器
9
+ order: 1
10
+ ---
11
+
12
+ # BusinessSearchSelect
13
+
14
+
15
+ ## 供应商选择器 Select-GYS-001
16
+
17
+ ```tsx
18
+ import React, { useState } from 'react';
19
+ import { Tabs } from 'antd';
20
+ import {BusinessSearchSelect} from '../../../index.ts';
21
+
22
+ const { TabPane } = Tabs;
23
+
24
+ export default () => {
25
+ // selectBusinessType 必传(不传默认为供应商选择器)
26
+
27
+ const selectProps = {
28
+ // mode: 'multiple',
29
+ // maxTagCount: 1,
30
+ // disabled: true
31
+ }
32
+ const selectPropsMultiple = {
33
+ mode: 'multiple',
34
+ maxTagCount: 1,
35
+ }
36
+
37
+ const [ tabKey, setTabKey ] = useState('single')
38
+ const [value, setValue] = useState(null);
39
+
40
+ const props = {
41
+ value,
42
+ // labelInValue: true, // 非必填 默认为false
43
+ // requestConfig: {
44
+ // url: `/bop/api/supplier`,
45
+ // filter: 'qp-name,code-orGroup,like', // 过滤参数
46
+ // otherParams: {}, // 默认参数
47
+ // mappingTextField: 'name',
48
+ // mappingValueField: 'code',
49
+ // }, // 非必传,业务字段已根据业务默认默认
50
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' }, // 非必传,下拉框和tableForm下拉框接口前缀,默认为bop的接口
51
+ selectProps, // 非必传
52
+ onChange: (value: any) => {
53
+ console.log(value)
54
+ setValue(value)
55
+ },
56
+ selectBusinessType: 'supplier',
57
+ disabled: true,
58
+ };
59
+
60
+ const props2 = {
61
+ ...props,
62
+ // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
63
+ selectBusinessType: 'supplier2',
64
+ }
65
+
66
+ const onTabChange = (key) => {
67
+ setTabKey(key)
68
+ setValue(key === 'single' ? null: [])
69
+ }
70
+
71
+ return (
72
+ <div>
73
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
74
+ <TabPane tab='单选' key='single'>
75
+ {tabKey === 'single' && (
76
+ <>
77
+ <span>版本1:支持英伦项目...</span>
78
+ <BusinessSearchSelect {...props} />
79
+ <span>版本2:支持麦克英孚项目...</span>
80
+ <BusinessSearchSelect {...props2} />
81
+ </>
82
+ )}
83
+ </TabPane>
84
+ <TabPane tab='多选' key='multiple'>
85
+ {tabKey === 'multiple' && (
86
+ <>
87
+ <span>版本1:支持英伦项目...</span>
88
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
89
+ <span>版本2:支持麦克英孚项目...</span>
90
+ <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
91
+ </>
92
+ )}
93
+ </TabPane>
94
+ </Tabs>
95
+ </div>
96
+ );
97
+ };
98
+ ```
99
+
100
+
101
+ ## 商品SKU选择器 Select-SKU-001
102
+
103
+ ```tsx
104
+ import React, { useState } from 'react';
105
+ import { Tabs } from 'antd';
106
+ import {BusinessSearchSelect} from '../../../index.ts';
107
+
108
+ const { TabPane } = Tabs;
109
+ export default () => {
110
+ const selectProps = {
111
+ // mode: 'multiple',
112
+ // maxTagCount: 1,
113
+ // disabled: true
114
+ }
115
+ const selectPropsMultiple = {
116
+ mode: 'multiple',
117
+ maxTagCount: 1,
118
+ }
119
+
120
+ const singleConfirmModalTableProps = {
121
+ modalRadioNeedFooter: true
122
+ }
123
+
124
+ const [ tabKey, setTabKey ] = useState('single')
125
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
126
+
127
+ const props = {
128
+ value,
129
+ onChange: (value: any) => {
130
+ console.log(value)
131
+ setValue(value)
132
+ },
133
+ // requestConfig: {
134
+ // url: `/bop/api/sku/pager/v2`,
135
+ // filter: 'skuCodeAndSkuName',
136
+ // mappingValueField: 'skuCode',
137
+ // otherParams: {
138
+ // sorter: 'desc-id'
139
+ // }, // 默认参数
140
+ // sourceName: 'skuCode',
141
+ // },
142
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
143
+ selectProps,
144
+ selectBusinessType: 'skuCommodity',
145
+ };
146
+
147
+ const onTabChange = (key) => {
148
+ setTabKey(key)
149
+ setValue(key === 'single' ? null: [])
150
+ }
151
+
152
+ return (
153
+ <div>
154
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
155
+ <TabPane tab='单选' key='single'>
156
+ {tabKey === 'single' && (
157
+ <BusinessSearchSelect {...props} />
158
+ )}
159
+ </TabPane>
160
+ <TabPane tab='单选弹窗可点击确定' key='singleConfirm'>
161
+ {tabKey === 'singleConfirm' && (
162
+ <BusinessSearchSelect {...props} modalTableProps={singleConfirmModalTableProps} />
163
+ )}
164
+ </TabPane>
165
+ <TabPane tab='多选' key='multiple'>
166
+ {tabKey === 'multiple' && (
167
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
168
+ )}
169
+ </TabPane>
170
+ </Tabs>
171
+ </div>
172
+ );
173
+ };
174
+ ```
175
+
176
+ [comment]: <> (## 商品规格选择器 Select-SPGG-001)
177
+
178
+ [comment]: <> (```tsx)
179
+
180
+ [comment]: <> (import React, { useState } from 'react';)
181
+
182
+ [comment]: <> (import { Tabs } from 'antd';)
183
+
184
+ [comment]: <> (import {BusinessSearchSelect} from '../../../index.ts';)
185
+
186
+ [comment]: <> (const { TabPane } = Tabs;)
187
+
188
+ [comment]: <> (export default &#40;&#41; => {)
189
+
190
+ [comment]: <> ( const selectProps = {)
191
+
192
+ [comment]: <> ( // mode: 'multiple',)
193
+
194
+ [comment]: <> ( // maxTagCount: 1,)
195
+
196
+ [comment]: <> ( // disabled: true)
197
+
198
+ [comment]: <> ( })
199
+
200
+ [comment]: <> ( const selectPropsMultiple = {)
201
+
202
+ [comment]: <> ( mode: 'multiple',)
203
+
204
+ [comment]: <> ( maxTagCount: 1,)
205
+
206
+ [comment]: <> ( })
207
+
208
+ [comment]: <> ( const [ tabKey, setTabKey ] = useState&#40;'single'&#41;)
209
+
210
+ [comment]: <> ( const [value, setValue] = useState&#40;selectProps?.mode ? [] : null&#41;;)
211
+
212
+ [comment]: <> ( const props = {)
213
+
214
+ [comment]: <> ( value,)
215
+
216
+ [comment]: <> ( onChange: &#40;value: any&#41; => {)
217
+
218
+ [comment]: <> ( console.log&#40;value&#41;)
219
+
220
+ [comment]: <> ( setValue&#40;value&#41;)
221
+
222
+ [comment]: <> ( },)
223
+
224
+ [comment]: <> ( prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },)
225
+
226
+ [comment]: <> ( selectProps,)
227
+
228
+ [comment]: <> ( selectBusinessType: 'skuPropertyValue',)
229
+
230
+ [comment]: <> ( };)
231
+
232
+ [comment]: <> ( const onTabChange = &#40;key&#41; => {)
233
+
234
+ [comment]: <> ( setTabKey&#40;key&#41;)
235
+
236
+ [comment]: <> ( setValue&#40;key === 'single' ? null: []&#41;)
237
+
238
+ [comment]: <> ( })
239
+
240
+ [comment]: <> ( return &#40;)
241
+
242
+ [comment]: <> ( <div>)
243
+
244
+ [comment]: <> ( <Tabs onChange={onTabChange} activeKey={tabKey}>)
245
+
246
+ [comment]: <> ( <TabPane tab='单选' key='single'>)
247
+
248
+ [comment]: <> ( {tabKey === 'single' && &#40;)
249
+
250
+ [comment]: <> ( <BusinessSearchSelect {...props} />)
251
+
252
+ [comment]: <> ( &#41;})
253
+
254
+ [comment]: <> ( </TabPane>)
255
+
256
+ [comment]: <> ( <TabPane tab='多选' key='multiple'>)
257
+
258
+ [comment]: <> ( {tabKey === 'multiple' && &#40;)
259
+
260
+ [comment]: <> ( <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />)
261
+
262
+ [comment]: <> ( &#41;})
263
+
264
+ [comment]: <> ( </TabPane>)
265
+
266
+ [comment]: <> ( </Tabs>)
267
+
268
+ [comment]: <> ( </div>)
269
+
270
+ [comment]: <> ( &#41;;)
271
+
272
+ [comment]: <> (};)
273
+
274
+ [comment]: <> (```)
275
+
276
+ ## 商品SPU选择器 Select-SPU-001
277
+
278
+ ```tsx
279
+ import React, { useState } from 'react';
280
+ import { Tabs } from 'antd';
281
+ import {BusinessSearchSelect} from '../../../index.ts';
282
+
283
+ const { TabPane } = Tabs;
284
+ export default () => {
285
+ const selectProps = {
286
+ // mode: 'multiple',
287
+ // maxTagCount: 1,
288
+ // disabled: true
289
+ }
290
+ const selectPropsMultiple = {
291
+ mode: 'multiple',
292
+ maxTagCount: 6,
293
+ }
294
+
295
+ const [ tabKey, setTabKey ] = useState('single')
296
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
297
+
298
+ const props = {
299
+ value,
300
+ onChange: (value: any) => {
301
+ console.log(value)
302
+ setValue(value)
303
+ },
304
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
305
+ selectProps,
306
+ selectBusinessType: 'spuCommodity',
307
+ };
308
+
309
+ const onTabChange = (key) => {
310
+ setTabKey(key)
311
+ setValue(key === 'single' ? null: [])
312
+ }
313
+
314
+ return (
315
+ <div>
316
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
317
+ <TabPane tab='单选' key='single'>
318
+ {tabKey === 'single' && (
319
+ <BusinessSearchSelect {...props} />
320
+ )}
321
+ </TabPane>
322
+ <TabPane tab='多选' key='multiple'>
323
+ {tabKey === 'multiple' && (
324
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
325
+ )}
326
+ </TabPane>
327
+ </Tabs>
328
+ </div>
329
+ );
330
+ };
331
+ ```
332
+
333
+ ## 商品SKC选择器 Select-SKC-001
334
+
335
+ ```tsx
336
+ import React, { useState } from 'react';
337
+ import { Tabs } from 'antd';
338
+ import {BusinessSearchSelect} from '../../../index.ts';
339
+
340
+ const { TabPane } = Tabs;
341
+ export default () => {
342
+ const selectProps = {
343
+ // mode: 'multiple',
344
+ // maxTagCount: 1,
345
+ // disabled: true
346
+ }
347
+ const selectPropsMultiple = {
348
+ mode: 'multiple',
349
+ maxTagCount: 6,
350
+ }
351
+
352
+ const [ tabKey, setTabKey ] = useState('single')
353
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
354
+
355
+ const props = {
356
+ value,
357
+ onChange: (value: any) => {
358
+ console.log(value)
359
+ setValue(value)
360
+ },
361
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
362
+ selectProps,
363
+ selectBusinessType: 'skcCommodity',
364
+ };
365
+
366
+ const onTabChange = (key) => {
367
+ setTabKey(key)
368
+ setValue(key === 'single' ? null: [])
369
+ }
370
+
371
+ return (
372
+ <div>
373
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
374
+ <TabPane tab='单选' key='single'>
375
+ {tabKey === 'single' && (
376
+ <BusinessSearchSelect {...props} />
377
+ )}
378
+ </TabPane>
379
+ <TabPane tab='多选' key='multiple'>
380
+ {tabKey === 'multiple' && (
381
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
382
+ )}
383
+ </TabPane>
384
+ </Tabs>
385
+ </div>
386
+ );
387
+ };
388
+ ```
389
+
390
+ ## 仓库选择器(物理仓) Select-Warehouse-001
391
+
392
+ ```tsx
393
+ import React, { useState, useEffect } from 'react';
394
+ import { Tabs } from 'antd';
395
+ import {BusinessSearchSelect} from '../../../index.ts';
396
+
397
+ const { TabPane } = Tabs;
398
+
399
+ export default () => {
400
+ const selectProps = {
401
+ // mode: 'multiple',
402
+ // maxTagCount: 1,
403
+ // disabled: true
404
+ }
405
+ const selectPropsMultiple = {
406
+ mode: 'multiple',
407
+ maxTagCount: 1,
408
+ }
409
+
410
+ const [ tabKey, setTabKey ] = useState('single')
411
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
412
+
413
+ useEffect(() => {
414
+ if(tabKey === 'multiple') {
415
+ setValue(['1540295745870573570', '1540173160826613762'])
416
+ }
417
+ },[tabKey])
418
+
419
+ const props = {
420
+ value,
421
+ onChange: (value: any) => {
422
+ console.log(value)
423
+ setValue(value)
424
+ },
425
+ requestConfig: {
426
+ // mappingValueField: 'physicalWarehouseCode',
427
+ // sourceName: 'physicalWarehouseCode',
428
+ filterInit: 'qp-id-in'
429
+ },
430
+ // modalTableProps: {
431
+ // modalTableTitle: '选择物理仓-更改title测试',
432
+ // needModalTable: false
433
+ // },
434
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
435
+ selectProps,
436
+ // labelInValue: true,
437
+ selectBusinessType: 'physicalWarehouse',
438
+ };
439
+
440
+ const onTabChange = (key) => {
441
+ setTabKey(key)
442
+ setValue(key === 'single' ? null: [])
443
+ }
444
+
445
+ return (
446
+ <div>
447
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
448
+ <TabPane tab='单选' key='single'>
449
+ {tabKey === 'single' && (
450
+ <BusinessSearchSelect {...props} />
451
+ )}
452
+ </TabPane>
453
+ <TabPane tab='多选' key='multiple'>
454
+ {tabKey === 'multiple' && (
455
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
456
+ )}
457
+ </TabPane>
458
+ </Tabs>
459
+ </div>
460
+ );
461
+ };
462
+ ```
463
+
464
+ ## 仓库选择器(逻辑仓) Select-Warehouse-002
465
+
466
+ ```tsx
467
+ import React, { useState } from 'react';
468
+ import { Tabs } from 'antd';
469
+ import {BusinessSearchSelect} from '../../../index.ts';
470
+
471
+ const { TabPane } = Tabs;
472
+
473
+ export default () => {
474
+ const selectProps = {
475
+ // mode: 'multiple',
476
+ // maxTagCount: 1,
477
+ // disabled: true
478
+ }
479
+ const selectPropsMultiple = {
480
+ mode: 'multiple',
481
+ maxTagCount: 1,
482
+ }
483
+
484
+ const [ tabKey, setTabKey ] = useState('single')
485
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
486
+
487
+ const props = {
488
+ value,
489
+ onChange: (value: any) => {
490
+ console.log(value)
491
+ setValue(value)
492
+ },
493
+ // requestConfig: {
494
+ // url: `/bop/api/realWarehouse`,
495
+ // filter: 'qp-realWarehouseName,realWarehouseCode-orGroup,like',
496
+ // mappingTextField: 'realWarehouseName',
497
+ // mappingValueField: 'realWarehouseCode',
498
+ // otherParams: {
499
+ // sorter: 'desc-id'
500
+ // }, // 默认参数
501
+ // sourceName: 'warehouseIds',
502
+ // },
503
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
504
+ selectProps,
505
+ selectBusinessType: 'realWarehouse',
506
+ };
507
+
508
+ const onTabChange = (key) => {
509
+ setTabKey(key)
510
+ setValue(key === 'single' ? null: [])
511
+ }
512
+
513
+ return (
514
+ <div>
515
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
516
+ <TabPane tab='单选' key='single'>
517
+ {tabKey === 'single' && (
518
+ <BusinessSearchSelect {...props} />
519
+ )}
520
+ </TabPane>
521
+ <TabPane tab='多选' key='multiple'>
522
+ {tabKey === 'multiple' && (
523
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
524
+ )}
525
+ </TabPane>
526
+ </Tabs>
527
+ </div>
528
+ );
529
+ };
530
+ ```
531
+
532
+ ## 仓库选择器(运营仓) Select-Warehouse-005
533
+
534
+ ```tsx
535
+ import React, { useState } from 'react';
536
+ import { Tabs } from 'antd';
537
+ import {BusinessSearchSelect} from '../../../index.ts';
538
+
539
+ const { TabPane } = Tabs;
540
+
541
+ export default () => {
542
+ const selectProps = {
543
+ // mode: 'multiple',
544
+ // maxTagCount: 1,
545
+ // disabled: true
546
+ }
547
+ const selectPropsMultiple = {
548
+ mode: 'multiple',
549
+ maxTagCount: 1,
550
+ }
551
+
552
+ const [ tabKey, setTabKey ] = useState('single')
553
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
554
+
555
+ const props = {
556
+ value,
557
+ onChange: (value: any) => {
558
+ console.log(value)
559
+ setValue(value)
560
+ },
561
+ selectProps,
562
+ selectBusinessType: 'ownerWarehouse',
563
+ };
564
+
565
+ const onTabChange = (key) => {
566
+ setTabKey(key)
567
+ setValue(key === 'single' ? null: [])
568
+ }
569
+
570
+ return (
571
+ <div>
572
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
573
+ <TabPane tab='单选' key='single'>
574
+ {tabKey === 'single' && (
575
+ <BusinessSearchSelect {...props} />
576
+ )}
577
+ </TabPane>
578
+ <TabPane tab='多选' key='multiple'>
579
+ {tabKey === 'multiple' && (
580
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
581
+ )}
582
+ </TabPane>
583
+ </Tabs>
584
+ </div>
585
+ );
586
+ };
587
+ ```
588
+
589
+ ## 仓库选择器(虚拟仓) Select-Warehouse-003
590
+
591
+ ```tsx
592
+ import React, { useState } from 'react';
593
+ import { Tabs } from 'antd';
594
+ import {BusinessSearchSelect} from '../../../index.ts';
595
+
596
+ const { TabPane } = Tabs;
597
+
598
+ export default () => {
599
+ const selectProps = {
600
+ // mode: 'multiple',
601
+ // maxTagCount: 1,
602
+ // disabled: true
603
+ }
604
+ const selectPropsMultiple = {
605
+ mode: 'multiple',
606
+ maxTagCount: 1,
607
+ }
608
+
609
+ const [ tabKey, setTabKey ] = useState('single')
610
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
611
+
612
+ const props = {
613
+ value,
614
+ onChange: (value: any) => {
615
+ console.log(value)
616
+ setValue(value)
617
+ },
618
+ // requestConfig: {
619
+ // url: `/bop/api/virtualWarehouse`,
620
+ // filter: 'qp-virtualWarehouseName,virtualWarehouseCode-orGroup,like',
621
+ // mappingTextField: 'virtualWarehouseName',
622
+ // mappingValueField: 'virtualWarehouseCode',
623
+ // otherParams: {
624
+ // sorter: 'desc-id'
625
+ // }, // 默认参数
626
+ // sourceName: 'warehouseIds',
627
+ // },
628
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
629
+ selectProps,
630
+ selectBusinessType: 'virtualWarehouse',
631
+ };
632
+
633
+ const onTabChange = (key) => {
634
+ setTabKey(key)
635
+ setValue(key === 'single' ? null: [])
636
+ }
637
+
638
+ return (
639
+ <div>
640
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
641
+ <TabPane tab='单选' key='single'>
642
+ {tabKey === 'single' && (
643
+ <BusinessSearchSelect {...props} />
644
+ )}
645
+ </TabPane>
646
+ <TabPane tab='多选' key='multiple'>
647
+ {tabKey === 'multiple' && (
648
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
649
+ )}
650
+ </TabPane>
651
+ </Tabs>
652
+ </div>
653
+ );
654
+ };
655
+ ```
656
+
657
+ ## 仓库选择器(渠道仓) Select-Warehouse-004
658
+
659
+ ```tsx
660
+ import React, { useState } from 'react';
661
+ import { Tabs } from 'antd';
662
+ import {BusinessSearchSelect} from '../../../index.ts';
663
+
664
+ const { TabPane } = Tabs;
665
+
666
+ export default () => {
667
+ const selectProps = {
668
+ // mode: 'multiple',
669
+ // maxTagCount: 1,
670
+ // disabled: true
671
+ }
672
+ const selectPropsMultiple = {
673
+ mode: 'multiple',
674
+ maxTagCount: 1,
675
+ }
676
+
677
+ const [ tabKey, setTabKey ] = useState('single')
678
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
679
+
680
+ const props = {
681
+ value,
682
+ onChange: (value: any) => {
683
+ console.log(value)
684
+ setValue(value)
685
+ },
686
+ // requestConfig: {
687
+ // url: `/bop/api/channelWarehouse`,
688
+ // filter: 'qp-channelWarehouseName,channelWarehouseCode-orGroup,like',
689
+ // mappingTextField: 'channelWarehouseName',
690
+ // mappingValueField: 'channelWarehouseCode',
691
+ // otherParams: {
692
+ // sorter: 'desc-id'
693
+ // }, // 默认参数
694
+ // sourceName: 'warehouseIds',
695
+ // },
696
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
697
+ selectProps,
698
+ selectBusinessType: 'channelWarehouse',
699
+ };
700
+
701
+ const onTabChange = (key) => {
702
+ setTabKey(key)
703
+ setValue(key === 'single' ? null: [])
704
+ }
705
+
706
+ return (
707
+ <div>
708
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
709
+ <TabPane tab='单选' key='single'>
710
+ {tabKey === 'single' && (
711
+ <BusinessSearchSelect {...props} />
712
+ )}
713
+ </TabPane>
714
+ <TabPane tab='多选' key='multiple'>
715
+ {tabKey === 'multiple' && (
716
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
717
+ )}
718
+ </TabPane>
719
+ </Tabs>
720
+ </div>
721
+ );
722
+ };
723
+ ```
724
+
725
+
726
+ ## 客户选择器 Select-KH-001
727
+
728
+ ```tsx
729
+ import React, { useState } from 'react';
730
+ import { Tabs } from 'antd';
731
+ import {BusinessSearchSelect} from '../../../index.ts';
732
+
733
+ const { TabPane } = Tabs;
734
+
735
+ export default () => {
736
+ const selectProps = {
737
+ // mode: 'multiple',
738
+ // maxTagCount: 1,
739
+ // disabled: true
740
+ }
741
+ const selectPropsMultiple = {
742
+ mode: 'multiple',
743
+ maxTagCount: 1,
744
+ }
745
+
746
+ const [ tabKey, setTabKey ] = useState('single')
747
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
748
+
749
+ const props = {
750
+ value,
751
+ onChange: (value: any) => {
752
+ console.log(value)
753
+ setValue(value)
754
+ },
755
+ // requestConfig: {
756
+ // url: `/bop/api/customer`,
757
+ // filter: 'qp-name,code-orGroup,like', // 过滤参数
758
+ // mappingTextField: 'name',
759
+ // mappingValueField: 'code',
760
+ // otherParams: {
761
+ // sorter: 'desc-id'
762
+ // }, // 默认参数
763
+ // sourceName: 'customerCode',
764
+ // },
765
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
766
+ selectProps,
767
+ selectBusinessType: 'customer',
768
+ };
769
+
770
+ const props2 = {
771
+ ...props,
772
+ // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
773
+ selectBusinessType: 'customer2',
774
+ }
775
+
776
+ const onTabChange = (key) => {
777
+ setTabKey(key)
778
+ setValue(key === 'single' ? null: [])
779
+ }
780
+
781
+ return (
782
+ <div>
783
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
784
+ <TabPane tab='单选' key='single'>
785
+ {tabKey === 'single' && (
786
+ <>
787
+ <span>版本1:支持英伦项目...</span>
788
+ <BusinessSearchSelect {...props} />
789
+ <span>版本2:支持麦克英孚项目...</span>
790
+ <BusinessSearchSelect {...props2} />
791
+ </>
792
+ )}
793
+ </TabPane>
794
+ <TabPane tab='多选' key='multiple'>
795
+ {tabKey === 'multiple' && (
796
+ <>
797
+ <span>版本1:支持英伦项目...</span>
798
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
799
+ <span>版本2:支持麦克英孚项目...</span>
800
+ <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
801
+ </>
802
+ )}
803
+ </TabPane>
804
+ </Tabs>
805
+ </div>
806
+ );
807
+ };
808
+ ```
809
+
810
+
811
+ ## 店铺选择器 Select-DP-001
812
+
813
+ ```tsx
814
+ import React, { useState } from 'react';
815
+ import { Tabs } from 'antd';
816
+ import {BusinessSearchSelect} from '../../../index.ts';
817
+
818
+ const { TabPane } = Tabs;
819
+
820
+ export default () => {
821
+ const selectProps = {
822
+ // mode: 'multiple',
823
+ // maxTagCount: 1,
824
+ // disabled: true
825
+ }
826
+ const selectPropsMultiple = {
827
+ mode: 'multiple',
828
+ maxTagCount: 1,
829
+ }
830
+
831
+ const [ tabKey, setTabKey ] = useState('single')
832
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
833
+
834
+ const props = {
835
+ value,
836
+ onChange: (value: any) => {
837
+ console.log(value)
838
+ setValue(value)
839
+ },
840
+ // requestConfig: {
841
+ // url: `/bop/api/store`,
842
+ // filter: 'qp-name,code-orGroup,like',,
843
+ // mappingTextField: 'name',
844
+ // mappingValueField: 'code',
845
+ // otherParams: {
846
+ // sorter: 'desc-id'
847
+ // }, // 默认参数
848
+ // sourceName: 'code',
849
+ // },
850
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
851
+ selectProps,
852
+ selectBusinessType: 'shopFile',
853
+ };
854
+
855
+ const props2 = {
856
+ ...props,
857
+ // prefixUrl: { selectPrefix: '/channel-manage/', formSelectFix: '/channel-manage/' },
858
+ selectBusinessType: 'shopFile2',
859
+ }
860
+
861
+ const onTabChange = (key) => {
862
+ setTabKey(key)
863
+ setValue(key === 'single' ? null: [])
864
+ }
865
+
866
+ return (
867
+ <div>
868
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
869
+ <TabPane tab='单选' key='single'>
870
+ {tabKey === 'single' && (
871
+ <>
872
+ <span>版本1:支持英伦项目...</span>
873
+ <BusinessSearchSelect {...props} />
874
+ <span>版本2:支持麦克英孚项目...</span>
875
+ <BusinessSearchSelect {...props2} />
876
+ </>
877
+ )}
878
+ </TabPane>
879
+ <TabPane tab='多选' key='multiple'>
880
+ {tabKey === 'multiple' && (
881
+ <>
882
+ <span>版本1:支持英伦项目...</span>
883
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
884
+ <span>版本2:支持麦克英孚项目...</span>
885
+ <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
886
+ </>
887
+ )}
888
+ </TabPane>
889
+ </Tabs>
890
+ </div>
891
+ );
892
+ };
893
+ ```
894
+
895
+
896
+ ## 核算主体选择器 Select-HSZT-001
897
+
898
+ ```tsx
899
+ import React, { useState } from 'react';
900
+ import { Tabs } from 'antd';
901
+ import {BusinessSearchSelect} from '../../../index.ts';
902
+
903
+ const { TabPane } = Tabs;
904
+
905
+ export default () => {
906
+ const selectProps = {
907
+ // mode: 'multiple',
908
+ // maxTagCount: 1,
909
+ // disabled: true
910
+ }
911
+ const selectPropsMultiple = {
912
+ mode: 'multiple',
913
+ maxTagCount: 1,
914
+ }
915
+
916
+ const [ tabKey, setTabKey ] = useState('single')
917
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
918
+
919
+ const props = {
920
+ value,
921
+ onChange: (value: any) => {
922
+ console.log(value)
923
+ setValue(value)
924
+ },
925
+ // requestConfig: {
926
+ // url: `/bop/api/accountingSubject`,
927
+ // filter: 'qp-name,code-orGroup,like',
928
+ // mappingTextField: 'name',
929
+ // mappingValueField: 'code',
930
+ // otherParams: {
931
+ // sorter: 'desc-id'
932
+ // }, // 默认参数
933
+ // sourceName: 'accountingCode',
934
+ // },
935
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
936
+ selectProps,
937
+ selectBusinessType: 'accountingSubject',
938
+ };
939
+
940
+ const onTabChange = (key) => {
941
+ setTabKey(key)
942
+ setValue(key === 'single' ? null: [])
943
+ }
944
+
945
+ return (
946
+ <div>
947
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
948
+ <TabPane tab='单选' key='single'>
949
+ {tabKey === 'single' && (
950
+ <BusinessSearchSelect {...props} />
951
+ )}
952
+ </TabPane>
953
+ <TabPane tab='多选' key='multiple'>
954
+ {tabKey === 'multiple' && (
955
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
956
+ )}
957
+ </TabPane>
958
+ </Tabs>
959
+ </div>
960
+ );
961
+ };
962
+ ```
963
+
964
+
965
+ ## 库存组织选择器 Select-KCZZ-001
966
+
967
+ ```tsx
968
+ import React, { useState } from 'react';
969
+ import { Tabs } from 'antd';
970
+ import {BusinessSearchSelect} from '../../../index.ts';
971
+
972
+ const { TabPane } = Tabs;
973
+
974
+ export default () => {
975
+ const selectProps = {
976
+ // mode: 'multiple',
977
+ // maxTagCount: 1,
978
+ // disabled: true
979
+ }
980
+ const selectPropsMultiple = {
981
+ mode: 'multiple',
982
+ maxTagCount: 1,
983
+ }
984
+
985
+ const [ tabKey, setTabKey ] = useState('single')
986
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
987
+
988
+ const props = {
989
+ value,
990
+ onChange: (value: any) => {
991
+ console.log(value)
992
+ setValue(value)
993
+ },
994
+ // requestConfig: {
995
+ // url: `/bop/api/inventoryOrg`,
996
+ // filter: 'qp-name,code-orGroup,like',
997
+ // mappingTextField: 'name',
998
+ // mappingValueField: 'code',
999
+ // otherParams: {
1000
+ // sorter: 'desc-id'
1001
+ // }, // 默认参数
1002
+ // sourceName: 'inventoryOrgCode',
1003
+ // },
1004
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1005
+ selectProps,
1006
+ selectBusinessType: 'inventoryOrg',
1007
+ };
1008
+
1009
+ const props2 = {
1010
+ ...props,
1011
+ selectBusinessType: 'inventoryOrg2',
1012
+ }
1013
+
1014
+ const onTabChange = (key) => {
1015
+ setTabKey(key)
1016
+ setValue(key === 'single' ? null: [])
1017
+ }
1018
+
1019
+ return (
1020
+
1021
+ <div>
1022
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
1023
+ <TabPane tab='单选' key='single'>
1024
+ {tabKey === 'single' && <BusinessSearchSelect {...props} />}
1025
+ </TabPane>
1026
+ <TabPane tab='多选' key='multiple'>
1027
+ {tabKey === 'multiple' && <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />}
1028
+ </TabPane>
1029
+ </Tabs>
1030
+ </div>
1031
+ );
1032
+ };
1033
+ ```
1034
+
1035
+
1036
+ ## 法人公司选择器 Select-FRGS-001
1037
+
1038
+ ```tsx
1039
+ import React, { useState } from 'react';
1040
+ import { Tabs } from 'antd';
1041
+ import {BusinessSearchSelect} from '../../../index.ts';
1042
+
1043
+ const { TabPane } = Tabs;
1044
+
1045
+ export default () => {
1046
+ const selectProps = {
1047
+ // mode: 'multiple',
1048
+ // maxTagCount: 1,
1049
+ // disabled: true
1050
+ }
1051
+ const selectPropsMultiple = {
1052
+ mode: 'multiple',
1053
+ maxTagCount: 1,
1054
+ }
1055
+
1056
+ const [ tabKey, setTabKey ] = useState('single')
1057
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
1058
+
1059
+ const props = {
1060
+ value,
1061
+ onChange: (value: any) => {
1062
+ console.log(value)
1063
+ setValue(value)
1064
+ },
1065
+ // requestConfig: {
1066
+ // url: `/bop/api/company`,
1067
+ // filter: 'qp-name,code-orGroup,like',
1068
+ // mappingTextField: 'name',
1069
+ // mappingValueField: 'code',
1070
+ // otherParams: {
1071
+ // 'qp-companyType-eq': '20',
1072
+ // sorter: 'desc-id'
1073
+ // }, // 默认参数
1074
+ // sourceName: 'companyCode',
1075
+ // },
1076
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1077
+ selectProps,
1078
+ selectBusinessType: 'corporationCompany',
1079
+ };
1080
+
1081
+ const onTabChange = (key) => {
1082
+ setTabKey(key)
1083
+ setValue(key === 'single' ? null: [])
1084
+ }
1085
+
1086
+ return (
1087
+ <div>
1088
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
1089
+ <TabPane tab='单选' key='single'>
1090
+ {tabKey === 'single' && (
1091
+ <BusinessSearchSelect {...props} />
1092
+ )}
1093
+ </TabPane>
1094
+ <TabPane tab='多选' key='multiple'>
1095
+ {tabKey === 'multiple' && (
1096
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1097
+ )}
1098
+ </TabPane>
1099
+ </Tabs>
1100
+ </div>
1101
+ );
1102
+ };
1103
+ ```
1104
+
1105
+
1106
+ ## 员工选择器 Select-YG-001
1107
+
1108
+ ```tsx
1109
+ import React, { useState } from 'react';
1110
+ import { Tabs } from 'antd';
1111
+ import {BusinessSearchSelect} from '../../../index.ts';
1112
+
1113
+ const { TabPane } = Tabs;
1114
+
1115
+ export default () => {
1116
+ const selectProps = {
1117
+ // mode: 'multiple',
1118
+ // maxTagCount: 1,
1119
+ // disabled: true
1120
+ }
1121
+ const selectPropsMultiple = {
1122
+ mode: 'multiple',
1123
+ maxTagCount: 1,
1124
+ }
1125
+
1126
+ const [ tabKey, setTabKey ] = useState('single')
1127
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
1128
+
1129
+ const props = {
1130
+ value,
1131
+ onChange: (value: any) => {
1132
+ console.log(value)
1133
+ setValue(value)
1134
+ },
1135
+ // requestConfig: {
1136
+ // url: `/bop/api/employee`,
1137
+ // filter: 'qp-name,code-orGroup,like',
1138
+ // mappingTextField: 'name',
1139
+ // mappingValueField: 'code',
1140
+ // otherParams: {
1141
+ // sorter: 'desc-id'
1142
+ // }, // 默认参数
1143
+ // sourceName: 'code',
1144
+ // },
1145
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1146
+ selectProps,
1147
+ selectBusinessType: 'employee',
1148
+ };
1149
+
1150
+ const props2 = {
1151
+ ...props,
1152
+ // prefixUrl: { selectPrefix: '/user/api', formSelectFix: '/user/api' },
1153
+ selectBusinessType: 'employee2',
1154
+ }
1155
+
1156
+ const onTabChange = (key) => {
1157
+ setTabKey(key)
1158
+ setValue(key === 'single' ? null: [])
1159
+ }
1160
+
1161
+ return (
1162
+ <div>
1163
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
1164
+ <TabPane tab='单选' key='single'>
1165
+ {tabKey === 'single' && (
1166
+ <>
1167
+ <span>版本1:支持英伦项目...</span>
1168
+ <BusinessSearchSelect {...props} />
1169
+ <span>版本2:支持麦克英孚项目...</span>
1170
+ <BusinessSearchSelect {...props2} />
1171
+ </>
1172
+ )}
1173
+ </TabPane>
1174
+ <TabPane tab='多选' key='multiple'>
1175
+ {tabKey === 'multiple' && (
1176
+ <>
1177
+ <span>版本1:支持英伦项目...</span>
1178
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1179
+ <span>版本2:支持麦克英孚项目...</span>
1180
+ <BusinessSearchSelect {...props2} selectProps={selectPropsMultiple} />
1181
+ </>
1182
+ )}
1183
+ </TabPane>
1184
+ </Tabs>
1185
+ </div>
1186
+ );
1187
+ };
1188
+ ```
1189
+
1190
+
1191
+ ## 配送方式选择器 Select-PSFS-001
1192
+
1193
+ ```tsx
1194
+ import React, { useState } from 'react';
1195
+ import { Tabs } from 'antd';
1196
+ import {BusinessSearchSelect} from '../../../index.ts';
1197
+
1198
+ const { TabPane } = Tabs;
1199
+
1200
+ export default () => {
1201
+ const selectProps = {
1202
+ // mode: 'multiple',
1203
+ // maxTagCount: 1,
1204
+ // disabled: true
1205
+ }
1206
+ const selectPropsMultiple = {
1207
+ mode: 'multiple',
1208
+ maxTagCount: 1,
1209
+ }
1210
+
1211
+ const [ tabKey, setTabKey ] = useState('single')
1212
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
1213
+
1214
+ const props = {
1215
+ value,
1216
+ onChange: (value: any) => {
1217
+ console.log(value)
1218
+ setValue(value)
1219
+ },
1220
+ // requestConfig: {
1221
+ // url: `/bop/api/getDeliveryModeCodeNameMap`,
1222
+ // filter: 'qp-name,code-orGroup,like',
1223
+ // mappingTextField: 'name',
1224
+ // mappingValueField: 'code',
1225
+ // otherParams: {
1226
+ // sorter: 'desc-id'
1227
+ // }, // 默认参数
1228
+ // sourceName: 'deliveryModeCode',
1229
+ // },
1230
+ // prefixUrl: { selectPrefix: '/bop/api', formSelectFix: '/bop/api' },
1231
+ selectProps,
1232
+ selectBusinessType: 'deliveryMode',
1233
+ };
1234
+
1235
+ const onTabChange = (key) => {
1236
+ setTabKey(key)
1237
+ setValue(key === 'multiple' ? []: null)
1238
+ }
1239
+
1240
+ return (
1241
+ <div>
1242
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
1243
+ <TabPane tab='单选' key='single'>
1244
+ {tabKey === 'single' && (
1245
+ <BusinessSearchSelect {...props} />
1246
+ )}
1247
+ </TabPane>
1248
+ <TabPane tab='多选' key='multiple'>
1249
+ {tabKey === 'multiple' && (
1250
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1251
+ )}
1252
+ </TabPane>
1253
+ </Tabs>
1254
+ </div>
1255
+ );
1256
+ };
1257
+ ```
1258
+
1259
+ More skills for writing demo: https://d.umijs.org/guide/demo-principle
1260
+
1261
+
1262
+ ## 规则场景选择器 Select-GZCJ-001
1263
+
1264
+ ```tsx
1265
+ import React, { useState } from 'react';
1266
+ import { Tabs } from 'antd';
1267
+ import {BusinessSearchSelect} from '../../../index.ts';
1268
+
1269
+ const { TabPane } = Tabs;
1270
+
1271
+ export default () => {
1272
+ const selectProps = {
1273
+ // mode: 'multiple',
1274
+ // maxTagCount: 1,
1275
+ // disabled: true
1276
+ }
1277
+ const selectPropsMultiple = {
1278
+ mode: 'multiple',
1279
+ maxTagCount: 1,
1280
+ }
1281
+
1282
+ const [ tabKey, setTabKey ] = useState('single')
1283
+ const [value, setValue] = useState(selectProps?.mode ? [] : null);
1284
+
1285
+ const props = {
1286
+ value,
1287
+ onChange: (value: any) => {
1288
+ console.log(value)
1289
+ setValue(value)
1290
+ },
1291
+ selectProps,
1292
+ selectBusinessType: 'ruleTemplate',
1293
+ };
1294
+
1295
+ const onTabChange = (key) => {
1296
+ setTabKey(key)
1297
+ setValue(key === 'single' ? null: [])
1298
+ }
1299
+
1300
+ return (
1301
+ <div>
1302
+ <Tabs onChange={onTabChange} activeKey={tabKey}>
1303
+ <TabPane tab='单选' key='single'>
1304
+ {tabKey === 'single' && (
1305
+ <BusinessSearchSelect {...props} />
1306
+ )}
1307
+ </TabPane>
1308
+ <TabPane tab='多选' key='multiple'>
1309
+ {tabKey === 'multiple' && (
1310
+ <BusinessSearchSelect {...props} selectProps={selectPropsMultiple} />
1311
+ )}
1312
+ </TabPane>
1313
+ </Tabs>
1314
+ </div>
1315
+ );
1316
+ };
1317
+ ```
1318
+
1319
+ More skills for writing demo: https://d.umijs.org/guide/demo-principle